The root agent is the entry point of a flow. A message arrives, the root picks it up, and it routes work to sub-agents.
The defining constraint, and the one most often misunderstood: the root agent never calls the model to produce an answer. It holds shared instructions and routing topology. Every answer a run returns comes from a sub-agent.
What this means in practice
- A root-only agent with no sub-agents cannot answer anything. You must define at least one sub-agent as the default.
- Routing timeline rows always show a real sub-agent as the responder. The root never appears as the "from" or "to" party for a model-generated answer.
- The root's instructions are merged context for whichever sub-agent is active — not an overriding system prompt.
That last point is the common pitfall. Teams write authoritative policy into the root prompt and expect it to control behaviour absolutely. It does not: a sub-agent's own instructions take priority wherever the two conflict.
What belongs in the root
| Put in root instructions | Put in sub-agent instructions |
|---|---|
| Tone and brand voice | Domain-specific procedure |
| Global safety policy | Tool-usage specifics |
| Shared context every specialist needs | Anything that must not be overridden |
The entry-agent rule
The graph's entry sub-agent gets special treatment on its very first turn. If it ends that turn with a plain answer instead of routing anywhere, the runtime nudges it to actually route — or to ask one clarifying question — rather than accepting a fabricated direct answer. This fires only on that sub-agent's first-ever routing decision; a normal synthesis answer after a successful handoff is never nudged. See correction nudges.