This idea carries a full system design question on its own. Each walks through the full answer.
AI Engineering · Agents In Production
Free preview: the first part of this 11-part lesson.
Already bought the course? Sign in to read the whole lesson.
this lesson is part of
AI Engineering
Unlock this lesson and the 199 other paid lessons
$49 once, by PayPal
See the AI Engineering courseread the rest of this lesson in
AI Engineering
Unlock this lesson and the 199 other paid lessons
$49 once, by PayPal
See the AI Engineering coursein Agents In Production
This lesson is part of the AI Engineering course. Unlock the full course, a separate one-time payment, for lifetime access.
One-time payment via PayPal
Get Lifetime AccessOne-time payment: UPI, card or netbanking
Get Lifetime AccessFoundation lessons of this course are free, no payment needed. Try them now
Usually no. The right default is one agent with a good set of tools.
The temptation is strong and it feels principled. The task is hard, so you break it into parts and give each part its own agent: a researcher, a writer, a checker, a fixer. It looks like clean design, the kind you would use for a team of people. But an agent is not a person, and a team of agents is not an org chart. It is a distributed system where every member is stochastic and sometimes wrong, and every message between them is another place the whole thing can break.

A single agent with the right tools is simpler to build, cheaper to run, and far easier to debug, because there is one context, one transcript, and one place the failure happened. The moment you have several agents, you have several transcripts, several contexts, and a new problem the single agent never had: getting them to agree. That problem is not free, and most tasks do not need to pay for it.
Look closely at the two shapes. On the left, a failure has one home. You open a single transcript, you find the step that went wrong, you fix it. On the right, the same failure could live inside any of the three agents or, worse, in the space between them, in a handoff where one agent's output was read by another and quietly misunderstood. That second kind of bug is the expensive one, because there is no single place to look. You are debugging a conversation, not a program.
This is the closing lesson of the chapter, and it is deliberately contrarian. The whole industry spent a year selling agent swarms. The engineers who actually shipped came back with a quieter answer: start with one, and add agents only when you can say exactly what they buy you. Restraint is not the timid choice here. It is the one that ships.