# AI Agent Composer

## Introduction

The AI Agent Management Panel is the central place to **create, configure, deploy, test and manage** AI agents in Autom Mate. Each agent is powered by a selected AI model and is automatically linked to an **Autom**, which defines the execution logic. After deployment, you can test your agent directly in the **Playground** before integrating it into a production workflow.

***

## Agents Page

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

The **Agents Page** is the entry point for managing all of your AI agents.

* **List View**: Displays all existing agents, showing:
  * Agent Name
  * Model Type (GPT-4, GPT-4o, GPT-4-turbo, o3-mini, etc.)
  * Status (Active / Inactive)
  * Last Updated date
* **Agent Actions**:
  * Click on an agent to view and edit its configuration.
  * Delete an agent if it is no longer required (confirmation needed).
* **Create Agent Button**: Located in the top-right corner. This button launches the agent creation form.

{% hint style="success" %}
**MSP or Multi-Tenant Usage**

This screen is designed for defining the agent at the global configuration level. If your system operates in **MSP Hub mode**, each agent must be assigned to a specific tenant or MSP organizational space.

This assignment is performed in a separate **Permissions** step during creation of technician. The agent’s access scope can be restricted to the assigned tenant.
{% endhint %}

***

## Creating an Agent

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

When you click **Create Agent**, you are taken to **Agent Details** page. Here, you define how the agent will operate.

#### Configuration Fields

* **Agent Name**: A required field where you define the display name of the agent. This name appears in dashboards, integrations, and the AI Composer list.
* **Selected Model**: Choose the AI model (e.g., GPT-4, GPT-4o, GPT-4-turbo, o3-mini).
  * A “More info” link provides how to add your OpenAI Credentials to the system to use in Agent.
* **Credentials**: Authentication details required for model access.
* **Temperature**: Controls randomness in responses (lower = consistent, higher = creative).
* **Role Prompt**: A role instruction that defines the agent’s role, tone, constraints, personality and behavior.
  * The prompt editor allows Markdown-style formatting (e.g., `# Role`, `## Instructions`, etc.).
  * You can choose from predefined templates using the **Prompt Preset Dropdown** (e.g., *Default Prompt*).
  * The **➕ button** allows adding a new custom prompt template.

#### Example Prompt

```
### Role - Primary Function
You are an AI assistant that helps users with inquiries, issues, and requests. 
Provide clear, friendly, and efficient responses.

### Constraints
1) Do not disclose internal data or training sources.  
2) Stay on topic; politely redirect off-topic questions.  
3) Answer only within provided context; otherwise, give a fallback response.  
4) Do not perform actions outside your defined role.  
```

#### Deployment

Click **Deploy** to activate the agent.

* This action **automatically creates an Autom** in the background.
* The Autom represents the agent’s workflow and can be accessed and modified later.

***

### Managing the Agent's Autom

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

After deploying an agent, you will see the option **Open Agent Autom**.

#### Autom View

The Autom View allows you to explore and modify the underlying automation that powers your AI Agent.

* Launches in a separate window for a dedicated editing experience.
* Displays the Autom flow that defines your agent’s logic and execution pipeline.
* Provides a visual interface to extend, modify, or debug how the agent processes inputs, integrates with data sources, or triggers actions.

> 💡 Tip: Be careful while using Autom View to fine-tune complex agent behaviors — such as chaining API calls, adding decision branches, or integrating advanced workflows — without affecting the main configuration. You can break the Agent logic and process.

#### Editing the Autom

<figure><img src="/files/24AF3h9XQH3TMh5Xnjmt" alt=""><figcaption></figcaption></figure>

* You may add, modify, or remove steps.
* Every change directly impacts how the agent responds.
* Incorrect modifications may break triggers or response logic.

{% hint style="danger" %}
Always test your Autom changes in Playground before using the agent in production.
{% endhint %}

#### Trigger Method

By default, the **Trigger Method is API**. This is how the Playground communicates with your agent. If you are not integrating with another chat interface, do not change this setting. If you do change it, Playground will no longer return responses.

***

## Playground — Real-Time Agent Testing

The **Playground** is the built-in test console for AI agents.

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

The **Playground** provides a **real-time testing environment** where you can interact with your AI Agent directly inside the Autom Mate platform. It allows users to simulate conversations, observe live streaming responses, and validate the agent’s behavior before deployment to production or external channels.

#### Interface Breakdown

<table><thead><tr><th width="194">Section</th><th>Description</th></tr></thead><tbody><tr><td><strong>Header Area</strong></td><td>Displays the current agent name (<em>e.g., Autom Mate Docs Agent</em>) and last updated time. It helps you confirm which configuration is active during testing.</td></tr><tr><td><strong>Tab Navigation</strong></td><td>Located under the header. You can switch between <code>Agent Details</code>, <code>Playground</code>, <code>Data Sources</code>, <code>Actions</code>, <code>Channels</code>, and <code>Logs</code>.</td></tr><tr><td><strong>Connection Status</strong></td><td>Indicates whether the playground is connected to the AI model backend:<br>- <strong>Connected</strong> → Agent ready for interaction.<br>- <strong>Disconnected</strong> → Chat unavailable until reconnection.<br>- The <strong>Reconnect (🔄)</strong> button refreshes the link.</td></tr><tr><td><strong>Export Chat History (⬇️)</strong></td><td>Downloads the full conversation log as a text file. Useful for documentation, debugging, or version comparison of prompts and outputs.</td></tr><tr><td><strong>Clear All Messages (🧹)</strong></td><td>Removes all chat content from the session window. This allows you to restart testing with a clean context without reloading the page.</td></tr><tr><td><strong>Main Conversation Panel</strong></td><td>The central area where the dialogue occurs. When no session is active, it displays the placeholder:<br>“<strong>Start a conversation</strong> — Send a message to test your agent’s capabilities with real-time streaming responses.”</td></tr><tr><td><strong>Chat Input Field</strong></td><td>Located at the bottom of the panel. Users can type prompts (up to 4000 characters) and send them using the <strong>Send (▶)</strong> button or by pressing <strong>Enter</strong>.</td></tr><tr><td><strong>Status Bar / Connection Warning</strong></td><td>Appears below the input field (e.g., <em>“Connection required”</em> in red). Indicates when chat input is disabled due to disconnection or server issues.</td></tr></tbody></table>

