The short answer
Trust is a property of claims, not of agents
Split the output into the claims it makes. For each claim that matters, find the recorded step behind it: the tool that ran, the inputs it was given, the saved result that came back. Recompute that step's verifiable receipt from the record's canonical bytes and compare. A claim that traces to a saved result whose receipt recomputes is checked. A claim with no step underneath it is unverified, and the run gives you no way to rescue it. Trust the checked claims. Discount the rest. That is the whole method, and it works on any output, from any agent, as long as the work left a record.
Why polished output is not evidence
Agent output fails in ways that look exactly like success. The three ordinary ones:
- Invented specifics. A figure, a date, a citation that reads precisely and came from nowhere. The model needed a number in that slot and produced a plausible one. Nothing in the text marks it as different from the figures the tools actually returned.
- The smoothed summary. The run hit a failed call, a partial result, a source that disagreed. The summary irons it flat, because summaries are written to read well. The doubt was in the run. It is not in the retelling.
- Confidence as a style. Tone is a formatting choice, not a measurement. An agent states its weakest claim and its strongest claim in the same voice, so the voice carries no information about which is which.
None of this needs a dishonest agent. It needs a fluent one, a long task, and a reader who has to decide whether to act on the output. The decision cannot be made from the output alone, because the output is the thing being decided about.
The three checks
- Split the output into claims. List the load bearing claims: the numbers, the named sources, the statements of fact the rest of the output stands on. Most outputs rest on three to six. You do not need to check every sentence, just the ones that would change your decision if they were wrong.
- Match each claim to its recorded call. Open the job record. For each claim, find the step whose saved result the claim rests on. A grounded claim resolves to a step with a tool, inputs, and output bytes. A claim that resolves to nothing was assembled by the model at writing time, which is the polite description of a guess.
- Recompute the receipt. Each step carries a verifiable receipt: the exact saved bytes and their SHA-256 digest, in the open AER-1 format (draft-zambo-aer1-26). Recompute the digest, or run the receipt through zambo.dev/verify, and compare. A match means the saved result you are reading is the result the run produced, unchanged since it was saved. The step by step flow, including what an absent step means, lives on how to verify AI work.
Notice what the third check does not do. It never grades the claim. It fixes the evidence so your grading is about the real result, not about a summary of it.
Two outputs, side by side
The claim with a record
"Revenue grew 14 percent in the third quarter." Underneath it, a step: a data tool called with the quarter's range, the returned table saved byte for byte, a receipt that recomputes. You can disagree with how the growth was calculated. You cannot be fooled about what the tool returned, because the return is saved and checkable.
The claim without one
"Revenue grew 14 percent in the third quarter." Underneath it, nothing: no step, no saved table, no source the run actually touched. The sentence may even be right. You have no way to know, and neither did the agent when it wrote it. This is the claim to discount, and the discounting is not cynicism. It is the only response the evidence supports.
Both sentences are identical on the page. Only the record separates them, which is why the record has to exist before you need it.
Run the work so it can be checked
- Route the calls through a record layer. Point your agent at the Zambo MCP endpoint, https://zambo.dev/mcp. It works with the agent you already run: Claude, ChatGPT, Gemini, Cursor, Grok, and other MCP clients. Setup is one step at zambo.dev/add.
- Let the receipts accumulate. Every call through the endpoint leaves a verifiable AER-1 receipt as it runs, including calls that fail or get refused, gathered under the job in order. Zambo is the verifiable work layer for AI: 153 tools behind the one endpoint, 20 free calls per day, then they upgrade, a $0.99 Day Pass for 24 hours, or the Zambo Pass at $29 for 30 days, one payment.
- Check before you act, and hand the record over with the output. Run the three checks on the claims that matter. When the output goes to a client or a teammate, send the record with it, closed as one link with HANDOVER, so they can run the same checks instead of taking your word. The record-keeping side of that habit, where the trail lives and why placement matters, is on the agent audit trail page.
The fixed target underneath the check
A checking method is only as good as the format it checks against, which is why the receipts follow an open, published one. AER-1 (draft-zambo-aer1-26) ships with a public conformance corpus of 126 vectors and 129 checks, kit v1.5.7, published at zambo.dev/aer1/corpus.json and archived on Zenodo under DOI 10.5281/zenodo.23677115. Any verifier can run the same vectors and get comparable results, because the inputs and expected outcomes were fixed in advance. The receipt you recompute at home and the receipt a stranger recomputes are the same check, which is what makes the trust transferable instead of personal.
What the check settles, and what it never settles
It settles which claims rest on saved results that still match what the run produced, and which claims rest on nothing. It settles whether the record was adjusted after the fact. It does not settle whether the agent picked the right tool, read the result fairly, or did good work. Stated exactly: a verifiable receipt proves the saved result was not changed since it was saved, not that the result was right. Trust, in the end, is still a judgment. The method makes sure the judgment is passed on evidence that holds still.
Questions, answered
Can I trust AI agent output?
Yes, claim by claim, once each claim has been checked against the record behind it. Split the output into the claims it makes, match each claim to the recorded tool call that produced it, and recompute the verifiable receipt on that call's saved result. A claim that traces to a saved result whose receipt recomputes is checked. A claim with no recorded call underneath it is unverified, however confident it sounds. Trust the checked claims, discount the rest.
How do I check one specific claim in an AI agent's output?
Find the call behind the claim. Every factual claim in an output came from somewhere: a tool result, a file, a search, or the model's own invention. Ask for the job record, locate the step whose saved result the claim rests on, and open that step's receipt. Recompute the receipt from the record's canonical bytes and compare. If it matches, the saved result is the one the run produced. If no step holds the claim's source, the claim was never grounded in the run at all.
How can I tell if my AI agent made up a result?
Look for the claims with nothing underneath them. A made up result reads like the others: a number, a citation, a finished summary. The difference is in the record. A real result has a step: the tool that ran, the inputs it was given, the output bytes that came back. A fabricated one has no step, or a step whose saved output does not contain the claimed figure. Checking the three or four load bearing claims in an output catches nearly every invention, because inventions cluster on the claims that matter.
What does a verifiable receipt prove about an output?
It proves the saved result was not changed since it was saved. A receipt carries the exact saved bytes of a call and their SHA-256 digest, so anyone can recompute the digest and confirm the record they are reading is the record the run produced. It does not prove the result was right, the tool was well chosen, or the agent's summary of the result was fair. Those judgments stay with the person checking, made against a record that holds still.
Can I trust AI agent output for client work?
Yes, when the output travels with its record. Deliver the work with the receipts behind its load bearing claims attached, and the client can run the same checks you ran: match claim to call, recompute the receipt, read the saved result instead of the summary. Zambo is the verifiable work layer for AI: every call through https://zambo.dev/mcp leaves a verifiable AER-1 receipt, so client work can be checked by the client, not just asserted by the sender.