Steps
- Name the artifact between the two jobs — usually a sheet with defined columns, or a doc with a fixed section shape.
- Write the upstream agent so its output IS the artifact’s format: exact columns, exact section names.
- Write the downstream agent to read only that artifact — its prompt assumes the format exists, nothing else.
- Chain them manually first: run A, inspect the artifact, run B. When the handoff is clean, schedule A before B with a gap.
The collection pattern
This is exactly how our role collections are designed — several collections chain templates through a shared artifact — sales is the canonical one: the enricher fills the sheet, the outbound drafter writes from it, and the follow-up drafter reuses the same account context.
What breaks chains
- Format drift — A writes “company size” one week, “size” the next. Pin the column names in A’s memory AND B’s prompt.
- Skipping the artifact inspection — a chain is only as honest as the middle file. Look at it weekly.
- One mega-agent instead — tempting until the prompt hits context limits and does both jobs badly.
Next: see the chains
Browse the role collections — each workflow section is a multi-bot chain in the wild.