# Agents, Workflows & Triggers

In the [https://gitlab.com/indigo.ai/docs/-/blob/main/getting-started/introduction-to-indigo.ai](https://gitlab.com/indigo.ai/docs/-/blob/main/getting-started/introduction-to-indigo.ai "mention"), we've highlighted what makes our solution unique. Instead of relying on a traditional single AI agent managing all tasks, our platform is designed around a **collaborative AI Agents Workforce**: a team of specialized agents, each with distinct expertise and knowledge bases, working together seamlessly.

## 👮‍♀️ Agents

An AI Agent is an advanced software program capable of interacting with its environment, collecting data, and performing tasks to achieve predefined goals. From a technical perspective, each agent operates based on a **prompt template**—a structured instruction set designed by indigo.ai for optimal performance.

AI Agents are built using a series of instructions that define:

* How to respond to specific user questions.
* What tone, style, and approach to use.
* Where to source knowledge from (e.g., documentation or databases).

Each agent is goal-oriented: if a user asks a question related to a specific topic, the agent responds accordingly, using predefined information.

💡 Think of **agents as subject matter experts** for different tasks or services. For example, in a shoe e-commerce scenario, you might have agents for shipping & returns, payments and transactions, and product recommendations.

<figure><img src="/files/OFzhvQG24F3HCY5BwrJq" alt=""><figcaption><p>The AI Agent Block</p></figcaption></figure>

#### Building a Team of Agents

There's no limit to the number of agents you can create and associate with a virtual assistant.

However, it's crucial to strike the right **balance between granularity**—ensuring each agent has a clear, non-overlapping scope—**and manageability**, keeping the setup streamlined and avoiding excessive complexity.

#### The General Agent

Among your team of agents, one stands out as essential: the General Agent.

The General Agent serves as a **fallback mechanism**, with the primary objective of **replying to all questions that do not pertain to the other specialized agents**.

This agent is automatically included in every new workspace and should never be deleted.

Whether it's casual conversation, general FAQs, vague requests, or even trolling attempts, the General Agent steps in to ensure users always receive a response.

{% hint style="info" %}
For more details on configuring this and other agents, check out the next article: [How to Create an Agent](/getting-started/agents-workflows-and-triggers/how-to-create-an-agent.md)
{% endhint %}

## 🧠 Mother Agent

<figure><img src="/files/LNO32cbrtsvuEZJF395l" alt=""><figcaption><p>Visual representation of the indigo.ai architecture</p></figcaption></figure>

At the core of every AI-powered interaction is the Mother Agent, the **orchestrator** that ensures every user query is handled by the most suitable specialized agent or workflow.

It acts as the **decision-making brain of the virtual assistant**, determining—for every single user message—which agent should respond or which workflow should be triggered before delivering an answer.

The Mother Agent is **not visible** within the workspace—it is a built-in Indigo.ai feature with a complex internal logic that cannot be modified or configured by users. However, if necessary, Indigo’s Customer Success team can adjust it in specific cases.

Behind the scenes, the Mother Agent operates through an advanced prompting system:

1. When a user sends a message, the Mother Agent ranks all available agents and workflows in the workspace based on relevance to the query.
2. It then chooses the most suitable agent or workflow by considering various factors, such as conversation context (previous messages) and triggers (explained below).
3. Once selected, the agent or workflow takes over and processes the response.

While its logic is intricate, the key takeaway is that the Mother Agent dynamically orchestrates interactions, allowing you to efficiently manage and control conversational flows with your users.

## 👂 Triggers

The Mother Agent determines virtual assistant behavior primarily based on triggers.

<figure><img src="/files/GuTuqDYRMiouGkQoT1bO" alt=""><figcaption></figcaption></figure>

**A trigger defines the conditions for activating an agent or workflow**. You can specify:

* Trigger Details: When the agent/workflow should activate.
* Example Questions: Sample user queries that would activate the agent/workflow.

{% hint style="warning" %}
If an agent or workflow has no defined trigger, it is invisible to the Mother Agent.
{% endhint %}

However, **not all agents or workflows need a trigger—only high-level agents or workflows require them.**

In essence, the Mother Agent assigns user queries to top-level agents, which can delegate tasks to secondary agents or workflows (without needing triggers). This layered approach ensures an organized, scalable, and efficient response process.

This may seem complex, but in reality, it’s quite straightforward. The best way to approach it is by thinking in terms of **conversation flow**: the main entry points and key topics that the virtual assistant handles should have a trigger, the supporting ones not.

That is why, to make this process easier, the first step in our AI Agents creation guide ([Build Your AI Agents](/build-your-ai-agents/define-your-virtual-assistants-objectives-and-design-the-conversational-flows.md)) is designing the conversation flow.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guide.indigo.ai/getting-started/agents-workflows-and-triggers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
