Zanii verifiable receipt seal

Prove what your AI agents did.

Every action becomes a signed, anchored receipt anyone can verify.

Signdid:key · ed25519
AppendMerkle log
Anchoron Base
Verifyby anyone
Connecting to the log…
Proofs recorded
Verified agents
On-chain anchors
The problem

Your agents act. Nobody can prove what they did.

AI agents now touch real systems, calling tools, moving money, accessing customer data. But the only record is a log you could quietly edit. When an auditor, a customer, or a court asks “what did your agent actually do, and who authorized it?”, “trust our database” is not an answer. Zanii makes the answer cryptographic.

How it works

Proof, not promises.

A cobalt Merkle-tree lattice converging to one gold node
  1. 01 · Identity & delegation
    Scoped authority, provable

    Every agent gets a cryptographic identity, delegated by its owner with scoped, expiring authority. An agent can never do more than the human behind it.

  2. 02 · Signed receipts
    Tamper-evident by math

    Each action becomes an Ed25519-signed, hash-chained receipt in an append-only Merkle log. Deleting, altering, or reordering any receipt is mathematically detectable.

  3. 03 · Public anchoring
    Immutable, even to us

    The log's fingerprint is periodically written to Base, so not even Zanii can rewrite history. Verify any proof with the open SDK.

Live on the log

Watch it happen.

Open the explorer →
ledger.zanii.agency · live receiptsconnecting
TimeTypeActionAgentStatus
Today
03:31:01WhatsAppTo operator · whatsapp.to_operatorz6MkiB…FWLbrecorded
03:06:23CliSession · cli.sessionz6Mksq…9H98recorded
02:57:33CliTool grep · cli.tool.Grepz6Mksq…9H98recorded
02:57:33CliTool grep · cli.tool.Grepz6Mksq…9H98recorded
02:57:33CliTool read · cli.tool.Readz6Mksq…9H98recorded
02:57:33CliTool grep · cli.tool.Grepz6Mksq…9H98recorded
02:50:48CliTool grep · cli.tool.Grepz6Mksq…9H98recorded
02:50:48CliTool grep · cli.tool.Grepz6Mksq…9H98recorded
One line per tool

Wrap a tool. Get a proof.

Point the SDK at any function your agent already calls. It signs, hash-chains, and submits the receipt for you. The tool behaves exactly as before.

@zanii/sdkzanii · python@zanii/mcp-proxydid:key
Start building →Open the explorer
// every call becomes a provable receipt
import { ZaniiAgent } from '@zanii/sdk'

const zanii = new ZaniiAgent({
  serverUrl, agentDid, agentPrivateKey, delegation, apiKey
})

const sendEmail = zanii.wrapTool('email.send', realSendEmail)
// sendEmail works exactly as before —
// and is now cryptographically recorded.
Built in

Everything you need to make agents accountable.

Proof-of-action

Proof-of-action

Signed receipts attributable to one agent identity. Forgery needs the private key.

Scoped delegation

Scoped delegation

Owner-signed, expiring authority with one-click revocation. Least privilege, provable.

Merkle proofs

Merkle proofs

Inclusion & consistency proofs (RFC 6962) — the log is provably append-only.

On-chain anchoring

On-chain anchoring

Tree heads anchored to Base, so history is immutable even to the operator.

Audit bundles

Audit bundles

Self-contained, offline-verifiable exports mapped to EU AI Act & SOC 2 needs.

Cross-org receipts

Cross-org receipts

Two agents co-sign one neutral proof. ERC-8004 compatible identities.

The whole point

Trust no one — including us.

The protocol is open. Every proof checks out against your own code, not our word. That is the whole point.

  • Open protocol. Verify any proof offline with the SDK or your own code.
  • Anchored on Base. The log's fingerprint is written to a public blockchain.
  • No admin backdoor. History is immutable, even to Zanii.
Open the live log and verify a proof →
A cobalt-and-gold cryptographic seal anchored into a marble block
Open protocol · verify offlineOn-chain anchored · BaseERC-8004 compatibleRFC 6962 Merkle proofsWorks with Claude · GPT · Gemini · any MCP client
Try it

Verify a receipt yourself.

Paste any receipt hash. We fetch it with its Merkle inclusion proof and the signed tree head straight from the public API, the same bundle you could verify offline.

Open protocol · Apache-2.0

Make your agents provable.

Read the docsView on GitHub