> For the complete documentation index, see [llms.txt](https://docs.poweromni.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.poweromni.ai/en/administration-and-configuration/artifacts/agents/agent-team.md).

# Agent Team

The **Agent Team** feature lets you build a **Multi-agent** structure in Power Omni using the **A2A (Agent-to-Agent)** protocol. An **Orchestrator Agent** coordinates the conversation with the user and calls **Specialist Agents** whenever it needs specific knowledge or a specific integration, combining their answers into a single response.

In practice, the user talks to a single agent, and that agent decides on its own when to consult the Fabric agent, the Azure DevOps agent, the Finance agent, or any other specialist on the team.

### Concepts

<table><thead><tr><th width="233">Term</th><th>Description</th></tr></thead><tbody><tr><td><strong>Orchestrator Agent</strong></td><td>The agent the user talks to. It interprets the request, decides which specialists to consult and consolidates their answers.</td></tr><tr><td><strong>Specialist Agents</strong></td><td>Agents the orchestrator can consult. Each one keeps its own instructions, model, connectors and permissions.</td></tr><tr><td><strong>A2A (Agent-to-Agent)</strong></td><td>Communication protocol between agents. An agent can only be consulted by another agent when it is enabled for A2A.</td></tr><tr><td><strong>Agent team</strong></td><td>A group made up of one orchestrator and up to <strong>10 specialists</strong>.</td></tr></tbody></table>

### Key Benefits

* **A single point of conversation:** users do not need to know which agent handles each subject. They just talk to the orchestrator.
* **Specialization:** each agent stays focused on its own domain, with its own instructions and connectors, which leads to more accurate answers.
* **Reuse:** existing agents can be combined into new teams without being recreated.
* **Governance preserved:** each agent's access permissions and usage tracking remain in effect within the team.

### Setting Up an Agent Team

{% stepper %}
{% step %}

#### Go to the Administration Portal

Navigate to **Artifacts > Agents**.
{% endstep %}

{% step %}

#### Select the orchestrator

On the row of the agent that will be the orchestrator, click the **Agent team** button in the **Actions** column.
{% endstep %}

{% step %}

#### Confirm the Orchestrator Agent

In the **Agent team** panel, confirm or select the **Orchestrator Agent**. This is the agent users will talk to.
{% endstep %}

{% step %}

#### Select specialist agents

Under **Which agents can it consult?**, check the specialists you want. Use the **Search agent by name** field to find agents quickly.
{% endstep %}

{% step %}

#### Save the team

Click **Save team**. The message **Team saved. Chat with the orchestrator to get started.** will be displayed.
{% endstep %}
{% endstepper %}

### Team Rules

* You can select **up to 10 specialists** per orchestrator.
* When you save, the selected specialists are **automatically enabled for A2A**.
* Through the orchestrator, each user can only consult **agents they already have access to**. The team does not grant access to restricted agents.
* Token usage is **tracked per agent**, meaning each specialist that is called records its own usage.

### Allow Other Agents to Consult this Agent (A2A)

At the bottom of the panel, the **Allow other agents to consult this agent (A2A)** option controls whether this agent can be called as a specialist by other orchestrators.

* **Enabled:** the agent is available to be consulted via A2A.
* **Disabled:** the agent cannot be consulted by other agents, unless it is selected as a specialist in a team (which enables it automatically on save).

{% hint style="warning" %}

## <mark style="color:$warning;">The agent description is essential</mark>

<mark style="color:$warning;">The orchestrator uses each specialist's</mark> <mark style="color:$warning;"></mark><mark style="color:$warning;">**description**</mark> <mark style="color:$warning;"></mark><mark style="color:$warning;">to decide which one to call. Agents without a description are identified by name only (they show "No description. The agent will be identified by its name."), which greatly reduces routing accuracy. Before building a team, make sure every specialist has a clear and objective description.</mark>
{% endhint %}

### How to Write a Good Description

A good description states **what the agent can do**, **which data or systems it accesses** and **when it should be called**.

<table><thead><tr><th width="179">Agent</th><th width="183">Weak description</th><th>Recommended description</th></tr></thead><tbody><tr><td><strong>Fabric</strong></td><td>Reports in Fabric</td><td>Queries Power Tuning reports and semantic models in Microsoft Fabric. Call it for questions about KPIs, customer growth, revenue and sales metrics.</td></tr><tr><td><strong>Demand Manager</strong></td><td>No description</td><td>Queries and manages Azure DevOps work items. Call it to list open tickets and check the status, owners and deadlines of requests.</td></tr><tr><td><strong>Finance</strong></td><td>Finance agent</td><td>Answers questions about accounts payable and receivable, reimbursements and internal financial policies. Call it for payments, invoices and financial deadlines.</td></tr></tbody></table>

{% hint style="info" %}

## <mark style="color:blue;">Tip</mark>

<mark style="color:blue;">**Avoid having specialists with similar descriptions on the same team. The more distinct each scope is, the easier it is for the orchestrator to pick the right agent.**</mark>
{% endhint %}

### Identifying an Orchestrator Agent

Agents configured as orchestrators display the **Multi-agent** icon (👥) next to their name.

* **In the Administration Portal:** in the Agents list, hovering over the icon shows **Orchestrator Agent - Multi-agent**.
* **In the User Portal:** the icon appears in the Agents side menu and on the agent card in the Agent Hub.

### Using the Team in the Chat

For the user, it is seamless: just open a conversation with the **Orchestrator Agent** and ask the question as usual.

When the orchestrator decides it needs a specialist, the chat shows **Calling agent:** followed by the name of the specialist being called. At the end, the orchestrator combines the information and presents the answer.

### Examples

* "Check in Fabric how Power Tuning's customer base has grown" → the orchestrator calls the **Fabric** agent.
* "Check the open tickets in Azure DevOps" → the orchestrator calls the **Demand Manager - Azure DevOps** agent.

### Permissions and Usage

* **Permissions:** the orchestrator respects each user's permissions. If the user does not have access to a specialist (directly, through a group or through a workspace), that specialist will not be consulted on their behalf.
* **Usage:** each agent that is called has its token usage tracked individually, which can be followed in Monitoring and in Audits > Token Usage.
* **Budget:** since usage is tracked per agent, the limits defined in Budget also apply to specialists.

{% hint style="danger" %}

## <mark style="color:$danger;">Watch the cost</mark>

<mark style="color:$danger;">A single question to the orchestrator can call several specialists, and each one consumes tokens with its own model. Monitor team usage and prefer specialists with models suited to the type of task.</mark>
{% endhint %}
