A working reference for multi-agent interaction patterns, classification, and engineering implementation. Not a paper survey, not a framework brochure — an engineering knowledge base where every pattern answers four questions:
- What problem does it solve?
- What is its communication / control structure?
- How do you implement it in a real system?
- When should you not use it?
Recommended reading paths
- New here → start with the Taxonomy
- Picking a design → jump to the Decision Matrix
- Running code-orchestrated subagents at scale → read Dynamic Workflows Overview
- Building a platform → read Production Runtime Architecture
- Adding a new pattern → use the Pattern Page Template
- Looking up a term → consult the Glossary
One-line definition
A multi-agent system is composed of multiple agents — each with its own responsibility, state, tools or context — that collaborate, compete, review, delegate, and decompose tasks through messages, tool calls, shared state, event streams, protocols, or environment changes.
Global taxonomy
Why classify?
Multi-agent isn't just "many LLMs talking." In production the questions that actually matter are:
- Who holds control at any given moment?
- How is context isolated between agents?
- How are conflicting outputs merged?
- How do tasks recover, cancel, retry, and trace?
- When does the plan live in code rather than conversation?
- Which actions need human approval?
- Which capabilities are exposed over MCP / A2A / Agent Client Protocol?
In public materials, the OpenAI Agents SDK frames agents as units that plan, call tools, collaborate across specialists, and maintain state; LangChain decomposes multi-agent into subagents, handoffs, skills, and routers; Google ADK treats pipeline, parallel, hierarchical, generator-critic, refinement loop, and human-in-the-loop as composable production patterns. See References.