Claude Duet receipts: proof for the work your personal agent does while you are away

Anthropic's new personal agent, Claude Duet, is built around a real shift: you hand it an errand in a message, it works in the background across your connected apps, and it checks back with drafts and approvals. The gap sits in the check-back. A review screen is the agent describing its own work, and approving a summary is not the same as being able to verify the record. This page covers what Duet gives you today, stated precisely, and how to add the missing layer: verifiable receipts for the work it runs, checkable by you or by anyone you hand them to.

Check a receipt yourself: zambo.dev/verify recomputes a receipt's hash in the open, no account needed.

What Duet gives you today, and what it does not

Duet's trust model, per Anthropic's announcement, is review and approval: it prepares the work, shows you checkpoints, and waits for your go-ahead at the moments that matter. For errands that is a sensible design, and it answers the control question: can I stop it doing something I would not want?

It does not answer the evidence question: can I check, afterward and independently, what it actually did? The summary on the approval screen is produced by the same system whose work it summarizes. Nothing in the launch materials describes a portable record of a finished job, a receipt a third party could recompute, or proof that survives outside the app. That is not a Duet flaw in particular. Across the personal-agent field that arrived this month, the pattern is the same: strong on delegation, silent on proof. The record layer is simply a separate layer, and it has to be added on purpose.

Adding the record layer

Zambo plugs into Duet the same way it plugs into Claude: as a custom connector by URL. Add the MCP endpoint https://zambo.dev/mcp in Claude's connector settings. Anthropic describes Duet carrying over the apps connected to your Claude account, so the connector you add in Claude is available to the work Duet runs. Every call Duet makes through Zambo then returns an AER-1 receipt: the call, its time, and the hash of its saved result, at a public URL you can open later.

One precision, because this page should model the honesty it recommends: adding a custom connector by URL is documented for Claude today. A custom add inside the Duet app itself is not yet documented, and Duet is a research preview with a waitlist. The Claude-side connection is the route that exists now; when Anthropic documents the in-app route, it is the same endpoint and the same receipts.

Why the receipt matters more for a background agent

A chat agent works in front of you; you watch the steps as they happen. A personal agent works while you are somewhere else, which is the entire point of it, and that is exactly when a self-written summary is weakest. The receipt changes the evening review from reading a story to checking a record: the calls that ran are listed, their results are fixed by hashes made when the work ran, and anything the summary claims that no receipt backs is visible as a gap instead of passing as prose. And when a job outgrows one app, the same receipts ride inside a handover, so the next AI continues from the record rather than from a retelling.

Keep the claim straight, as every page here does: a receipt proves the saved result has not changed since it was saved. It does not prove Duet made the right call. Judgment stays yours. The receipt just makes sure you are judging what actually happened.

Questions, answered

Does Claude Duet give you proof of what it did?

Duet gives you review: drafts, proposals, and checkpoints where you approve the next step. That is the app showing you its own account of the work, written by the same system that did the work. It is not an independently checkable record. No personal agent shipping today, Duet included, issues a portable receipt for a finished job that a third party can recompute and verify. That layer has to be added, which is what the Zambo connector is for.

How do I add receipts to Claude Duet?

Add Zambo as a custom connector in Claude, by URL: the MCP endpoint is https://zambo.dev/mcp. Anthropic's own materials describe Duet carrying over the apps and connections from your Claude account, so work you route through the connector inside Duet leaves an AER-1 receipt per call, checkable at zambo.dev/verify. Be precise about the current state: adding a custom connector by URL is documented for Claude today; a custom add inside the Duet app itself is not yet documented, so the Claude-side connection is the route that exists now.

What does a receipt add on top of Duet's approval screens?

An approval screen asks you to trust a summary before the fact. A receipt lets you check the record after the fact: which calls ran, when, and what they returned, with a hash fixed at execution time that anyone can recompute. The receipt proves the saved result has not changed since it was saved; it does not prove the work was good. Use approvals to steer the agent and receipts to verify it, and the two stop being substitutes for each other.

Can Duet hand a half-finished job to another AI?

Not with a record that survives the switch, on anything published today. When a job has to move, what you want handed over is not a chat summary but the state of the work: what is done, what is verified, and what is left, with receipts attached to the finished parts. That is Zambo's handover: the receiving AI, Duet, regular Claude, or another client entirely, picks the job up from the record instead of from a retelling, and every part it completes leaves its own receipt.