#### How to Use

{% stepper %}
{% step %}
Connect to the Agent

* Confirm the connection indicator shows **Connected**.
* If not, click the **Reconnect (🔄)** button to re-establish communication.
  {% endstep %}

{% step %}
Start a Conversation

* Enter a message in the text box (e.g., *“Summarize the release notes for version 5.0.0”*).
* Press **Enter** or click **▶**.
* The agent replies in real time using **streaming output**, letting you observe how it processes and constructs responses.
  {% endstep %}

{% step %}
Manage Conversations

* Use **Export (⬇️)** to save the conversation log locally for audits or QA.
* Use **Clear (🧹)** to delete all messages from the view and restart a clean session.
  {% endstep %}

{% step %}
Iterate Quickly

* Adjust prompts or parameters (like **temperature**) from the *Agent Details* tab.
* Return to **Playground** to instantly test how the new configuration behaves.
  {% endstep %}
  {% endstepper %}

#### What to Check

* **Accuracy**: Does the agent answer correctly?
* **Consistency**: Does it follow the role prompt across multiple queries?
* **Latency**: Are response times acceptable?
* **Role Adherence**: Does it stay within the defined behavior and constraints?

***

## **Data Sources – Managing Agent Knowledge Inputs**

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

The Data Sources tab enables the configuration of information sources that define an AI Agent’s knowledge base and reasoning context. Through this section, users can connect multiple data types such as uploaded documents, public websites, text entries, and integrated applications to provide the agent with structured and unstructured knowledge.

These data inputs directly influence the agent’s ability to deliver accurate, context-aware, and organization-specific responses. By enriching the agent’s accessible information, the Data Sources configuration ensures that the AI Agent can reason over domain-relevant data and generate responses aligned with business context and user intent.

<table><thead><tr><th width="151">Card</th><th>Description</th></tr></thead><tbody><tr><td><strong>Upload Files</strong></td><td>Allows you to upload files as the agent’s data source.</td></tr><tr><td><strong>Public Websites</strong></td><td>Adds external website content to the agent’s knowledge base.</td></tr><tr><td><strong>Applications</strong></td><td>Enables data import from connected third-party apps.</td></tr><tr><td><strong>Text</strong></td><td>Let you enter text manually to teach or enhance the agent’s context.</td></tr></tbody></table>

At the bottom, the **“All added data sources”** section lists every data item added. If no data has been added, an **empty state icon** appears with a short prompt message. A **Filters** button on the right allows users to filter and search through added data sources once multiple items exist (by type, name, or source origin).

<figure><img src="/files/5dvc9rEIZdJOGDZyXzDx" alt=""><figcaption></figcaption></figure>

***

### **Upload Files**

This option allows uploading files from the local system to enrich the agent’s knowledge.  Clicking the **Upload Files** card opens the **Upload File** modal window. In the center, a drag-and-drop area is displayed with the message:

> “Upload File or Drag & Drop File here”

Supported file formats are `pdf, doc, docx, txt, csv, pptx, json, md.`

Users can either choose a file manually using the “Choose File” button or drag and drop it directly.\
Once a file is selected, the **Finish** button becomes active.

#### How to Use

{% stepper %}
{% step %}
Click the **Upload Files** card.
{% endstep %}

{% step %}
Choose or drag-and-drop a file.
{% endstep %}

{% step %}
Click **Finish**.
{% endstep %}

{% step %}
The uploaded file appears in the “All added data sources” list below.
{% endstep %}
{% endstepper %}

Each file automatically integrates into the AI Agent’s RAG (Retrieval-Augmented Generation) pipeline for contextual responses.

> 💡 **Note:** Unsupported file formats trigger a user-friendly error notification.

***

### **Public Websites**

This feature allows the agent to learn from web-based content by adding website URLs.

Clicking the **Public Websites** card opens a modal titled **Public Website**. At the top, a URL input area labeled **Crawl Website** is displayed:

> `https:// [ Enter website URL ]`&#x20;

After entering a valid URL and clicking **Load**, the system scans the website. Detected links appear in a list below under:

> “All Links (0/10 selected)”

Users can select up to **10 links** to include as sources. Once selection is complete, the **Finish** button becomes active.

#### How to Use

{% stepper %}
{% step %}
Click **Public Websites**.
{% endstep %}

{% step %}
Enter the full URL of the site to be crawled. (e.g., docs.autommate.com)
{% endstep %}

{% step %}
Click **Load** to fetch the available pages.
{% endstep %}

{% step %}
Select the desired links (maximum of 10).
{% endstep %}

{% step %}
Click **Finish** to confirm.
{% endstep %}
{% endstepper %}

> 💡 **Tip:** For large sites, limit your input to specific pages to avoid long crawl times and unnecessary data noise. Also, only publicly accessible pages can be indexed (no login-required domains).

***

### **Applications (Third-Party Sources)**

The **Applications** option in the **Data Sources** tab allows you to **connect external platforms and enterprise tools** as live data sources for your AI Agent. By integrating with third-party systems such as Salesforce, ServiceNow, Jira, Xurrent, and others, your agent can **fetch, query, and reason over real-time business data** making responses more relevant, actionable, and context aware.

This feature turns your AI Agent from a passive responder into an **active automation component** within your ecosystem.

{% hint style="info" %}

#### Hints

* Each action defines **what the agent can do** inside an external system — for example, *“Create Customer Request in Jira Service Management”* or *“Fetch Knowledge Article from Xurrent.”*
* Credentials and input parameters ensure every action runs securely and correctly.
* Each application contains multiple **actions** that can be used as dynamic data endpoints.
* These integrations let your agent **access and retrieve structured data** directly from external systems like CRMs, ITSMs, and collaboration platforms.
  {% endhint %}

#### **Interface Overview**

