Unit 09.03: When a second agent earns its cost
Multi-agent architectures are the most common over-engineering in this space. The question is not whether they work but whether one agent would have.
Relative cost against what you actually gain
Each additional agent adds context, a handoff to get wrong, and its own failure modes. The code prices four designs relative to a single prompt.
Read the note column alongside the cost.
DESIGNS = [
("one agent, one prompt", 1, 1.0, "simplest, one place to debug"),
("one agent, two tool calls", 1, 1.4, "still one context, still traceable"),
("two agents, handoff", 2, 2.6, "separate contexts, a handoff to get wrong"),
("supervisor + three workers", 4, 5.1, "routing bugs, plus three sets of failures"),
]
print(f"{'design':30} {'agents':>7} {'rel. cost':>10} note")
for design, agents, cost, note in DESIGNS:
print(f"{design:30} {agents:>7} {cost:>10.1f} {note}")
print("""
A second agent earns its place when it has a genuinely different job, a
different tool set, or a different failure mode you want isolated -- not when
one prompt got long.
The honest test: could one agent with two tools do this? If yes, the multi-agent
version is costing 2.6x for an architecture diagram.
""")
A supervisor with three workers costs roughly five times a single agent and brings routing bugs plus three separate sets of failures to debug.
The honest test is in the last line: could one agent with two tools do this? Very often it could, and the multi-agent version is buying an architecture diagram at 2.6 times the price. A second agent earns its place when it has a genuinely different job, a different tool set, or a failure mode worth isolating - not when one prompt got long.
The mistake this prevents
The mistake is splitting an agent because its prompt became unwieldy. A long prompt is a prompt problem, and splitting it into two agents converts it into a distributed systems problem - with the long prompt now spread across two places that can disagree.
Takeaway
Add an agent when it has a different job, different tools, or a failure mode you want isolated. Prompt length is not one of those reasons.
