| name | chain |
|---|---|
| description | Use when the workflow needs multi-step processing with sequential, parallel, or conditional tool compositions and proper data flow. |
| argument-hint | [pipeline description] |
| category | enhancement |
| version | 2.0.0 |
| user-invocable | true |
Invoke /agent-workflow — it contains workflow principles, anti-patterns, and the Context Gathering Protocol. Follow the protocol before proceeding — if no workflow context exists yet, you MUST run /teach-maestro first. Consult the tool-orchestration reference in the agent-workflow skill for composition patterns and error handling.
Design tool chains that do complex work reliably. A chain is only as strong as its weakest link.
Sequential: A → B → C (each step depends on the previous) Parallel: [A, B, C] → Merge (independent steps run simultaneously) Conditional: A → (if X then B, else C) → D (branching based on results) Iterative: A → Check → (if not done) → A again (loop until convergence)
For each chain, define:
## Chain: [Name]
### Steps
1. [Tool A] — [what it does] — Input: [schema] — Output: [schema]
2. [Tool B] — [what it does] — Input: [output of step 1] — Output: [schema]
3. [Tool C] — [what it does] — Input: [output of step 2] — Output: [schema]
### Data Flow
Step 1 output.field_a → Step 2 input.source_data
Step 2 output.results → Step 3 input.items
### Error Handling
Step 1 failure → [retry 3x, then return error]
Step 2 failure → [return partial results from step 1]
Step 3 failure → [retry with simplified input]
### Constraints
Max total execution time: 60s
Max retries per step: 3- Data schemas are compatible between connected steps
- Every step has error handling
- Total chain timeout is set
- Maximum iteration count is set for loops
- Partial results are handled (what if step 2 of 4 fails?)
After building the chain, run /fortify to add error handling at each step, then /evaluate to test the full pipeline.
NEVER:
- Build chains without defining data contracts between steps
- Create loops without maximum iteration counts
- Skip error handling at any step (the chain breaks at the weakest link)
- Assume output of step N is always valid input for step N+1
- Build long chains when a single prompt could handle the task