AT-101 · Module 3
Fan-Out Pattern
3 min read
The fan-out pattern dispatches multiple agents simultaneously to work on parallel subtasks, then collects and synthesizes all results. This is the hub-and-spoke model: the parent sits at the center, child agents radiate outward, and all results flow back to the parent for assembly. Fan-out is the right choice when speed matters and the subtasks are independent of each other.
A practical example. You need a competitive landscape analysis covering five companies. Instead of one agent researching all five sequentially, you dispatch five agents — one per company — each with the same research template but a different target. All five run simultaneously. The parent collects all five profiles and synthesizes them into a comparative analysis. What would take 25 minutes sequentially finishes in 5.
- 1. Define the Work Unit Identify the repeatable unit of work. In the competitive analysis example, it is "research one company." In a codebase audit, it might be "scan one module." The work unit must be self-contained and independent.
- 2. Dispatch N Agents Spawn one agent per work unit, all at the same time. Each agent gets the same instructions but a different target. Keep the prompts identical except for the specific input (company name, module path, etc.).
- 3. Collect Results Wait for all agents to return. Some will finish faster than others. The parent waits for all results before proceeding — partial synthesis is usually worse than waiting an extra minute for the slowest agent.
- 4. Synthesize The parent reviews all results, identifies patterns, resolves conflicts, and produces the combined deliverable. This synthesis is where the fan-out pattern creates more value than sequential execution — the parent can compare and cross-reference all results simultaneously.
Do This
- Use fan-out when you have N independent instances of the same task
- Keep the work unit small and self-contained for reliable parallel execution
- Have the parent compare and cross-reference results during synthesis
- Design for partial results — some agents may fail, and that is acceptable
Avoid This
- Do not fan out tasks that depend on each other — use a pipeline instead
- Do not dispatch more than 5-7 agents unless you have budgeted for failures
- Do not skip the synthesis step — concatenated results are not a deliverable
- Do not assume all agents will return at the same time — some tasks take longer