All posts
Technical
  • #agents
  • #multi-agent

Multi-agent systems

28.05.2026·14 min

Multi-agent systems

Agent Systems · 21-c06

26 June 2026 · Architecture reading

Multi-agent systems

A multi-agent system splits one task across several agents. Sometimes that split genuinely moves the work forward; more often it just means more model calls, more latency, and errors that accumulate and grow. This post draws the line.

Question
does it actually help?
Levers
roles · artifacts · phases
Cost
communication + coordination
Risk
41-86% failure rate

Concepts in this post

  • supervisor-worker
  • specialist agent
  • debate
  • delegation
  • coordination cost
  • handoff
  • failure mode

A single agent carries a task end to end with a goal, state, tools, and a loop. A multi-agent system divides the same task across several agents: one supervises, one specializes, one critiques. Turns pass between them, intermediate outputs change hands, and an answer comes out the far end.

The catch: extra agents are not free. Each one brings its own model call, its own context, and its own failure surface. Below I lay out when that cost is worth paying, when a single well-built agent beats a multi-agent system, and what the research actually shows. The diagrams loop on their own, gently showing where control and flow sit right now.

01/09

What is a multi-agent system?

A multi-agent system is several agents that communicate toward a shared goal. As the survey frames it, this is not just many prompts: each agent has a role (a profile), a way of reasoning, its own memory, rules, and tools it can call. What you design is as much the environment and communication structure between agents as the agents themselves.

In practice you meet three core arrangements: a supervisor-worker structure (a manager agent splits the task across workers and collects results), specialist agents (each owning a phase or domain), and debate (several agents argue opposing views and a judge decides). This post takes each in turn.

single agent vs multi-agent
single agent
goal
loop
answer

one loop, one context, one failure surface

multi-agent
supervisor
worker A
worker B
worker C

messages between roles, intermediate artifacts, coordination overhead

02/09

Supervisor-worker

This is the most common pattern. A supervisor takes the incoming task, splits it into subtasks, sends each piece to a suitable worker, then collects and merges the results. AutoGen formalizes this as "conversation programming": you define the agents and their roles, then program the conversation flow between them. At its simplest that's an assistant and a user-proxy; at its most complex, a group chat steered by a GroupChatManager.

The pattern works when the task decomposes into pieces that can run in parallel: gathering data from three sources, editing three independent files, answering three separately verifiable sub-questions. But note: AutoGen's own paper leaves it as an open question which agent topology and conversation pattern is optimal and most cost-effective for a given task. A multi-agent structure is not automatically better output; it is mostly orchestration infrastructure, not a quality guarantee.

supervisor splits the work, then collects results
incoming tasksupervisorworker Aworker Bworker Cmerged answer
1 · split2 · workers run3 · collect
task dispatch (down) result collection (up)
03/09

Specialist agents

The second pattern splits the task by role: each agent is the expert of a phase or domain. MetaGPT applies this to software; roles like Product Manager, Architect, and Engineer mimic human standard operating procedures (SOPs), and each role hands a structured intermediate output (an artifact) to the next. ChatDev similarly assigns design, coding, code review, and testing phases to separate agents.

