Splitting a task across several agents sounds like good engineering, with each one specialized. In practice it adds hand-offs, latency, cost and places for context to get lost. Start with one agent and split only for a reason.
Reasons that justify a split
- Different permissions — one component must read sensitive data, another must act externally, and they should not share access.
- Different tools or context that would overload a single prompt.
- Independent work that can run in parallel and be merged.
- A separate checker — an independent step that reviews another's output.
Reasons that don't
- The diagram looks cleaner.
- Each role has a different name in the business.
- A framework makes it easy.
Compare the single-agent and multi-agent versions on the same test set, counting accuracy, latency and cost. Keep the extra moving parts only if the numbers justify them.