Check a receipt you received. In your browser, with an example or your own file.
proofbundle.dev/verifyVerify in your browserOpen source · Verifiable offline
A restaurant confirms your delivery order and signs the confirmation. The delivery service passes it on to you. Choose a case. This display explains the principle and does not verify anything.
Fictional sampleOrder 1042 · 2 pizzas · €24.50 · key restaurant 7f3a…c2e1
Three ways in
Check a receipt you received. In your browser, with an example or your own file.
proofbundle.dev/verifyVerify in your browserUse it as a plugin in Claude Code or Codex, or add it to Python, pytest and CI.
/proofbundle:verifyTo the pluginsSign a result yourself and check it. A test key is not a verified identity.
pip install proofbundleTry the CLIHow a receipt works
Result and context, signed into one receipt.
Which key signed it.
Who holds that key and whether you can trust them.
Share one file, no access to the source system needed.
That nothing changed after signing.
Whether the content is true and complete.
Locally, offline, no account needed.
Whether the proofs pass the chosen checks.
Whether anything is missing or the agent did good work.
What gets checked depends on format, proofs and policy. Read all non-claims
The plugins
One core, right inside Claude Code and Codex.
Released · 0.4.0
Verify receipts and document reviews when you call it.
View the pluginReleased · 0.4.0
The same flow in Codex. The automatic gate is experimental.
View the pluginCheck a receipt's signature and proofs.
/proofbundle:verifyFirst verify the receipt, then separate verified facts from issuer claims.
/proofbundle:review-receiptSelected data, only on request signed.
/proofbundle:emitVerifying is released, signing and the gate are experimental.
Try the verifier today
Python 3.10 or later, three commands. Installing needs a network, the check itself does not.
python -m pip install proofbundle==6.5.0curl -fsSLo receipt.json https://raw.githubusercontent.com/b7n0de/proofbundle/v6.5.0/examples/example_bundle.jsonproofbundle verify receipt.jsonIn your workflow
Metrics with context, signed.
Tie a decision to evidence. Whether it was right is a separate check.
Reviews and outcomes as the issuer's declaration.
A receipt can support an approval, only a tested integration can stop an agent. RequirementsHave it set up by work36
in-totoSCITTSD-JWTDocumented mappings, not adoption by those projects.
Open to inspection
Source, spec and review records are open. An audit document alone is not an audit.
Format and verification rules
Keys, assumptions and non-claims
Review guide and published artifacts
Source code and published releases
Our signed inclusion and consistency receipt test vectors were merged into the CCF profile draft’s GitHub repository.
Decision and evaluation receipts, mappings, statement identification. Individual drafts, not standards.
The verdict record draft cites two of our drafts and the decision receipt.
Evidence for v6.5.0Audit archive v6.5.0Release evidence for v6.5.0Known limitationsAdditional limitations v6.5.0 (tag note, JSON)Review records
Further readingTechnical NoteEssayResearch programmePlain language guides
v6.5.0 · Beta
Support proofbundle
proofbundle is open source and free to use. Your contribution supports forward-looking work that makes what AI agents do traceable with evidence.
Every contribution counts. Thank you! ![]()
Open and verifiable offline