Dispatch
Break work into independent subtasks and run them concurrently.
Steps
- Identify independent units of work (no shared state, no ordering dependency)
- For each subtask: define scope, assign agent tier, set expected output
- Spawn all independent subtasks simultaneously
- Collect results as they complete
- Verify each result meets its expected output
- Integrate results into the main workflow
Subtask Template
Subtask: <name>
Agent: <tier>
Scope: <files or module>
Expected: <what done looks like>
Depends: none (must be independent)
Rules
- Maximum 3 concurrent subtasks — more degrades review quality
- Each subtask must be independently verifiable
- Never dispatch subtasks with shared file writes — they will conflict
- Collect ALL results before proceeding — no partial integration
- If a subtask fails, retry it once then report the failure
- Independent reads and searches are always safe to parallelize
When NOT to Dispatch
- Tasks share mutable state (same files being written)
- Tasks have sequential dependencies (B needs A's output)
- Total scope is small enough for one agent (<50 lines)