When you callDocumentation Index
Fetch the complete documentation index at: https://agno-v2-shaloo-ai-support-link.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
run() on a team, the leader decides how to handle the request: respond directly, use tools, or delegate to members.

- Team receives user input
- Leader analyzes the input and decides which members to delegate to
- Leader formulates a task for each selected member
- Members execute and return results (concurrently in async mode)
- Leader synthesizes results into a final response
| Mode | Configuration | Behavior |
|---|---|---|
| Coordinate (default) | mode=TeamMode.coordinate (or omit mode) | Leader selects members, formulates tasks, synthesizes results |
| Route | mode=TeamMode.route | Leader routes to one member and returns their response directly |
| Broadcast | mode=TeamMode.broadcast | Leader delegates the same task to all members simultaneously |
| Tasks | mode=TeamMode.tasks | Leader builds and executes a shared task list until the goal is complete |
TeamMode from agno.team.mode to set the mode explicitly. The legacy flags still work, but mode is the recommended approach.
Member selection and run tracking use member IDs. Set explicit id values on members for stable delegation identity.
Coordinate Mode (Default)
The leader controls everything: which members to use, what task to give them, and how to combine their outputs.- Tasks need decomposition into subtasks
- You want quality control over the final output
- The leader should add context or reasoning to member outputs
Route Mode
The leader selects which member handles the request and returns the member’s response directly. By default the leader can still craft the task; setdetermine_input_for_members=False to pass the user input through unchanged.

- You have specialized agents and want automatic routing
- The leader shouldn’t modify the request or response
- You want lower latency (no synthesis step)
Legacy Configuration Flags
These flags still work, but are overridden bymode when set.
respond_directly=True: Return member responses without leader synthesis (maps to TeamMode.route).

determine_input_for_members=False: Send user input directly to members instead of having the leader formulate a task (works with any mode).

Broadcast Mode
The leader delegates to all members at once. Useful for gathering multiple perspectives or parallel research.
- You want multiple perspectives on the same topic
- Members can work independently
- Parallel execution improves latency
If both
delegate_to_all_members=True and respond_directly=True are set, broadcast wins and respond_directly is disabled.Tasks Mode
Tasks mode is an autonomous loop where the leader decomposes the goal into tasks, executes them, and marks the goal complete.Structured Input
When usingdetermine_input_for_members=False, you can pass structured Pydantic models directly to members:
Production Considerations
Token Costs
Each mode has different token overhead:| Mode | Coordination Cost | When to Use |
|---|---|---|
| Coordinate | High (decomposition + synthesis) | Quality matters more than cost |
| Route | Low (selection only) | Simple routing, cost-sensitive |
| Broadcast | Medium (synthesis only) | Parallel research, multiple perspectives |
| Tasks | High (planning + iterative loop) | Multi-step goals with dependencies |
Latency
- Coordinate: Sequential (leader thinks → members execute → leader synthesizes)
- Route: Fast (leader selects → member executes)
- Broadcast with async: Parallel member execution, but synthesis adds latency
- Tasks: Iterative; multiple cycles until tasks are complete or
max_iterationsis reached
Error Handling
What happens when a member fails?- Coordinate: Leader can work with partial results from other members
- Route: Failure is returned directly to caller
- Broadcast: Leader synthesizes available results, may note missing data
- Tasks: Task list tracks failed/blocked tasks; the leader can retry or reassign until completion




