How Agent Receipts Works

Persistent memory backed by cryptographic proof. Here's what's happening under the hood.

Memory That Persists

Your agent gets structured, persistent memory across sessions. Not a black box — an entity-observation graph you can inspect, search, export, and verify.

Session 1: Agent learns things
memory_observe → "User prefers TypeScript" → signed receipt
memory_observe → "Building a SaaS called ModQuote" → signed receipt
memory_observe → "Uses Neovim" → signed receipt
Session 2: Agent already knows
memory_context → 3 observations loaded → no re-explaining

Every observation is linked to a signed receipt. You can trace any memory back to the exact conversation that created it.

Why Receipts, Not Just Logs

Log Entry
"Generated quote: $2,400"
text, mutable, no proof
written by the agent about itself
Receipt
receipt_idrcpt_8f3k2j4n
actiongenerate_ppf_quote
input_hashsha256:abc123...
output_hashsha256:def456...
signatureed25519:7f3a...
signed, immutable, verifiable by anyone

Input and output are SHA-256 hashed — raw data never leaves your machine. The receipt proves what was processed without exposing the data itself.

Entity-Observation Model

AI agents remember things. Agent Receipts makes those memories provable.

Every memory is an entity (person, project, tool, preference) with observations — each linked to a signed receipt.

Entity: "Customer" (person)
├──"Prefers full-front PPF coverage"high← signed receipt
├──"Owns a Tesla Model 3"certain← signed receipt
└──works_on → "PPF Quote #1247"relationship

No other memory system can answer: "Prove when this agent learned that fact."

Memories can be recalled, forgotten (auditably — the forget itself is receipted), exported as portable bundles, and verified by third parties.

Real-World Example: ModQuote

ModQuote is a multi-tenant SaaS where AI agents generate quotes for automotive protection shops — PPF, ceramic coatings, window tint.

1
Customer requests a PPF quote for a Tesla Model 3
Agent receives vehicle data, shop pricing rules, coverage options
2
Agent generates the quote → track_action creates a signed receipt
Input hash proves what data was received. Output hash proves the $2,400 price.
3
Agent remembers "prefers full-front coverage" → memory_observe
Memory is receipted — provenance chain links back to this conversation.
4
Next session → memory_context loads the preference
Agent starts already informed. No re-explaining.
5
Customer disputes the price → pull the receipt chain
Input vehicle data, pricing rules applied, output price, timestamp, Ed25519 signature. Cryptographic proof.

Receipt Chains

Multi-step workflows are linked together as chains. Each step references the previous via parent_receipt_id.

Chain: PPF quote pipeline (chain_q1247)
Step 1lookup_vehiclecompleted0.3s
Step 2calculate_pricingcompleted1.2s
Step 3generate_quotecompleted2.1s
Total: 3.6s · 3 signed receipts · full audit trail

Quality & Compliance

Constraints — enforce rules on every receipt:

TypePasses if
max_latency_mslatency_ms ≤ value
max_cost_usdcost_usd ≤ value
min_confidenceconfidence ≥ value
output_schemaoutput validates against JSON Schema

AI Judge — evaluate agent output against rubrics. The evaluation itself is a signed receipt chained to the original action.

Memory Bundles — export portable, verifiable memory packages with entities, observations, receipts, and checksum integrity.

How It Compares

Agent ReceiptsMem0LangfuseZep
CoreCryptographic proofMemory persistenceObservabilityMemory + RAG
SigningEd25519 every actionNoneNoneNone
MemorySigned + provableYes (hosted)NoYes (hosted)
VerificationOffline, by anyoneNoNoNo
InfrastructureLocal-firstCloud APICloud/self-hostCloud API
Audit trailTamper-proof chainMutableMutable logsMutable

Agent Receipts is not an observability tool. Observability tells you what happened inside your system. Receipts prove what happened to anyone outside it.

Try it yourself

Experience Agent Receipts in 60 seconds — no installation required.