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. 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. 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. 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. 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