Template · Loop: per client delivery
Deliver the build. Freeze the record.
A copy-paste run card for handing an automation to a client: baseline, checks, delivery note, and the client's own acceptance, bound in one chain your client can check long after the engagement ends.
You delivered the automation, the client paid, everyone moved on. Six weeks later the message lands: it stopped working, and anyway, why did we approve this version? Your only evidence is a chat thread, a call you half remember, and a workflow that has been edited eleven times since delivery. Nothing you say can settle it, because nothing was frozen when it could have been.
This template freezes the delivery at the moment of delivery: the config as handed over, the acceptance checks as they ran, and the client's own acceptance, recorded on the record. The twist has a name: the record outlives the engagement. Your client holds a link they can check next month or next year, without you, your account, or your tools.
The run card
Copy it, swap the brackets, run it on your next delivery.
JOB: Deliver [THE DELIVERABLE] to [YOUR CLIENT] GOAL: [WHAT THE DELIVERABLE DOES, IN ONE SENTENCE] RECIPIENT: [CLIENT NAME] Connect your AI to Zambo at https://zambo.dev/mcp (setup guides for your AI client: https://zambo.dev/add/), then run: 1. Snapshot what you are delivering. Pull the live config of [THE WORKFLOW OR BUILD] and log it as the delivery baseline with journal_log: the version, the config's hash, and where the full config is stored, so the entry's receipt binds those exact bytes. (1 call) 2. Run the acceptance checks you agreed at kickoff: [CHECK 1: IT STARTS], [CHECK 2: IT HANDLES THE MAIN CASE], [CHECK 3: IT FAILS SAFELY]. Log each result with journal_log as you run it. (3 calls) 3. Save the delivery note with memory_remember: what shipped, which version, and what the client owns from today. (1 call) 4. Close the job with workflow_close, so steps 1 to 3 bind into one chain. (1 call) 5. Create the handover with handover. Summary: [ONE LINE: WHAT WAS DELIVERED]. Goal: [THE GOAL ABOVE]. Recipient: [YOUR CLIENT]. Next steps: [WHAT THE CLIENT DOES NEXT, FOR EXAMPLE: OPEN THE LINK, CHECK THE BASELINE, RECORD ACCEPTANCE]. The result gives you two links: send your client the client link, the one they accept or flag from. The public link is the read-only record anyone can check. (1 call: the day's free wrap-up handover) 6. Client side: your client opens the client link, checks the baseline and the check results, and taps Accept or Flag. Their decision lands on the record with its own receipt. Pickup is always free, checking costs them nothing, and the public link stays read-only for anyone else.
The budget, counted
6 calls by you, across 3 tools, plus the wrap-up handover. Steps 1 to 4 are 1 + 3 + 1 + 1 = 6 calls: the baseline and the three check results are 4 journal_log entries, then the delivery note on memory_remember and the close on workflow_close. Step 5 is the day's free wrap-up handover, and your client's side sits on the free side too.
Counted against the free day: the 4 journal_log entries take that tool's first call plus all 3 shared continue calls, and the note and the close take their own first calls. Your first delivery fits the free day, exactly.
Run it for every client, every week, and the Day Pass at $0.99 finishes the day's run unlimited. Deliver on most days and the $29 Pass is the cheaper shape.
What your client receives
The handover link. On it they can check: the delivery baseline (the config exactly as handed over, not as it looks after later edits), the three acceptance check results as saved, your delivery note, and the acceptance step, which they reach from the client link you sent (the public page itself is read-only). If the automation later stops or changes, the baseline is what everyone compares against, so "what changed" becomes a diff instead of an argument. The record stays readable after the engagement ends, which is the whole point. One boundary, stated plainly: the delivery note is a saved note, kept 7 days on the free tier and through a pass plus 30 days. The handover record, its receipts, and the baseline and check entries do not expire.
The twist: most delivery records live in the deliverer's tools and die with the engagement. This one is addressed to the client, checkable by the client, and still standing when the contract is not.
Related
Frequently asked questions
What does my client actually receive at delivery?
A handover link carrying the delivery baseline, the acceptance check results, your delivery note, and the acceptance step, all bound in one chain of verifiable AER-1 receipts. They can open it any time and recompute any receipt free at zambo.dev/verify.
Does the record survive the end of the engagement?
Yes. The handover is a public record addressed to the client, not a page inside your project tools. It stays readable and checkable after the contract ends, which is what makes it useful when a question arrives six weeks later.
What does one delivery cost to run?
Counted on the card: 6 calls across 3 tools plus the free daily wrap-up handover. The free tier covers a first delivery exactly: the four journal_log entries use that tool's first call and the 3 shared continue calls, and the note and the close take first calls of their own. A delivery day with several clients is what the $0.99 Day Pass covers, unlimited for 24 hours.
Who built Zambo
Brennan Zambo created Zambo, the verifiable work layer for AI, and AER-1, the agent execution receipt standard (IETF Internet-Draft draft-zambo-aer1-26). Every template in this pack runs on that receipt format. A verifiable receipt proves the saved result was not changed since it was saved, and anyone can check one free at zambo.dev/verify. It does not prove the result was right. That boundary is the point: the record settles what happened, so people can argue about the work instead of about memory.