Multi-agent architectures solve problems a single agent cannot, and they multiply the ways a system can fail. Agents passing free-form prose to each other is the most common source of flakiness; typed contracts between agents turn a whole class of failures into validation errors you can catch. Hard limits on iterations, tool calls and spend per run are architectural requirements rather than later additions, because the characteristic failure is an expensive loop.
The honest starting question is whether multiple agents are needed at all. A single well-tooled agent is cheaper, faster and far easier to debug, and it is the right answer more often than the industry admits. Multi-agent designs earn their cost when the task genuinely decomposes into sub-tasks needing different tools, different context or different judgement — and when those sub-tasks can be verified independently.
Codazz builds this in production — Multi-Agent Systems.