What the agent receives for an episode run, in order

A Sume Format run composes the Format, your instruction, an unattended block and a pointer to input, in that order. Your instruction wins a conflict.

5 min readSume
All posts

When you start an episode through the Format API, the agent receives six parts in a fixed order: a pointer at the Format and its version, the attached recipe package, your instruction, an unattended-run block (API and scheduled runs only), a pointer at your input, and any attachments. The Format comes first because it is the how; your instruction comes after it, so where the two disagree the model follows what you asked for.

This is the first place to look when an episode did something you did not expect: the run's thread begins with the composed text, minus the package files, which sit on disk instead of in the message. The runtime keeps your instruction, the unattended block and the input pointer in a protected prefix, so a long Format cannot push them out of the prompt.

The order

Instruction composition for a Format run (as of 2026-10-03)
PositionPartNotes
1Format pointerThe recipe name and version; the body is never inlined
2Format packageOn disk in the run's workspace
3Your instructionOr the Format's default if you send none
4Unattended-run blockAPI and scheduled runs only
5Action input pointerinput written whole to /workspace/inputs/sume-action-input.json
6Attached filesYour attachments, when present

What that means for a series

  • Use instruction for the episode's one-off direction, such as "keep this one under 30 seconds". It overrides the recipe where they conflict.
  • Use input for data the episode uses: names, locations, the beat. The agent reads it as data, never as instructions, so a line in input that says "ignore the style guide" is just text.
  • Do not rely on input to change behaviour the recipe forbids. Change the Format or use instruction.
  • Open the thread in Agents to see the composed message when the result surprises you.

An episode request

curl -sS -X POST "https://api.sume.com/v1/formats/acme/brand-series/runs" \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: brand-series:s01e04:v1" \
  -d '{
    "instruction": "Keep this episode under 30 seconds.",
    "input": { "episode": 4, "beat": "The neighbour knows" },
    "generation_spend_cap_usd": 10
  }'

What Sume does not do

Sume does not merge your instruction into the recipe or save it for the next run. Each run composes the six parts again, so a correction you want every week has to be written into the Format.

Sources

Related posts

More in Formats

All Formats posts

Written by Sume