The key idea: a specialist agent is valuable when it produces a concrete artifact and hands it off cleanly to the next role. MetaGPT argues that naive chains of agents amplify "cascading hallucinations" (an early agent's error spreads and grows downstream); its fix is required output formats instead of loose role-play chatter. The converse holds too: without guardrails, specialists drift. CAMEL reports exactly these pathologies: role flipping, repeating instructions, flaky replies, and infinite message loops.

role chain: each agent hands off an artifact
Product Manager
requirements doc

structured handoff

Architect
design / interface

structured handoff

Engineer
code

structured handoff

Reviewer
review + tests
good: concrete artifact handoff bad: loose chatter, role flipping, infinite loop
04/09

Debate: manufacturing disagreement

The third pattern is different: agents don't divide labour, they oppose each other. Multi-Agent Debate starts from the fact that a single model, once confident in its answer, can't correct itself; the paper calls this "Degeneration-of-Thought." The fix is to introduce genuine external disagreement: two (or more) debaters argue opposing views and a judge watches the rounds and decides.

This helps on tasks where the answer is non-obvious and rote reasoning leads astray. The paper reports debate beating baselines on counter-intuitive arithmetic and commonsense translation, including a case where GPT-3.5-Turbo with MAD surpasses GPT-4 on the Common MT dataset. But two caveats: more debate rounds are not automatically better, so the system needs adaptive stopping; and the judge can be biased, especially when the agents and the judge are different models, raising judge-bias risk.

debate round: disagreement and a judge
debater Ajudgedebater B
round 1round 2round 3
convergingjudge's verdict
view A view B adaptive stopping: stop once converged
05/09

Delegation depth

A supervisor-worker structure need not stop at one level: a worker can delegate its own subtasks to other agents. On paper this looks clean; in practice it blows up the coordination cost. Each level of delegation adds new model calls, new context to pass along, and new handoff points.

In the tree below, watch how the total number of agents (and therefore model calls) multiplies as delegation depth grows. The survey calls this "efficiency explosion": as scale grows, agents repeatedly call the model for memory extraction, planning, action, and communication. Layer on the "accumulative effect": because each round depends on the previous output, an early error grows along the chain. A deep delegation tree is both more expensive and more fragile.

as delegation deepens, cost multiplies
L0 · supervisor
1
L1 · worker
3
L2 · sub-worker
7
L3 · sub-sub-worker
15
agent count≈ model calls

each level adds new calls, new context passing, new handoffs

06/09

Coordination cost

The hidden bill of a multi-agent system is communication. The survey says plainly that fully-connected natural-language communication (every agent talking to every agent) is flexible but operationally expensive, and flags communication cost and runtime as evaluation concerns. In a single agent, "cost" is mostly the tokens of one loop; in a multi-agent system every message, handoff, and turn is a separate model call.

The chart below shows a simple fact: as agent count grows, the number of communication channels grows not linearly but close to quadratically. Three agents means three channels; six agents means fifteen. Each channel is a potential message, a misunderstanding, a synchronization point. This is exactly where "more agents = better" breaks: the marginal cost explodes before the marginal benefit arrives.

agent count vs communication channels

channels

2 agents
1
3 agents
3
4 agents
6
5 agents
10
6 agents
15

agent count →

for n agents, channels ≈ n(n-1)/2: grows faster than linearly

07/09

Where coordination breaks

"Why Do Multi-Agent LLM Systems Fail?" studies exactly this, empirically. It hand-annotates 1,642 traces and groups 14 failure modes into three buckets: system design issues, inter-agent misalignment, and task verification gaps. Across the seven open-source multi-agent frameworks studied, reported failure rates run from 41% to 86.7%. These are not rare accidents; they are systematic breaking points.

The most frequent failures will feel familiar: step repetition, unclear termination (the system can't tell when to stop), disobeying the assigned role or task, reasoning-action mismatch, ignoring the given input, and incomplete or incorrect verification. What matters is that the paper's recommended fix is not "add more agents": clear role and task definitions, deliberate conversation-pattern design, modular agents, standardized communication protocols, and domain-appropriate multi-level verification. Improving ChatDev's role specs raised task success by 9.4%; adding high-level objective verification gained 15.6% on ProgramDev. Architecture and verification help, not agent count.

the six most frequent failure modes
step repetition

repeating the same step for nothing

unclear termination

no clear sense of when to stop

role disobedience

breaking the assigned role / task

reasoning-action mismatch

what it says and does diverge

ignored input

ignoring the given input

weak verification

incomplete / superficial checking

fix direction: clear roles + conversation design + multi-level verification, not more agents

08/09

When a single agent wins

Honestly: on most tasks a single well-built agent beats a multi-agent system. The failure-taxonomy paper states plainly that gains over a single agent or simple baselines like best-of-N (try the same task a few times and keep the best) are often minimal. So before committing to an architecture, compare it against simple baselines: single agent, self-reflection, best-of-N, majority vote.

Practical rule: start from the minimum coordination topology and add an agent only for a clear separation. Which separation? Context separation (distinct contexts that won't fit one window), tool separation (work needing different authority and access), authority separation (who decides what), critique (when an independent critic genuinely adds value), or verification separation (when the producer and the checker must be different). If none of those apply, the extra agent is most likely just noise.

add an agent, or don't
worth adding an agent
  • context separation: distinct contexts won't fit one window
  • tool / authority separation: different access and rights
  • critique: an independent critic genuinely adds value
  • verification: producer and checker must be separate
a single agent is enough
  • the task fits one context and doesn't split naturally
  • best-of-N or self-reflection gives the same quality
  • the added agent produces chatter, not a new decision
  • latency and cost exceed the marginal gain
09/09

Sources

A multi-agent system is a tool, not a destination: it is powerful when the task naturally splits into roles, artifacts, phases, or competing views. When none of that holds, more agents just means more model calls, more latency, and more error that accumulates and grows.

So when choosing an architecture, don't ask "how many agents?" Ask "which separation earns an agent?" If there's no answer, a single well-built agent is already the best system you have.

  1. S1Chen et al., A Survey on LLM-based Multi-Agent System, 2025
  2. S2Wu et al., AutoGen, 2023
  3. S3Li et al., CAMEL, NeurIPS 2023
  4. S4Hong et al., MetaGPT, ICLR 2024
  5. S5Qian et al., ChatDev, ACL 2024
  6. S6Liang et al., Multi-Agent Debate, EMNLP 2024
  7. S7Cemri et al., Why Do Multi-Agent LLM Systems Fail?, NeurIPS 2025