Coordination · Established
Supervisor
Also known as: Orchestrator–worker, Manager agent, Hierarchical orchestration
A supervisor is a central coordinator that breaks a task into sub-tasks, delegates each to a specialised worker, inspects the results and decides the next action until the task is done.
01Problem it solves
A single generalist component (or agent) handles complex, multi-skill tasks poorly: prompts or code grow unwieldy, tools collide and it is unclear who is responsible for the final answer.
02Use when / Avoid when
Use when
- Work decomposes into sub-tasks that need different tools, prompts or permissions.
- One component should own planning, quality control and the final result.
- The set of sub-tasks is decided at runtime rather than known in advance.
- You need a single place to enforce budgets, limits and policies across workers.
Avoid when
- The sequence of steps is fixed; a DAG or state machine is simpler and cheaper.
- Workers must talk to each other directly and often; the supervisor becomes a bottleneck.
- Latency is critical and every extra coordination round-trip matters.
03How it works
- 1PlanThe supervisor receives the task and decides which worker to call first.
- 2DelegateIt sends a scoped sub-task and context to that worker.
- 3ReviewThe worker returns a result; the supervisor evaluates it against the goal.
- 4IterateIt delegates further, retries or re-plans until the goal or a limit is reached.
- 5RespondThe supervisor assembles and returns the final result.
04Capabilities
| Capability | What it means |
|---|---|
| Central delegation | One coordinator assigns sub-tasks to specialised workers and decides what happens with their results. |
| Runtime branching | The next step is chosen at runtime from the current state, input or classification result. |
| Result aggregation | Outputs from concurrent branches are collected and merged at a defined join point. |
05Tradeoffs
| Aspect | You gain | You pay |
|---|---|---|
| Control | One owner for planning, policy and final output. | The supervisor is a single point of failure and a throughput bottleneck. |
| Specialisation | Workers stay small, focused and independently testable. | Context must be passed explicitly; workers lack the full picture. |
| Cost | Only the workers actually needed are invoked. | With LLM supervisors, every coordination turn costs tokens and latency. |
06Failure considerations
| Failure mode | Mitigation |
|---|---|
| The supervisor loops, re-delegating without converging. | Enforce step, time and cost budgets with a defined fallback answer. |
| Context loss: workers receive too little context and return irrelevant results. | Define an explicit sub-task contract (inputs, expected output schema). |
| Worker output is accepted without validation. | Validate worker results against a schema or checks before using them. |
07Implementations
Examples of products and frameworks that implement this pattern. Listed as evidence, not endorsement.
| Implementation | Mechanism |
|---|---|
| LangGraphAgent framework | A supervisor node or agent delegates to worker agents and decides the next step. |
| CrewAIAgent framework | Hierarchical process: a manager agent plans and delegates tasks to crew agents. |
| OpenAI Agents SDKAgent framework | An orchestrator agent can call other agents as tools and keep control. |