<table><thead><tr><th width="189">Section</th><th>Description</th></tr></thead><tbody><tr><td><strong>Application Selector</strong></td><td>Displays a categorized list of integrated systems such as Salesforce, ServiceNow, Xurrent, and Jira.</td></tr><tr><td><strong>Action Library</strong></td><td>Each listed app includes available <strong>actions</strong> (e.g., <em>Get Record</em>, <em>List Tickets</em>, <em>Fetch Article</em>).</td></tr><tr><td><strong>Connect Button</strong></td><td>Opens a dialog to attach or create credentials for the selected action.</td></tr><tr><td><strong>Custom Action (+) - Coming Soon</strong></td><td>Enables defining your own API-based operation if it’s not pre-listed.</td></tr></tbody></table>

#### How to Use

{% stepper %}
{% step %}
Click **Applications**.

You’ll see the available systems and their actions.
{% endstep %}

{% step %}
A list of available integrations appears, choose the desired action.

Example, *“Fetch Knowledge Article to Markdown”* from Xurrent is selected.
{% endstep %}

{% step %}
Connect Credentials

You must link a credential to authenticate the selected action.

**Options:**

* **Select from Existing Credential:** Choose from previously stored credentials (e.g., *Mainline*).
* **Add New Credential:** Create a new connection using valid API keys or authentication tokens.

Once selected, click **Save** to bind the credential.

> 🔒 **Security Note:** Credentials are securely stored and encrypted within Autom Mate Vault module. Only users with appropriate access can manage or modify them.
> {% endstep %}

{% step %}
Configure the Action

After connecting, configure the key attributes:

<table><thead><tr><th width="147">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Inputs</strong></td><td>Defines required parameters the action needs to function (e.g., <em>Request Type ID</em>, <em>Service Desk ID</em>). Each input includes a <strong>type</strong> and <strong>required</strong> flag.</td></tr></tbody></table>
{% endstep %}

{% step %}
Save and Verify

Click **Save** once configuration is complete.
{% endstep %}
{% endstepper %}

***

### **Text (Manual Entry)**

This feature enables users to add textual information directly to train the AI Agent.

Selecting the **Text** card opens the **Add Text** window. It contains a simple, editor-style input area supporting basic formatting options:

* Bold (**B**)
* Italic (*I*)
* Lists (• / 1.)
* Links 🔗
* Emoji 😊

Up to **2000 characters** can be entered. Once complete, the **Finish** button saves the entry.

#### **Workflow**

1. Click the **Text** card.
2. Type the desired content in the input area.
3. Use formatting tools if necessary.
4. Click **Finish** to save.

The entered text is then indexed into the agent’s vector knowledge base and becomes retrievable during query sessions.

> 💡 **Note:** Use this method for short, frequently updated or contextual information — not large documents.

#### **Data Management & Listing**

Once added, each data source appears in the lower list labeled:

> “All added data sources”

Each entry displays:

* Data type (File, Website, Text)
* Upload date
* Status

If no items exist, an empty-state icon with a neutral message is shown.

***

## **Actions –** Defining What Your Agent Can Do

The **Actions** section defines what the AI Agent can *do* — its functional capabilities.\
These are API-based or app-based operations that the agent can execute when responding to user queries, such as **creating a Jira issue**, **sending a Slack message**, or **retrieving customer data**.

Actions transform your agent from a conversational interface into a **fully functional automation layer** that can take contextual decisions and execute them.

#### **Interface Overview**

<table><thead><tr><th width="192">Section</th><th>Description</th></tr></thead><tbody><tr><td><strong>Header Bar</strong></td><td>Displays your agent name, last update timestamp, and action count (e.g., <em>1/20 Actions</em>).</td></tr><tr><td><strong>Add Action Button (+)</strong></td><td>Opens the configuration window to create a new action.</td></tr><tr><td><strong>Actions List</strong></td><td>Displays all configured actions with details such as name, creation date, and status.</td></tr><tr><td><strong>Action Limit</strong></td><td>Each agent supports up to <strong>20 actions</strong>.</td></tr><tr><td><strong>Status Indicator</strong></td><td>Shows whether an action is ready, in progress, or has a configuration issue.</td></tr><tr><td><strong>Edit/Delete Controls</strong></td><td>Allows modifying or removing actions at any time.</td></tr></tbody></table>

***

{% hint style="info" %}

#### Hint

* Write a **When to Use** description that maps user intents to system actions — this improves AI understanding.
* For sensitive or high-impact tasks (e.g., *Delete Record*), set **Action Run Method = Supervised**.
* Test each new action through the **Playground tab** to verify correct execution.
* Keep total actions under **20 per agent** to optimize performance and reasoning accuracy.
  {% endhint %}

***

### **Adding a New Action**

To define a new action, click the **+ Add Action** button.\
This opens the **Add Action** wizard — a step-by-step modal that guides users through creating an action.

{% stepper %}
{% step %}

#### **Choose Application or Action Type**

The first screen lists available **integrations** (applications) and their ready-to-use actions.\
Each application card shows its logo, name, and the number of actions available — for example:

| App              | Available Actions |
| ---------------- | ----------------- |
| Salesforce       | 6                 |
| Stripe           | 9                 |
| Endpoint Central | 21                |
| Twilio           | 6                 |
| ServiceNow       | 16                |
| Datto RMM        | 4                 |
| GitLab           | 7                 |
| Lakeside         | 1                 |
| AFAS             | 3                 |
| Azure DevOps     | 5                 |

At the top, there is also a **Custom Action** button for defining manual API calls. This feature coming with next releases.
{% endstep %}

{% step %}

#### **Select the Action**

After selecting an application (e.g., *Jira Service Management*), a grid of available actions is displayed — such as:

* Add Attachment
* Add Comment
* Create Issue
* Delete Issue
* Get Issue
* Update Issue
* HTML ↔ Jira Markdown Converters
  {% endstep %}

{% step %}

#### **Connect Credentials**

Before configuring inputs, the system requires authentication. If no credential is linked, the agent cannot perform the action. Below that, the selected operation (e.g., *Create Issue*) appears, followed by a credential selector.

Two options are provided:

* **Select from Existing Credential** → choose an available API connection (e.g., “Test User”)
* **Add New Credential** → define a new connection (e.g., by entering an API key or OAuth token)

