Your Passport

Check the signature. Know its limits.

Paste anything Your Passport signed, or look an agent up by ID. You get a verdict and the reasons for it.

Two people reviewing a completed agent action against its signed evidence.

Public verification key

This issuer uses Ed25519. Pin a trusted public key to verify signatures offline; check live status before relying on authority.

Fingerprint
sha256:9UsNlhNXyXV-os_8GwpiMIsaVRxLwbkL
Algorithm
Ed25519
Protocol
v2

PEM · SubjectPublicKeyInfo

-----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEAfm+mrtlWKnTuVIqneItkbG/A2I5OuQaAskXjU8HIAmQ=
-----END PUBLIC KEY-----

Check the fingerprint before pinning. Machines read the same key from /.well-known/passport.json.

What the key signs

  • Agent passports

    One agent: key, owner, active grants, blast radius. Available at /p/{agentId} only when the owner publishes it.

    passport.agent
  • Decision receipts

    Signed final allow or deny decisions. Pending requests and rejected inputs may have no receipt. Integrity is not execution permission.

    passport.decision
  • Capability credentials

    Portable grants: what an agent may do, under which caps, until when.

    passport.capability
  • Audit chain heads

    A signature over the last hash. Change one event and it no longer verifies.

    passport.audit-head

Actions this deployment understands

  • deploy:stagingDeploy to staging
    Low risk · Your Passport executes
  • deploy:productionPromote to production
    High risk · Your Passport executes
  • purchasePurchase
    Medium risk · Your runtime executes
  • toolUse a tool
    Medium risk · Your runtime executes
  • httpCall an API
    Medium risk · Your Passport executes

Anything not listed is rejected before policy runs.

Verify something now

  1. A decision receipt

    Pass the PEM and the receipt to the SDK. It checks signature, expiry and, if you ask, the action and decision.

    import { verifyReceipt } from "@passport-ai/sdk";
    
    const { valid, reason } = verifyReceipt(receipt, PASSPORT_PUBLIC_KEY_PEM, {
      action: "deploy:production",
      decision: "allowed",
    });
  2. An audit export

    Export the log, run the checker with your pinned key. Offline.

    node scripts/verify-audit.mjs export.json --key passport-public.pem
  3. A capability credential

    Post it to /api/v1/credentials/verify to also check revocation, or verify the signature offline with the same key. Formats: docs/protocol.md.