Claude Code routine artifacts: link Sume media, don't paste it
Claude Code 2.1.292 lets Scheduled and Run now routines publish a private artifact without approval. Hand off Sume results as durable media.sume.com links.

When a Claude Code routine ends with an artifact, make the artifact a page of links and captions, not a copy of the media. Claude Code 2.1.292 (Oct 6) lets Scheduled and Run now routine runs publish an artifact that only you can see without asking for approval, so the page is the thing you open the next morning.
Sume results are a good fit because a finished Sume run returns durable media.sume.com HTTPS URLs for images, videos and audio. Link those from the artifact and keep the routine's own output small.
What changed in 2.1.292
The Claude Code changelog (read 2026-10-07) says that Scheduled and Run now routine runs now publish a new artifact that only you can see, without waiting for approval. It adds that artifacts which request connectors still ask. That second sentence is the part to design around.
A routine that calls Sume through a connector is therefore not a silent path to spending money. The artifact publish is private and approval-free; the connector request is a separate gate.
What a Sume result gives the artifact
An Agent Completion or a schedule run returns a receipt. After it completes, output.text holds the agent's last text, and generated media sits in output.images, output.videos, output.audio and output.files. The run also fills artifacts and records spend in usage. The media URLs are durable media.sume.com HTTPS URLs, per the Agent Completions docs.
That is enough for a static page: one heading per run, one link per file, the agent's text underneath.
| Field | What it holds | Put in the artifact |
|---|---|---|
output.text | The agent's last text | A caption or summary |
output.videos | Generated video URLs | One link per clip |
output.images | Generated image URLs | Thumbnails or links |
usage | Spend recorded for the run | One line of cost |
Read-only results versus creating runs
Reading a run is a different permission from starting one. The Agent Completions scopes are agent_completions:read for reading and listing runs and agent_completions:write for creating and cancelling them. A routine that only builds the page can hold a read key; the one that starts runs holds the write key.
Keys created before Agent Completions shipped do not carry these scopes and fail with 403 insufficient_scope. Create a new key rather than trying to edit the old one.
Keep the money gate outside the artifact
Publishing an artifact does not spend anything. The spend happens when the routine starts a run. For an Agent Completion, generation_spend_cap_usd is required and has no default, so the request fails with 400 invalid_request if you omit it. Set it to the most you accept for that one run.
For a Sume schedule, the default generation cap is $1.00 and a per-run cap is clamped to the lower of the request and the schedule cap, per the Scheduled docs.
An artifact that embeds a video file is large, slow to publish and hard to refresh. A link to a media.sume.com URL costs a few bytes and points at the stored copy. If you later regenerate a clip, the routine writes a new link instead of rewriting a blob.
It also keeps the routine cheap to rerun. The receipt already holds every URL, so a second pass over the same run id needs no new generation and no new spend. If a reader wants to know what the run cost, the usage block on the receipt is the one line to quote.
A small routine prompt that works
Tell the routine to read the receipt, not to re-fetch media. The prompt below keeps the artifact short and fails closed if the receipt is not complete.
Poll the Sume run until next_action is no longer poll_status.
If status is not completed, publish an artifact that says so and stop.
Otherwise publish a page with output.text and one link per URL in
output.videos and output.images. Do not download or embed media.
Do not start another run.When the artifact asks for a connector
Read the approval prompt. If it lists a Sume connector, ask whether the session needs Write. A read-only OAuth token can list jobs and read results, which is all an artifact page needs, so the safe answer is usually to keep Write off for the reader and use a separate key for the routine that creates runs.
Sources
Related posts
More in Agents
- Claude Code scheduled task never fired? Compare with a Sume cron run
Claude Code 2.1.292 fixed scheduled tasks that never fired after /resume, /branch or /clear. A Sume schedule runs on Sume's clock, so check it separately.
- Codex keeps your computer on reconnect: find Sume jobs first
Codex CLI 0.161.0 keeps a new task on the selected computer while it reconnects or is offline. After a gap, list Sume jobs before you resubmit any paid call.
- Build a run status chip from the Format events phase timeline
Sume has no SSE stream for Format runs. Poll status_url and events_url to show queued, preparing, running and finalizing in your UI without faking progress.
- MCP wants a human in the loop: Sume gates for unattended agents
MCP says a human SHOULD be able to deny tool calls. For unattended agents, Sume adds scopes, idempotency keys and a required Agent Completions cap.
Written by Sume