Most tasks are better served by a single well-scoped agentic loop with the right tools than by multiple agents. Every additional agent is itself a full agentic loop - its own system prompt, its own conversation history, its own token spend re-deriving context the coordinator already has. Multi-agent orchestration earns that added cost and coordination overhead when a task has a concrete, nameable need for isolation (one subagent's context shouldn't pollute another's, or a risky exploratory step shouldn't consume the main agent's context budget) or parallelism (genuinely independent subtasks that don't depend on each other's output).
Coordinator-subagent vs. hub-and-spoke
Two shapes cover most real cases. A coordinator-subagent pattern has one agent plan and delegate to specialised subagents with different tools, different context, and different jobs - one might search the web, another might analyse a document, another might synthesise a report - then integrate their results. It fits heterogeneous subtasks. A hub-and-spoke pattern runs several similar subagents in parallel against different slices of the same uniform problem (e.g. each reviewing a different file for the same style rule) and merges their output at the end. It fits uniform, parallelisable subtasks where the win is throughput, not specialisation.
In both shapes, the coordinator is the hub: it owns decomposition, delegates, aggregates results, and handles errors. Subagents talk back to the coordinator, not to each other - that keeps the coordinator as the single place you can observe what's happening, apply consistent error handling, and control what information flows where.
The isolation principle: what subagents don't inherit
A subagent does not automatically inherit the coordinator's system prompt, its conversation history, or another subagent's results. It starts with only what the coordinator explicitly writes into its prompt or task description. Two separate invocations of the same kind of subagent share nothing either - there's no shared memory across calls unless the coordinator deliberately carries something forward. This is the same statelessness principle from Lesson 1.1, just applied one level up: if it isn't explicitly passed in, it doesn't exist for that subagent.
The practical consequence is that context-passing design is as important as picking the orchestration shape. If a synthesis subagent needs findings from a search subagent, the coordinator must pass those findings - in full, and with any attribution metadata (source, confidence, etc.) intact - because the synthesis subagent cannot "look them up" from anywhere else.
Exam trap: tracing failures to the wrong agent
When a multi-agent system produces incomplete or wrong output, the instinct is to blame whichever subagent produced the bad section. Check the coordinator first. If a coordinator decomposes "impact of AI on creative industries" into only visual-arts subtopics, no subagent can produce coverage of music or film - they were never asked. If a coordinator strips source metadata before passing findings to a synthesis subagent, that subagent cannot cite sources it was never given. In both cases the subagent executed correctly on what it received; the fault is upstream, in decomposition or context passing.
Parallel spawning and the cost you're trading for it
When subtasks are genuinely independent, invoke them in parallel rather than one at a time across sequential turns - waiting for subagent A to finish before starting independent subagent B adds latency for no benefit. But parallelism isn't free: running three subagents multiplies token spend roughly threefold, since each one re-derives whatever context the coordinator gives it from scratch. The parallelism win has to be worth that multiplied cost, which is exactly why single-agent stays the default for anything that doesn't have a clear independent-subtask structure.
A worked example: tracing a coverage gap
A multi-agent research system is tasked with covering "renewable energy technologies." The coordinator decomposes this into two subtopics - solar and wind - and spawns a subagent for each. Both subagents do excellent, well-sourced work on exactly what they were assigned. The final merged report is thorough on solar and wind and says nothing about geothermal, tidal, biomass, or nuclear fusion.
It's tempting to conclude the search subagents didn't look hard enough, or that more subagents are needed. Neither is the fix. The subagents researched precisely what they were told to research; no amount of additional search depth on solar and wind produces a section on geothermal. The coverage gap traces to one place - the coordinator's decomposition only named two of at least six major subtopics. The fix is a coordinator that enumerates the full breadth of a topic before delegating, not a smarter or more numerous set of subagents executing against the same narrow assignment. This is the general shape of most multi-agent failures worth knowing for the exam: incomplete scope traces to decomposition; incomplete attribution or detail within a covered subtopic traces to context passing; only a genuinely wrong subagent output traces to the subagent itself.
Key concept
Default to single-agent. Reach for multi-agent when you can name the specific isolation or parallelism benefit you're getting and it outweighs the coordination overhead and multiplied token cost - not because a task sounds complex enough to deserve it.