Single-Agent vs Multi-Agent Systems

What is this for? To explain when one agent should own the whole job vs when to split work across a multi-agent team.

Why does it exist? One giant agent with dozens of tools gets overloaded. Its context fills up, tool selection gets noisy, and tool hallucination (inventing or misusing tool calls) becomes more likely. Specialists are easier to trust than one overworked generalist.

Intuition

One skilled generalist can close a ticket: research policy, draft a reply, file the note. That is single-agent.

A newsroom-style pipeline—researcher, writer, fact-checker—is multi-agent. The second can be higher quality at scale, but you now own handoffs, shared memory, and "who is stuck?" debugging.

Plain-English idea Single-agent Multi-agent
Who does the work? One loop, all tools Several specialists, each with narrow tools
Tracing One timeline Must track which agent produced what
Default? Yes—start here Only when specialization clearly wins
flowchart LR subgraph single [Single-agent] A[One loop] --> T[All tools] end subgraph multi [Multi-agent] P[Planner] --> R[Researcher] R --> W[Writer] W --> V[Reviewer] end

Default: start single-agent. Move to multi-agent when specialization and parallelism clearly beat the orchestration tax.

How it works

Single-agent

Multi-agent — enterprise specialist roles

Agent role Plain-English idea Typical tools
Triage agent Front door that routes the task to the right specialist Classifier, router
Infrastructure agent Reads live telemetry, logs, cluster signals Splunk, metrics APIs
Codebase agent Checks commit diffs, pull requests, source code GitHub, git
Policy & HR agent Looks up runbooks, policy, knowledge base entries RAG over docs

Each specialist gets a small, relevant toolset—not every API in the company.

Collaboration patterns

Pattern Plain-English idea Watch-out
Pipeline Fixed stage order Brittle if a stage fails silently
Supervisor Boss agent delegates Boss becomes a bottleneck
Peer debate Two agents critique Cost explodes; needs a judge and stop rule
Router / triage Classifier picks one specialist Mis-routing causes confident wrong answers

Hierarchical ReAct (plain English)

At enterprise scale, the triage agent becomes a meta-planner. Specialist agents become its "tools." The triage agent reasons at the strategy level and delegates the details—it does not call every API itself.

Decision guide

Stay single-agent while:

Consider multi-agent when:

Measure before splitting: if a single agent plus a deterministic reviewer script hits your bar, skip the second LLM.

In code

A supervisor that delegates to two specialists with a shared artifact—still simple enough to debug.

from dataclasses import dataclass

@dataclass
class Artifact:
    brief: str = ""
    notes: str = ""
    draft: str = ""
    verdict: str = ""

def researcher(art: Artifact) -> Artifact:
    art.notes = f"facts for: {art.brief}"
    return art

def writer(art: Artifact) -> Artifact:
    art.draft = f"Draft based on [{art.notes}]"
    return art

def reviewer(art: Artifact) -> Artifact:
    art.verdict = "pass" if "facts" in art.notes and art.draft else "fail"
    return art

def single_agent(brief: str) -> Artifact:
    art = Artifact(brief=brief)
    return reviewer(writer(researcher(art)))

def multi_pipeline(brief: str) -> Artifact:
    art = Artifact(brief=brief)
    for stage in (researcher, writer, reviewer):
        art = stage(art)
        if art.verdict == "fail":
            break
    return art

print(single_agent("weekly support themes").verdict)
print(multi_pipeline("weekly support themes").verdict)

Frameworks differ in APIs; the invariant is explicit artifacts and stop conditions.

What goes wrong

Putting it into practice

Run an honest A/B on your golden set: single-agent baseline vs a two-role pipeline (implementer + reviewer). Compare pass rate, p95 latency, and cost per success. Promote multi-agent only if the quality lift beats the cost/latency hit.

If you do split, publish a one-page orchestration diagram: roles, tools per role, artifact schema, and max turns. On-call engineers should debug from that page at 2 a.m.

Cost and latency math

Rough planning math helps. If each agent turn costs about C dollars and takes T seconds, a supervisor plus three specialists that each speak twice costs roughly 8CT in the worst chatter pattern. A single agent that makes four tool calls costs about 4CT plus tool time. Unless eval quality rises enough to justify the multiplier, the multi-agent bill is vanity. Write the inequality down before the rewrite.

One-line summary

Use one agent until specialization clearly improves measured quality or safety; only then add multi-agent roles with typed handoffs, narrow tools, and hard stop rules.

Key terms