> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2-update-deprecated-models.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# What are Teams?

> Groups of agents that collaborate to solve complex tasks.

A Team is a collection of agents (or sub-teams) that work together. The team leader delegates tasks to members based on their roles.

<img className="block dark:hidden" src="https://mintcdn.com/agno-v2-update-deprecated-models/SLsj9RLMZmnApIh7/images/teams/team-structure-light.png?fit=max&auto=format&n=SLsj9RLMZmnApIh7&q=85&s=9b026f81dc23ade40d0dc09c05a1327c" alt="Team structure" width="2610" height="1413" data-path="images/teams/team-structure-light.png" />

<img className="hidden dark:block" src="https://mintcdn.com/agno-v2-update-deprecated-models/SLsj9RLMZmnApIh7/images/teams/team-structure-dark.png?fit=max&auto=format&n=SLsj9RLMZmnApIh7&q=85&s=ff95d3b1e924e0352fc8b8fed889931f" alt="Team structure" width="2610" height="1413" data-path="images/teams/team-structure-dark.png" />

```python theme={null}
from agno.team import Team
from agno.agent import Agent

team = Team(members=[
    Agent(name="English Agent", role="You answer questions in English"),
    Agent(name="Chinese Agent", role="You answer questions in Chinese"),
    Team(
        name="Germanic Team",
        role="You coordinate the team members to answer questions in German and Dutch",
        members=[
            Agent(name="German Agent", role="You answer questions in German"),
            Agent(name="Dutch Agent", role="You answer questions in Dutch"),
        ],
    ),
])
```

## Why Teams?

Single agents hit limits fast. Context windows fill up, decision-making gets muddy, debugging becomes impossible.

Teams distribute work across specialized agents:

| Benefit             | Description                                                           |
| ------------------- | --------------------------------------------------------------------- |
| Specialization      | Each agent masters one domain instead of being mediocre at everything |
| Parallel processing | Multiple agents work simultaneously on independent subtasks           |
| Maintainability     | When something breaks, you know exactly which agent to fix            |
| Scalability         | Add capabilities by adding agents, not rewriting everything           |

The tradeoff: coordination overhead. Agents need to communicate and share state. Get this wrong and you've built a more expensive failure mode.

## When to Use Teams

**Use a team when:**

* A task requires multiple specialized agents with different tools or expertise
* A single agent's context window gets exceeded
* You want each agent focused on a narrow scope

**Use a single agent when:**

* The task fits one domain of expertise
* Minimizing token costs matters
* You're not sure yet (start simple, add agents when you hit limits)

## What's New?

Team execution is modular. Message building, session handling, storage, and background managers are separated into dedicated components so coordination logic can evolve without changing the Team API.

Additional Team 2.0 updates include approvals for human-in-the-loop workflows, cron-based scheduling for teams, improved HITL requirements, and LearningMachine support for persistent learning.

## Team Modes

Team 2.0 introduces `TeamMode` to make collaboration styles explicit. Prefer `mode=` instead of toggling `respond_directly` or `delegate_to_all_members` directly.

```python theme={null}
from agno.team import Team, TeamMode

team = Team(
    name="Research Team",
    members=[...],
    mode=TeamMode.broadcast,
)
```

| Mode           | Configuration                        | Use case                                                        |
| -------------- | ------------------------------------ | --------------------------------------------------------------- |
| **Coordinate** | `mode=TeamMode.coordinate` (default) | Decompose work, delegate to members, synthesize results         |
| **Route**      | `mode=TeamMode.route`                | Route to a single specialist and return their response directly |
| **Broadcast**  | `mode=TeamMode.broadcast`            | Delegate the same task to all members and synthesize            |
| **Tasks**      | `mode=TeamMode.tasks`                | Manage a shared task list and loop until the goal is complete   |

See [Delegation](/teams/delegation) for details.

## Guides

<CardGroup cols={3}>
  <Card title="Build Teams" icon="wrench" iconType="duotone" href="/teams/building-teams">
    Define members, roles, and structure.
  </Card>

  <Card title="Run Teams" icon="user-robot" iconType="duotone" href="/teams/running-teams">
    Execute teams and handle responses.
  </Card>

  <Card title="Debug Teams" icon="bug" iconType="duotone" href="/teams/debugging-teams">
    Inspect and troubleshoot team behavior.
  </Card>
</CardGroup>

## Resources

* [Examples](/cookbook/teams/overview)
* [Reference](/reference/teams/team)
