← 返回
安全合规 中文

NotaryOS

Seal AI agent actions with Ed25519 cryptographic receipts. Verify what your agent did and prove what it chose not to do.
使用Ed25519加密收据签封AI智能体行为。验证智能体执行的操作并证明其选择不执行的操作。
hellothere012
安全合规 clawhub v2.4.0 2 版本 100000 Key: 无需
★ 1
Stars
📥 635
下载
💾 1
安装
2
版本
#agent-safety#audit#compliance#cryptographic#ed25519#latest#receipts#security

概述

NotaryOS — Cryptographic Receipts for Agent Actions

Seal your agent's actions with Ed25519 signatures. Issue tamper-evident receipts, verify them publicly, and maintain an auditable chain of every decision.

License

BSL-1.1 (Business Source License). See https://github.com/hellothere012/notaryos/blob/main/LICENSE

Trust Statement

By using this skill, action metadata (action type, timestamps, and a SHA-256 hash of the payload) is sent to api.agenttownsquare.com via HTTPS. Raw payload retention depends on your tier — see the Data Flow section below. Verification is free and requires no account. Full privacy policy: https://notaryos.org/privacy

Data Flow

The SDK sends your payload to the NotaryOS API via HTTPS POST. The server hashes the payload with SHA-256, signs the hash with Ed25519, and returns a receipt.

TierPayload TransmittedRaw Payload RetainedHash StoredSignature Stored
----------------------------------------------------------------------------
Demo (no key)YesNoYesYes
FreeYesMetadata onlyYesYes
ProYesConfigurableYesYes
EnterpriseYesZero retentionYesYes

The included sanitize.py module strips fields matching known sensitive patterns before transmission. Use it before every seal() call when handling user data.

External Endpoints

URLMethodData SentPurpose
---------------------------------
api.agenttownsquare.com/v1/notary/issuePOSTaction_type, payload JSONIssue signed receipt
api.agenttownsquare.com/v1/notary/verifyPOSTreceipt JSONVerify signature
api.agenttownsquare.com/v1/notary/statusGETNoneHealth check
api.agenttownsquare.com/v1/notary/r/{hash}GETNoneReceipt lookup
api.agenttownsquare.com/v1/notary/public-keyGETNoneEd25519 public key

No other endpoints are contacted. No telemetry, analytics, or tracking.

Setup

pip install notaryos

> No API key required. The SDK auto-injects a free demo key (10 req/min) when NOTARY_API_KEY is not set. For production rates, get a key at https://notaryos.org/sign-up and set NOTARY_API_KEY in your environment or OpenClaw config.

from notaryos import NotaryClient

notary = NotaryClient()  # works immediately — uses demo key if NOTARY_API_KEY is not set

Seal an Action

from notaryos import NotaryClient
from sanitize import sanitize_payload

notary = NotaryClient()

receipt = notary.seal(
    "file.created",
    sanitize_payload({
        "path": "/src/main.py",
        "lines_added": 42,
        "branch": "feature/auth"
    })
)

print(receipt.receipt_hash)
print(receipt.signature)

What to Seal

Default (always safe)

Action TypeWhen to Seal
------
file.createdCreated or modified a file
file.deletedDeleted a file
command.executedRan a shell command
config.changedModified system configuration

Extended (sanitize payload first)

Action TypeWhen to Seal
------
email.sentSent an email (strip body, keep subject)
api.calledMade an external API call (strip auth headers)
data.accessedAccessed sensitive data (log access, not content)
message.sentSent a message (strip body if private)

Always run sanitize_payload() on extended actions before sealing.

Payload Guidelines

Include: File paths, counts, timestamps, branch names, public identifiers, action summaries.

Exclude: Authentication credentials, financial numbers, government IDs, message bodies, file contents, health information. The sanitize_payload() helper handles this automatically.

Verify a Receipt

from notaryos import verify_receipt

is_valid = verify_receipt(receipt.to_dict())  # True or False, no auth needed

Lookup by Hash

notary = NotaryClient()
result = notary.lookup("e1d66b0bdf3f8a7e...")

if result["found"] and result["verification"]["valid"]:
    print("Receipt is authentic and untampered")

Counterfactual Receipts

Record when your agent chose NOT to act:

receipt = notary.seal("trade.declined", {
    "reason": "risk_threshold_exceeded",
    "action_considered": "trade.execute",
    "decision": "blocked"
})

Receipt Chaining

r1 = notary.seal("file.read", {"file": "report.pdf"})
r2 = notary.seal("summary.generated", {
    "source": "report.pdf",
    "length": 500
}, previous_receipt_hash=r1.receipt_hash)

Error Handling

from notaryos import AuthenticationError, RateLimitError, ValidationError

try:
    receipt = notary.seal("action", {"key": "value"})
except RateLimitError:
    pass  # demo: 10 req/min, upgrade at notaryos.org
except AuthenticationError:
    pass  # invalid key
except ValidationError:
    pass  # bad request

Dependencies

  • sanitize.py (included): Zero external dependencies — uses only Python standard library (typing). Pure function, no I/O, no network, no side effects.
  • notaryos SDK (installed via pip): Also uses only the Python standard library — zero third-party dependencies. Source: https://pypi.org/project/notaryos/ | GitHub: https://github.com/hellothere012/notaryos

Key Points

  • NOTARY_API_KEY is optional — a demo key is auto-injected when not set (10 req/min)
  • Set NOTARY_API_KEY for production rates (get a key at https://notaryos.org/sign-up)
  • Both sanitize.py and the notaryos SDK use only the Python standard library (zero third-party deps)
  • Payloads transmitted via HTTPS to api.agenttownsquare.com
  • Use sanitize_payload() to strip sensitive fields before sealing
  • Verification is free and public — no API key needed
  • Ed25519 signatures (same scheme as SSH and TLS)

Links

  • Docs: https://notaryos.org/docs
  • Privacy: https://notaryos.org/privacy
  • Explorer: https://notaryos.org/explore
  • API Docs: https://notaryos.org/api-docs
  • PyPI: https://pypi.org/project/notaryos/
  • npm: https://www.npmjs.com/package/notaryos
  • GitHub: https://github.com/hellothere012/notaryos
  • License: https://github.com/hellothere012/notaryos/blob/main/LICENSE

版本历史

共 2 个版本

  • v2.4.0 当前
    2026-05-01 19:51 安全 安全
  • v2.2.0
    2026-03-20 01:50

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

security-compliance

OpenClaw Backup

alex3alex
备份与恢复 OpenClaw 数据。适用于创建备份、设置自动备份计划、从备份恢复或管理备份轮转。处理 ~/.openclaw 目录归档并包含适当的排除规则。
★ 89 📥 30,594
security-compliance

1password

steipete
设置和使用 1Password CLI (op)。适用于:安装 CLI、启用桌面应用集成、登录(单/多账户)、通过 op 读取/注入/运行密钥。
★ 53 📥 31,142
security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,212 📥 266,272