Swarm
Run many peer agents that interact directly without a central supervisor, achieving emergent coordination.
Problem
A central supervisor scales poorly to dozens or hundreds of agents: it becomes the bottleneck, and forcing every interaction through it removes the agent-to-agent dynamics that the task actually depends on. A negotiation in which every party speaks only through the chair is not a negotiation. At the same time, dropping the supervisor entirely raises new problems: how do agents find each other, how does the system terminate, and how does anyone debug emergent behaviour when nobody is in charge.
Solution
Agents interact via a shared message bus, chat, or environment. Each agent has its own goals and policies. No central coordinator; convergence is emergent. Termination conditions are environment-level (time budget, consensus threshold, external trigger).
When to use
- Centralised coordination is a bottleneck or the task benefits from many independent attempts.
- Agents can interact through a shared bus or environment.
- Termination conditions can be defined at the environment level.
Open the full interactive page →
Diagram, neighbourhood map, code examples, related patterns and full provenance.