For LangGraph agents · docketproof.dev
DocketProof pauses risky tool calls for approval before they run — then files a signed, chained entry for every decision. Anyone can verify the docket later, offline, without trusting us.
Every entry is evidence — approved or denied.
Exhibit A
This is a real, in-browser SHA-256 hash chain — not an animation. Each entry references the hash of the one before it, the same principle the real docket uses with ed25519 signatures. Alter entry № 0002 below and re-verify: notice that entry itself fails, and every entry filed after it becomes unverifiable too — even though nothing about them changed. That's what a chain buys you over a pile of individually signed documents.
Click the pencil on any entry's resource_id to edit it, then
Re-verify the docket. Nothing leaves this tab — every hash is
computed locally with the browser's own SHA-256. The full docket uses ed25519
signatures over an RFC 8785-canonicalized payload; see the
format spec for the exact bytes.
Procedure
No hosted service is required for the core mechanism. Nothing about your agent's data leaves your process unless you turn on the hosted dashboard.
Wrap any LangGraph tool with one decorator. Nothing else about your graph changes.
Uses LangGraph's own documented interrupt mechanism — no forking, no internals.
Allow, deny, or hold for review. Both outcomes get signed — a denial is evidence too.
ed25519 signature, hash-chained. Verify with the open CLI — no account, no API key.
Filing
# pip install docketproof from docketproof import guarded_tool, Policy policy = Policy.from_file("policy.yaml") @guarded_tool(policy=policy, docket_path="./docket.jsonl") def delete_resource(resource_id: str) -> str: # your existing tool, unchanged ...
Scope of the record
Terms
The SDK, the policy engine, and the verifier are open source and MIT-licensed — that stays true regardless of plan, and self-hosted really is unlimited: nothing touches our servers, so there's no artificial cap on the free tier like you'll find on hosted-only tools. Paid tiers meter entries synced to the hosted dashboard — not seats, not local usage. The hosted dashboard runs on EU-based infrastructure — docket data for hosted plans does not leave the EU, which matters if you're building evidence for EU data-residency or AI Act requirements.
Self-hosted, genuinely unlimited — it never reaches our infrastructure.
5,000 hosted entries/mo included, then $2 per 1,000.
50,000 hosted entries/mo included, then $2 per 1,000.
Enterprise (on-prem/VPC, dedicated support): custom pricing. Pricing anchored to comparable open-core dev tools (Langfuse, LangSmith) as of August 2026 — not final, subject to what the market actually tells us.