Why a flat file
A rule that allows one session id on the live console can be wrong later. The store would still be reachable. A minted share holds no connection to the store. One HTML file. CSS and script inside it. Unplug the network and it still renders. What the reader can see is what is in the file.Turn it on
Sharing is off unless the dashboard is given a host and a credential. No configuration means no tab, no button, no write routes. Set both in the environment (prefer env over flags — a token on a command line lands in shell history):Mint
The share icon is top-right on a session page. The dialog states what minting does. A second mint is a second public copy at a new address. Taking one down does not affect the other. After a successful mint: the address, Copy link, Open.What a share carries
Three checkboxes, all on by default:| Off means | |
|---|---|
| Include tool calls | Heading survives (“14 tool calls · Bash ×9”). Payloads do not. |
| Include agent reasoning | Fold still counts reasoning turns. Text is gone. |
| Rewrite machine paths to ~ | /Users/<name>/… becomes ~/… |
omitted, never “no content”. The banner states what was left out.
Path rewriting is not a secret scanner. Secrets in tool output are why you may leave tool calls out of a share you intend to publish widely. Mint, read the page, then leave it published.
Optional Stops working on date. That date is the end of that day in your zone. The host enforces it.
What this is not
Subagent messages travel folded, with the same reader switch the console has. That is readability, not disclosure. To leave content out, use the three checkboxes.Manage
Dashboard → Shares.| Verb | The page | The record | The link |
|---|---|---|---|
| Unpublish | kept | kept | stops (404) |
| Publish | kept | kept | works again |
| Delete | destroyed | deleted | dead forever |
Point an agent at a share
A share is five files, not one. The page is for a person. Long HTML is too large for an agent.| URL | What it is |
|---|---|
<link> | The page. Accept: application/json → the manifest |
<link>/agent.txt | The protocol, in plain language |
<link>/outline.json | The conversation without the working-out. Read this first |
<link>/manifest.json | Session card + one row per turn, with byte ranges |
<link>/turns.jsonl | Every turn in full, one JSON object per line |
turns.jsonl is line-delimited so a byte range returns whole records.
A turn with no text says why (contentState: shredded, omitted, …). Never an empty string standing in for erased text.
Limits you must know
- Shred cannot reach a minted page. Delete shares for that principal first.
- The page is a point in time. Later turns, later cost corrections, later labels are not in it. The mint instant is on the page.
- Unpublish is not recall. It stops the URL. It cannot affect a copy someone already saved.