Once a credential is selected, click **Save**, then **Next** to continue.

🔐 **Note:** Credentials are securely stored and managed by Autom Mate Vault. Users must have the correct permissions to add or modify credentials.
{% endstep %}

{% step %}

#### **Define Action Details**

This step lets the user describe the action and define its behavior.

Fields include:

<table><thead><tr><th width="143">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Action Name</strong></td><td>The descriptive title for the action (e.g., <em>Create Issue</em>). This helps the agent recognize when to use it.</td></tr><tr><td><strong>When to Use</strong></td><td>A plain-text explanation describing when the AI should trigger this action. The description should include purpose, context, and sample prompts.</td></tr><tr><td><strong>Inputs</strong></td><td>Defines the parameters the action needs (explained in the next step).</td></tr><tr><td><strong>Action Response Settings - Action Run Method</strong></td><td><p>Controls whether the agent executes the action automatically or with user approval. </p><p>Options:</p><ul><li>Supervised – requires human confirmation before execution.</li><li>Unsupervised – runs automatically when triggered.</li></ul></td></tr></tbody></table>

All required fields are marked with \* (asterisk). Clicking **Next** or expanding **Inputs** leads to input mapping.
{% endstep %}

{% step %}

#### **Configure Inputs**

The **Inputs** section allows defining the parameters that the action requires.\
For example, a “Create Issue” action might need:

* `project_key`
* `summary`
* `description`
* `priority`

To add input, click **+ Add** → a new input pop-up appears where you can define required input.
{% endstep %}

{% step %}

#### **Configure Response Settings**

Below the input list, you’ll find **Action Response Settings**, which define how the AI should handle the output.

<table><thead><tr><th width="158">Option</th><th>Description</th></tr></thead><tbody><tr><td><strong>Action Run Method</strong></td><td>Determines how the action executes — currently supports:<br>🔹 <em>Supervised</em> (requires confirmation before running)<br>🔹 <em>Unsupervised</em> (executes automatically when conditions are met).</td></tr></tbody></table>

Additional fields (like response formatting) will appear dynamically depending on the application type.
{% endstep %}

{% step %}

#### **Save the Action**

Once all configurations are complete, click **Save**.\
The action now appears under the main **Actions Added** list with:

| Column          | Example             |
| --------------- | ------------------- |
| **Action Name** | Create Issue        |
| **Added On**    | Oct 07, 2025, 12:42 |
| **Status**      | Ready               |

Each action can later be:

* **Edited** (to update configuration)
* **Deleted** (to remove it completely)
  {% endstep %}
  {% endstepper %}

***

**Example Use Case**

**Scenario:**\
A support team wants the AI Agent to create Jira tickets when users report issues in chat.

**Steps**

{% stepper %}
{% step %}
Create an action → select *Jira Service Management*.
{% endstep %}

{% step %}
Choose **Create Issue**.
{% endstep %}

{% step %}
Connect a Jira credential.
{% endstep %}

{% step %}
Define inputs → `summary`, `description`, `priority`.
{% endstep %}

{% step %}
Describe usage: “When the user says they encountered a bug, create a Jira issue automatically.”
{% endstep %}

{% step %}
Select Action Run Method
{% endstep %}

{% step %}
Save the action.
{% endstep %}
{% endstepper %}

Now, when the agent detects a related query, it will call the Jira API and create the issue automatically.

Once configured, your agent can dynamically trigger these actions in real time based on user intent — seamlessly interacting with business systems, creating records, fetching data, or executing automations on your behalf.

> 💡 **Example:**\
> “Create a support request for a VPN issue.”\
> → The agent recognizes the intent, calls **Create Customer Request**, fills required fields, and executes it (supervised or automatically, based on configuration).

#### **Troubleshooting**

<table><thead><tr><th width="215">Issue</th><th width="230">Possible Cause</th><th>Solution</th></tr></thead><tbody><tr><td><strong>Next button disabled</strong></td><td>No credential connected</td><td>Connect an existing or new credential</td></tr><tr><td><strong>Action not triggering</strong></td><td>“When to Use” missing or unclear</td><td>Provide a precise condition or trigger intent</td></tr><tr><td><strong>Error 401 / Unauthorized</strong></td><td>Invalid credential or expired token</td><td>Reauthenticate or update credentials in Vault</td></tr><tr><td><strong>Action fails silently</strong></td><td>Missing required input values</td><td>Verify that all “Required” parameters are mapped</td></tr></tbody></table>

***

## **Channels – Connecting the AI Agent to Communication Platforms**

The **Channels tab** allows you to deploy your AI Agent across multiple communication platforms, enabling it to interact with users wherever they work or communicate.\
Agents can be embedded in websites, connected to messaging platforms like **WhatsApp** and **Microsoft Teams**, or exposed via **Webhook endpoints** for integration with other systems.

Each channel provides a secure and configurable bridge between Autom Mate’s orchestration layer and external environments.

***

#### **Interface Overview**

<table><thead><tr><th width="220">Element</th><th>Description</th></tr></thead><tbody><tr><td><strong>Channel Cards</strong></td><td>Each supported channel is represented as a tile with an icon, description, and a <strong>Setup</strong> or <strong>Configure</strong> button.</td></tr><tr><td><strong>Available Channels</strong></td><td>WhatsApp · Microsoft Teams · Mate Chat · Webhook</td></tr><tr><td><strong>Status Indicators</strong></td><td>- 🟢 <em>Green background</em>: Active and connected<br>- ⚪ <em>White background</em>: Not configured</td></tr><tr><td><strong>Setup / Configure Buttons</strong></td><td>Used to initiate new connections or modify existing ones</td></tr><tr><td><strong>Remove (–)</strong></td><td>Disconnects the channel and clears its credential link</td></tr></tbody></table>

### **WhatsApp Integration**

Connecting your AI Agent with **WhatsApp Business** enables automated conversations through WhatsApp chats. Once connected, messages received on the linked WhatsApp account are automatically processed by the agent in real time, allowing seamless customer or internal support interactions.

**Setup Process:**

{% stepper %}
{% step %}
**WhatsApp Integration Setup**

