# Recipe: client update page, written for them, not for the team

A copy-paste prompt: your agent turns what shipped for a client into a plain-language update page you can read, then share with a link.

> [!info]
> **For:** a studio or agency developer, or anyone who reports to a client or stakeholder. **When:** weekly, at a milestone, or at the end of an engagement. **Takes:** a few minutes of agent time. **You get:** a draft update in the client's cell, in their language, ready to share as a read-only link once you have read it.

## The prompt

```text
Write a client update for <client> covering <period>, from what is in
onecell and the repo. Save it to <client's cell> as a draft.

1. Gather: the latest repo snapshot and any handoffs for this client's
   work (search), decisions made in the period (list_decisions for the
   cell), and git log if the repo is here.

2. Write for the client, not the team: what they can now do or see, in
   plain words. Leave out internal work unless it changes something for
   them. Never claim anything that isn't live for them.

3. Sections: new this period, fixed, coming next (no dates unless we have
   agreed them), and anything we need from them, as a callout.

4. Reply with the link. Don't share it or create a link until I have
   read it; then share_document gives me a read-only link to send.
```

## What your agent does

1. Gathers what happened
   Snapshots, handoffs and decisions from the client's cell, and the git history when the repo is at hand.
2. Translates for the client
   What they can now do or see, without internal detail, and nothing that isn't live for them.
3. Writes a draft in their cell
   New, fixed, coming next, and what you need from them.
4. Waits for you before sharing
   Nothing leaves onecell until you have read it. Then one command makes a read-only link.

## What you get

An update for Northwind Studio, a made-up client of a made-up invoicing app. Internal work, like the reminders rebuild, appears only as what the client will notice.

<!-- onecell:block {"type":"embed","documentId":"12f73be3-22a4-44e4-8eb2-d479083ca51e"} -->
[Sample client update: Northwind's invoicing portal, week 3](https://onecell.io/p/sample-client-update-northwind)

## Variations

<details>
<summary>A handover pack at the end of a project</summary>

Ask for a handover instead: what was built, how to run it, where everything lives, every decision made (from list_decisions), open items, and who to ask. Point to where credentials are kept, never the credentials themselves. It pairs with the project primer and the latest snapshot.

</details>

<details>
<summary>A stakeholder update inside your company</summary>

Replace the client with a team or leader, and add: “Lead with what they need to decide or unblock.”

</details>

<details>
<summary>One cluster per client</summary>

Keep each client in its own cluster, with a cell you share with them. Their updates, decisions and handover then live where they can read them, and nothing from other clients is in view.

</details>

## Tips

- Read it as the client would before sharing. “We refactored the auth layer” means nothing to them; “sign-in is faster” might.
- Only claim what is live for them. “In early access” is fine when it is true.
- Ending with one ask gets more replies than ending with none.

---

Part of [onecell recipes](https://onecell.io/help/recipes): copy-paste prompts for using onecell in your work.
