All articles
August 17, 2025 6 min read

Multi-agent systems: when you actually need them (usually you don't)

Supervisor patterns and planner-retriever-synthesizer architectures are elegant on a slide. Here's an honest look at when multiple coordinating agents beat one well-tooled agent — and when they just add failure modes.

Written forEngineeringProduct
Multi-AgentArchitectureAgents

Multi-agent systems are having a moment — a supervisor delegating to specialists, a crew dividing the work. They make for a great architecture diagram. They also, most of the time, solve a problem you don't have while adding several you now do. Here's an honest take on when they earn their complexity.

InOrchestrator LLMassigns subtasksWorker LLMWorker LLMWorker LLMSynthesiser LLMOut
The common shape: a supervisor decomposes the task, delegates to focused workers, and a synthesiser merges their output.

The patterns

  • Supervisor — a manager agent routes each subtask to a specialist agent and combines the results.
  • Planner-retriever-synthesizer — one agent plans, another gathers information, a third writes the answer.
  • Debate / critique — agents check or argue with each other to improve quality.

The cost nobody puts on the slide

  • More calls, more cost, more latency — every agent is another chain of LLM calls.
  • More non-determinism — several stochastic components compound into a less predictable whole.
  • Coordination failures — handoffs drop context, agents disagree, and errors cascade across the boundary.
  • Harder to debug and eval — you now have to trace and evaluate a small society, not one component.

When one agent wins

A single agent with a good set of tools and a clear prompt handles the large majority of tasks a 'crew' is pitched for — and it's far easier to debug, eval, and trust. Before you build three agents, try making one really good one. Usually that's the answer.

When multi-agent genuinely earns its keep

  • Separable expertise — genuinely distinct skills or toolsets that don't belong in one prompt.
  • Parallelism that cuts latency — independent subtasks that can truly run at once.
  • Context isolation — each agent keeps a focused window instead of one bloated shared context.
  • Independent scaling — parts of the system that need to scale or fail independently.
Most multi-agent systems are a single well-tooled agent wearing a costume. Add agents when the problem is genuinely plural — not because three boxes look more impressive than one.
Building something with LLMs?
I help teams ship GenAI that’s reliable and cost-efficient.
Let’s talk