* Displays the Webhook URL to be configured in the Meta Business Developer Console:

  ```ruby
  https://aut.autommate.app/api/v1/automs/run/{autom_id}?apiKey={api_key}
  ```
* Includes a link to [**View Complete Installation Guide**](https://community.autommate.com/t/meta-whatsapp-business-api-autom-mate-integration-directory/59).
* Describes integration prerequisites (WhatsApp Business Account, verified number, API credentials).
  {% endstep %}

{% step %}
**Connect Credential**

* Choose one of:
  * **Select from Existing Credential** – pick a preconfigured WABA credential.
  * **Add New Credential** – create a new one using WhatsApp Cloud API keys.
* After saving, the card turns green and becomes **Configurable**.
  {% endstep %}
  {% endstepper %}

The agent can now respond to WhatsApp messages using the connected WABA account.

> 💡 **Tip:** You must have a WhatsApp Business API or Meta-verified account already configured in Autom Mate before enabling this channel.

***

### **Microsoft Teams Integration**

This integration enables the AI Agent to operate inside Microsoft Teams. Once connected, users can interact with the agent directly through Teams chats or channels — ideal for enterprise environments that already use Teams as their internal communication hub.

**Setup Process:**

{% stepper %}
{% step %}
**MS Teams ChatBot Installation**

* Provides a Webhook endpoint for Azure Bot configuration:

  ```
  https://aut.autommate.app/api/v1/automs/run/{autom_id}?apiKey={api_key}
  ```
* Guides the user to set this URL in the Azure Bot messaging endpoint field.
* Offers a **View Complete Installation Guide** for setup instructions.
  {% endstep %}

{% step %}
**Connect Credential**

* Options:
  * **Select from Existing Credential** – link to an existing Azure Bot configuration.
  * **Create New Credential** – register a new one for the Teams environment.
* Once completed, the Teams card becomes **Configured** (green).
  {% endstep %}
  {% endstepper %}

> 💡 **Tip:** The bot must be registered in **Azure Active Directory** and configured as **Multi-Tenant** in the Azure portal to enable organization-wide or cross-tenant access.

***

### **Mate Chat (**&#x57;eb Embed Widge&#x74;**)**

Embed your AI Agent directly on your website through the **Mate Chat widget**, enabling visitors to chat with the agent in real time.

**Setup Tabs**

<table><thead><tr><th width="142">Tab</th><th>Purpose</th></tr></thead><tbody><tr><td><strong>API Keys</strong></td><td>View and manage <strong>Public</strong> and <strong>Private keys</strong> for widget authentication.<br>⚠️ <em>Never expose the private key on client-side code.</em></td></tr><tr><td><strong>CORS Domains</strong></td><td>Define whitelisted domains where the widget can be embedded.<br>Wildcards (e.g. <code>*.example.com</code>) are supported.</td></tr><tr><td><strong>Embed Script</strong></td><td>Provides a ready-to-copy script snippet to paste into your website’s HTML.<br>Must be placed just before the closing <code>&#x3C;/body></code> tag.</td></tr><tr><td><strong>Settings</strong></td><td>Customize the widget’s visual style, content, and operational limits.</td></tr></tbody></table>

***

**Settings Tab Details**

<table><thead><tr><th width="193">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Primary Color</strong></td><td>Sets the widget’s accent color (e.g., <code>#4F6E90</code>).</td></tr><tr><td><strong>Agent Name</strong></td><td>Display name for the chat widget header.</td></tr><tr><td><strong>Welcome Message</strong></td><td>Default greeting message displayed when the chat opens.</td></tr><tr><td><strong>Logo URL</strong></td><td>(Optional) URL to display a logo in the chat header.</td></tr><tr><td><strong>Widget Position</strong></td><td>Choose widget placement: <em>Bottom Right</em> / <em>Bottom Left</em>.</td></tr><tr><td><strong>Rate Limiting</strong></td><td>Configure concurrency and throughput caps:<br>• <strong>Max Concurrent Sessions:</strong> Number of simultaneous chat users (e.g., 15)<br>• <strong>Max Requests per Minute:</strong> API call limit (e.g., 1000).</td></tr><tr><td><strong>Save Changes / Reset</strong></td><td>Apply or revert customization settings.</td></tr></tbody></table>

***

**Embed Script Example**

```html
<!-- Mate Chat Widget -->
<script>
  (function() {
    var s = document.createElement('script');
    s.src = "https://aut.autommate.app/ai/widget.js";
    s.setAttribute('data-agent-key', 'pk_live_xxxxxxxx');
    s.async = true;
    document.head.appendChild(s);
  })();
</script>
```

**Installation Steps:**

{% stepper %}
{% step %}
Copy the embed script.
{% endstep %}

{% step %}
Open your site’s HTML file.
{% endstep %}

{% step %}
Paste before the closing `</body>` tag.
{% endstep %}

{% step %}
Save and publish your site.
{% endstep %}

{% step %}
The widget bubble appears automatically at the chosen position
{% endstep %}
{% endstepper %}

***

### **Webhook Integration**

Expose your agent as a **programmable API endpoint** that can receive and respond to HTTP POST requests.

**Setup Process**

Displays the agent’s unique Webhook configuration, including request details and an example payload.

<table><thead><tr><th width="157">Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Webhook URL</strong></td><td>Endpoint used to send messages to the agent: <code>https://aut.autommate.app/api/v1/automs/run/{autom_id}?apiKey={api_key}</code></td></tr><tr><td><strong>HTTP Method</strong></td><td><code>POST</code></td></tr><tr><td><strong>Content-Type</strong></td><td><code>application/json</code></td></tr><tr><td><strong>Payload Example</strong></td><td>{<br>"message": "Hello",<br>"userId": "user123",<br>"sessionId": "session123"<br>}</td></tr></tbody></table>

> 💡 **Example Use Case:**\
> An alerting system can automatically trigger the agent when a critical event occurs. The agent can analyze the input, create a ticket via **Actions**, and respond with remediation steps — all through the Webhook connection.

***

#### Channel States

<table><thead><tr><th width="150">Status</th><th width="260">Appearance</th><th>Description</th></tr></thead><tbody><tr><td><strong>Inactive</strong></td><td>White card, “Setup” button</td><td>Channel not configured yet</td></tr><tr><td><strong>Active</strong></td><td>Green card, “Configure” button</td><td>Channel successfully connected</td></tr><tr><td><strong>Removable</strong></td><td>Red “–” icon visible</td><td>Allows manual channel disconnection</td></tr><tr><td><strong>Reconfigurable</strong></td><td>Configure modal accessible</td><td>Edit settings, credentials, or keys</td></tr></tbody></table>

***

## **Logs –** Monitor Agent Conversations & Execution

The **Logs tab** provides full visibility into the conversations, decisions, and actions executed by your AI Agent. It serves as a **real-time audit trail** — allowing administrators and developers to review how the agent interpreted prompts, executed automations, and interacted with users or external systems.

This area is critical for **debugging**, **compliance tracking**, and **continuous improvement** of agent reasoning and action mapping.

***

#### **Interface Overview**

<table><thead><tr><th width="191">Section</th><th>Description</th></tr></thead><tbody><tr><td><strong>All Logs Panel (Left Sidebar)</strong></td><td>Displays a list of all recorded conversations session by session between the AI Agent and users. Each entry shows:<br>• Conversation title (based on initial user message)<br>• Initiator name (e.g., <em>administrator</em>)<br>• Date<br>• Message count</td></tr><tr><td><strong>Conversation Thread (Main Panel)</strong></td><td>Shows the full message exchange between the user and agent, in chronological order, including timestamps and confidence scores.</td></tr><tr><td><strong>Reasoning Expander</strong></td><td>Each agent response can be expanded to show internal reasoning and AI decision confidence metrics.</td></tr><tr><td><strong>Confidence Indicator (Green Bar)</strong></td><td>Displays the model’s confidence score (e.g., <strong>0.98</strong>) for each agent message — helping assess reasoning reliability.</td></tr><tr><td><strong>Action Indicator / Error Flag</strong></td><td>Displays icons indicating when an action was executed, failed, or required user input (e.g., ⚠️ for validation errors).</td></tr><tr><td><strong>Top Bar Controls</strong></td><td>Contains key utilities for log management:<br>• <strong>Filters</strong> – refine logs by date, show only flagged messages, and filter by confidence score<br>• <strong>Open in Autom Builder</strong> – directly open related automs for debugging<br>• <strong>Refresh</strong> – reloads latest logs<br>• <strong>Export</strong> – exports conversation history as a file</td></tr></tbody></table>

***

#### **Conversation Flow Example**

<table><thead><tr><th width="40">Step</th><th width="221">User Message</th><th width="227">Agent Response</th><th>Notes</th></tr></thead><tbody><tr><td><strong>1</strong></td><td>“create me a ticket that the subject is my computer is not working”</td><td>“Creating a ticket with the subject <em>‘my computer is not working’</em> requires approval. Would you like me to proceed?”</td><td>The agent interprets intent and requests confirmation.</td></tr><tr><td><strong>2</strong></td><td>“yes”</td><td><em>(Action triggered)</em> — Agent begins to create the request.</td><td></td></tr><tr><td><strong>3</strong></td><td><em>(System error occurs)</em></td><td>“I tried to create the ticket, but there was an error with the category. Could you please specify the correct category?”</td><td>Agent reports validation issue and requests clarification.</td></tr><tr><td><strong>4</strong></td><td>“what happened”</td><td>Agent clarifies the previous failure reason.</td><td></td></tr></tbody></table>

***

#### **Using the Logs Screen**

1. Interact with your AI Agent via **Playground**, **WhatsApp**, **Microsoft Teams**, or **Webhook**.
2. Each message exchange is automatically recorded and listed in the **All Logs** panel.
3. Select a conversation to view its message history in the right-hand panel.
4. Use **Refresh** to update the list in real time, or **Export** to download logs for review

The **Logs tab** provides a unified, searchable history of all agent conversations — complete with message flow, reasoning transparency, and performance analytics.\
It’s your agent’s **control room** for understanding, debugging, and continuously improving how Autom Mate’s AI orchestrates real-world automations.

> 💡 *Example:*\
> You can review how the agent handled a failed Jira ticket creation, view the reasoning path, confidence level, and action payload — then instantly open the related Autom in Autom Builder to fix the root cause.

## **Additional Tips**

### **Use Case: AI-Powered IT Help Desk Automation with Autom Mate AI Agent Composer**

{% embed url="<https://www.youtube.com/watch?v=80reQ4Y1w9M>" %}

This use case demonstrates how Autom Mate’s **AI Agent Composer** can transform traditional IT support workflows into fully automated, intelligent, and supervised operations.\
By combining **AI reasoning**, **knowledge integration**, and **real-world automation skills**, the IT Help Desk can handle issue creation, categorization, and ticket submission autonomously — freeing human teams for higher-value work.

***

#### **Problem Statement**

Traditional chatbots in IT operations can only provide predefined answers.\
They lack the ability to:

* Understand user intent deeply
* Execute actions across enterprise systems
* Learn and adapt through context
* Operate within secure, auditable boundaries

As a result, IT teams spend time on repetitive ticket management, password resets, and routine service requests that could be safely automated.

***

#### **Solution**

Using **Autom Mate AI Agent Composer**, organizations can design and deploy an **AI Help Desk Agent** capable of:

* Understanding natural language user requests
* Retrieving internal knowledge for accurate responses
* Executing automated workflows in systems like Jira, Azure, or Salesforce
* Operating in supervised or autonomous modes depending on compliance requirements

This transforms the AI from a passive chatbot into an **active, digital workforce member**.

***

#### **Steps**

#### 1. Define the Agent Role

Create a new AI agent in Autom Mate and define its role — e.g., *IT Help Desk Agent*.\
Assign a clear purpose and tone using a prompt such as:

> “You are a professional IT support assistant responsible for creating, updating, and managing service requests.”

This defines the agent’s boundaries and personality for every interaction.

***

#### 2. Provide Knowledge

Enhance the agent’s expertise by adding organization-specific knowledge:

* Upload internal troubleshooting guides or FAQs
* Connect to relevant IT service documentation or portals
* Include plain-text descriptions of escalation processes

This ensures that every answer reflects your own policies and systems — not generic internet information.

***

#### 3. Assign Skills

Grant your agent actionable skills through Autom Mate’s integration library, for example:

* **Create Jira Ticket**
* **Reset Azure Password**
* **Provision Salesforce User**

In this scenario, the *Create Jira Ticket* skill is used to enable the agent to generate and manage incidents directly within Jira.

***

#### 4. Deploy Across Channels

Once configured, deploy the agent where users interact daily:

* **Microsoft Teams** – for internal support
* **WhatsApp or Web Chat** – for customer service portals
* **API Webhooks** – for external systems or applications

The agent becomes available wherever requests originate.

***

#### 5. Supervise and Improve

Activate **Supervised Mode** to ensure safe operation:

* The agent gathers required data and proposes an action
* It pauses for approval before executing
* All reasoning and steps are visible in **Logs** for audit and optimization

This approach builds operational trust before moving to full autonomy.

***

#### Example Scenario

**User Interaction:**

> “Create me a ticket. My computer is not turning on.”

**Agent Response:**

1. Understands intent and identifies the action as *Create Jira Ticket*.
2. Requests necessary inputs (project, issue type, summary, description).
3. Summarizes the planned action for confirmation.
4. Waits for user approval (supervised mode).
5. Executes the action, confirms creation, and provides the Jira ticket number.

**Outcome:**\
A complete end-to-end IT service request process completed through a single chat interaction — securely logged and traceable.

***

#### **Benefits**

<table data-header-hidden><thead><tr><th width="152">Category</th><th>Value</th></tr></thead><tbody><tr><td><strong>Efficiency</strong></td><td>Automates repetitive tasks like ticket creation and categorization.</td></tr><tr><td><strong>Accuracy</strong></td><td>Reduces manual entry errors through guided AI workflows.</td></tr><tr><td><strong>Scalability</strong></td><td>Handles unlimited concurrent requests across multiple channels.</td></tr><tr><td><strong>Transparency</strong></td><td>Supervised mode with detailed logs ensures auditability.</td></tr><tr><td><strong>User Experience</strong></td><td>Delivers instant, conversational IT support.</td></tr></tbody></table>

In just minutes, the IT Help Desk agent evolves from a simple chatbot into a **fully functional digital team member** capable of orchestrating cross-system workflows. This use case demonstrates how Autom Mate’s **AI Agent Composer** enables the shift from static automation to **dynamic, intelligent operations** — where human expertise and AI autonomy work together seamlessly.

***

### How to create Custom Data Source Autom (RAG Autom)

This Autom orchestrates all data-source operations for the AI Agent — file uploads, text entries, website crawling, app integrations, and deletions — through a unified **RAG (Retrieval-Augmented Generation) pipeline**. Whenever a user interacts with the **Data Sources** tab, this Autom is triggered and processes the corresponding workflow branch based on `##triggerParam[type]##`.

***

#### Architecture Overview

```
TRIGGER → START → IF (event == "agent_rag")
        └── Rag Group
              └── SWITCH (##triggerParam[type]##)
                    ├── file        → File upload & embedding verification
                    ├── text        → Manual text input
                    ├── crawl_url   → Website discovery (link listing)
                    ├── crawl       → Website content processing
                    ├── app         → External app data (e.g., Xurrent)
                    └── delete      → Vector store deletion
```

***

#### 1️. Entry Layer

🔹 **Trigger**&#x20;

The trigger initiates this Autom whenever an AI Agent data-source event occurs. Example payload:

```json
{
  "event": "agent_rag",
  "type": "file",
  "file": {
    "file_name": "manual.pdf",
    "content": "base64_encoded_string"
  }
}
```

> The Autom then routes execution to the appropriate case depending on `type` (file, text, crawl, app, delete).

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

***

🔹 **IF** *(Action Library: CONDITION)*

Condition:\
`##triggerParam[event]## == "agent_rag"`

> Ensures the Autom only executes for RAG-related events, preventing unnecessary or accidental triggers.

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

***

#### 2️. Rag Group

The Rag Group acts as the central orchestrator for all RAG data-handling workflows. Each data type is processed as an isolated case within this group.

**Action Libraries Used:**\
`CONDITION`, `BASE64`, `STRING`, `ARRAY`, `PYTHON`, `FLOW`, `XURRENT`

***

#### 3️. Case: `file` — File Upload

This case manages files uploaded through the AI Agent interface. Files arrive in Base64 format and must be decoded, written to the local environment, and tracked until their embeddings are fully processed.

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

***

**3.1 File Upload Sequence**

**Action Steps:**

1. STRING → ASSIGN
   * Input: `##triggerParam[file][file_name]##`
   * Output: `file_name`\
     → Extracts and stores the file name dynamically.
2. BASE64 → DECODE
   * Base64 Code: `##triggerParam[file][content]##`
   * Folder Path: `mate:/`
   * File Name: `##file_name##`
   * Output Variable: `file_md_path`\
     → Decodes Base64 data and writes the physical file into Autom Mate’s local directory.
3. ARRAY → ADD
   * Array: `##file_md_paths##`
   * Item: `{"file_name":"##file_name##","file_path":"##file_md_path##"}`\
     → Keeps track of uploaded file paths for later embedding and indexing.

***

**3.2 Status Verification Group —&#x20;*****“Check Status Loop”***

Once a file is uploaded, it is asynchronously embedded into the vector store (e.g., OpenAI). This Check Status Loop ensures the Autom waits until the embedding is complete before returning a success response.

**Group Logic**

1. REST API (GET) — *Status Check*
   * Endpoint: `https://api.openai.com/v1/vector_stores/files/##vector_file_id##`
   * Output Variable: `status_response`\
     → Fetches the current embedding status (`in_progress`, `complete`).
2. TEXT → EQUALS CHECK
   * Condition: `##status_response[status]## == "complete"`\
     → If not complete, continues looping.
3. TIME → WAIT
   * Wait Time: \~3–5 seconds\
     → Introduces delay to reduce API load.
4. Nested Group: “status equals complete”
   * ARRAY → ADD → Adds finished file to `completed_files`.
   * FLOW → BREAK → Exits loop.

> This logic guarantees that no file is reported as “uploaded” until its embeddings are fully indexed in the vector store.

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

***

**3.3 Completion Response**

<sub>FLOW → STOP & RETURN</sub>

```json
{
  "status": true,
  "message": "File(s) uploaded and indexed successfully",
  "files": ##completed_files##
}
```

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

***

#### 4️. Case: `text` — Manual Text Entry

Handles direct text inputs added via the “Text” card. The text is encoded, written to file, and integrated into the RAG knowledge base.

Libraries Used: STRING, BASE64, ARRAY

**Sequence:**

1. `STRING → file_name`
2. `STRING → text_data`
3. `BASE64 → ENCODE` → `b64_code`
4. `BASE64 → DECODE` → Creates `.md` file
5. `ARRAY → ADD` → Appends to `file_md_paths`

> This process turns short manual entries into retrievable Markdown files for the AI Agent.

<figure><img src="/files/0T2UrZrrrYYuydUViRja" alt=""><figcaption></figcaption></figure>

***

#### 5️. Case: `crawl_url` — Website Discovery

Triggered when the user clicks “Load Links” in the “Public Website” card. Discovers internal pages of a specified domain.

Library: PYTHON

**Script Functionality:**

* Fetches the root webpage with `requests`
* Parses `<a href>` tags using BeautifulSoup
* Filters internal links belonging to the same domain
* Outputs the list into the variable `urls`

**Output Example:**

```json
{
  "status": true,
  "urls": [
    "https://docs.autommate.com/start",
    "https://docs.autommate.com/userguide"
  ]
}
```

> This prepares the next case (“crawl”) to process content from those URLs.

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

***

#### 6️. Case: `crawl` — Website Content Processing

Uses the discovered links to retrieve each page’s content, converts it into Markdown, and stores it for vector indexing.

Library: PYTHON

**Script Workflow:**

* Iterates through `##triggerParam[urls]##`
* Fetches each HTML page
* Strips unnecessary tags
* Converts clean text to Markdown
* Saves to `mate:/`
* Updates `file_md_paths` list

> Each crawled page becomes a new Markdown knowledge file for the AI Agent.

***

#### 7️. Case: `app` — External Applications (Xurrent Example)

This case connects Autom Mate to third-party systems like Xurrent, ServiceNow, or Jira using Action Libraries instead of manual REST calls.

<figure><img src="/files/3aGaS3ZNqEeZZAkBAl1i" alt=""><figcaption></figcaption></figure>

***

**7.1 Identify App Action**

**STRING → ASSIGN**\
`##triggerParam[action_id]##_##triggerParam[unique_id]##` → `app_action`

> Combines identifiers to determine which prebuilt Action Library to execute.

***

**7.2 SWITCH (##app\_action##)**

Manages multiple app-specific actions. Currently active example:&#x20;

📘 **Xurrent – Fetch Knowledge Article to Markdown**

***

**7.3 Action Library: Xurrent – Fetch Knowledge Article to Markdown**

A prebuilt Action Library that fetches knowledge articles directly from Xurrent. No manual REST configuration is required — only credentials and parameters.

**Configuration Fields**

<table><thead><tr><th width="185">Field</th><th width="98">Type</th><th>Description</th></tr></thead><tbody><tr><td><strong>App Credential</strong></td><td>Required</td><td>Defines which Xurrent account or token to use. Example: <code>44ME</code>.</td></tr><tr><td><strong>Knowledge Article ID</strong></td><td>Required</td><td>Select or manually enter the target article. Example: <code>(Re)Installation of the Vanta Agent</code>.</td></tr><tr><td><strong>Output</strong></td><td>Required</td><td>Output variable for Markdown content. Example: <code>FetchKnowledgeArticleToMarkdown</code>.</td></tr></tbody></table>

**Execution Logic**

1. Authenticates via selected credential.
2. Fetches the chosen article content from Xurrent.
3. Converts it to Markdown format.
4. Saves the result into the `FetchKnowledgeArticleToMarkdown` variable.
5. Adds it to the AI Agent’s knowledge list (`file_md_paths`).

> This demonstrates Autom Mate’s **Action Libraries** framework — providing pre-integrated, no-code connectivity to enterprise systems.

***

#### 8. Case: `delete` — Vector Store Deletion

Removes files previously indexed in the vector store.

Action Library: REST API (DELETE)

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

<table><thead><tr><th width="96">Field</th><th>Value</th></tr></thead><tbody><tr><td><strong>URI</strong></td><td><code>https://api.openai.com/v1/vector_stores/##triggerParam[vector_store_id]##/files/##repeat_string##</code></td></tr><tr><td><strong>Headers</strong></td><td>Authorization: Bearer ##token##, OpenAI-Beta: ##openai_header##</td></tr></tbody></table>

**Response Example:**

```json
{
  "status": true,
  "message": "File(s) deleted successfully"
}
```

***

#### Summary

This Autom unifies all data-source operations into a single, intelligent RAG pipeline.

<table><thead><tr><th width="140">Operation</th><th>Description</th></tr></thead><tbody><tr><td><strong>File</strong></td><td>Decodes uploads, tracks embedding status, confirms completion</td></tr><tr><td><strong>Text</strong></td><td>Converts short entries into retrievable Markdown files</td></tr><tr><td><strong>Crawl_URL</strong></td><td>Discovers domain links for later ingestion</td></tr><tr><td><strong>Crawl</strong></td><td>Extracts and transforms website content into Markdown</td></tr><tr><td><strong>App (Xurrent)</strong></td><td>Retrieves external knowledge articles via Action Libraries</td></tr><tr><td><strong>Delete</strong></td><td>Removes indexed files from the vector store</td></tr></tbody></table>

Each step is implemented with Autom Mate Action Libraries, eliminating manual REST configuration and ensuring a secure, maintainable, and reusable RAG foundation for the AI Agent.

***Here is the example Autom***

{% file src="/files/CFhpombaKgCeJRhJHgpi" %}


---

# 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://docs.autommate.com/userguide/product-features/ai-agent-composer.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.
