---
"@context": https://schema.org
"@type": TechArticle
"@id": https://www.twilio.com/docs/ai/ola/concepts#article
headline: Ola concepts
description: ""
url: https://www.twilio.com/docs/ai/ola/concepts
inLanguage: en
dateModified: 2026-10-05T19:07:43.000Z
author:
  "@type": Organization
  name: Twilio Developer Education Team
publisher:
  "@type": Organization
  name: Twilio
---

# Ola concepts

> \[!NOTE]

Ola provides the communication and trust layer that lets you delegate more to your AI agents.
Through Ola, you can talk to agents, set the agents' boundaries, and approve the agent's actions across mobile and desktop.

Each agent you connect gets a conversation thread. Four things arrive:

| What arrives  | What it is                                            | Your response       |
| ------------- | ----------------------------------------------------- | ------------------- |
| **Inform**    | An update. "Started searching for flights"            | None                |
| **Collect**   | A request for input. "Which of these three options?"  | Complete and submit |
| **Authorize** | A request to act. "Purchase the 8:40am United flight" | Approve or deny     |
| **Result**    | An outcome. "Booked. Confirmation #ABC123"            | None                |

Connecting an agent allows that agent to reach you through Ola. You define settings for each agent. One agent can have relaxed permissions, while another must request approval before every action.

Your agent's *thread* is where you communicate and approve actions. The **Agents** page lists every agent you've connected. **Settings** on a thread holds that agent's permissions and connection details. **Activity feed** is a chronological log of every requested, approved, and denied intent across all your agents.

## Permissions and approvals

Ola sorts every authorize request into one of five categories, each with a configurable handling:

| Category                | Covers                                                       | Default                                        |
| ----------------------- | ------------------------------------------------------------ | ---------------------------------------------- |
| **Information**         | Reading files and directories, searching the web             | Auto-approve                                   |
| **Environment**         | Editing files, running shell commands                        | Requires approval                              |
| **Communication**       | Sending messages or emails on your behalf                    | Requires approval                              |
| **Financial**           | Making payments, transfers, purchases                        | Requires approval, with biometric confirmation |
| **Identity and access** | Accessing credentials, signing in to services on your behalf | Block                                          |

Any action not mapped to a category requires approval by default. Only authorize requests are compared against your permissions settings; inform, collect, and result are always delivered.

Two ways to change this, per agent, under **Settings** > **Intent settings** > **Authorize**:

1. **Category policy**: Set each category to auto-approve, require approval, or block, and turn biometric confirmation on or off
2. **Rules**: Scoped to a specific action, and superseding any broader category default. Approve a request and click "Don't ask me again for this" to turn that decision into a standing rule, or write a rule directly. A rule can auto-approve, require approval, block, or map an action to inherit an existing category's permissions.

**Disconnect** cuts an agent off immediately, from its thread or its card on the **Agents** page. You can reconnect it later, and its history is kept.

## Permission enforcement

With a plugin installed, your agent's tool calls are checked against your permissions before they run and only released if the action is auto-approved or has been approved by the user. If the agent can't reach Ola, tool calls run by default. To block them instead, set `OLA_GATE_FAIL_CLOSED=1`.

Without a plugin, your agent can still request your approval through Ola, but Ola cannot structurally guarantee adherence.

Either way, agents never see your permission settings. Ola applies them when a request arrives rather than telling your agent what to expect.

## Card types

Ola has default cards for things like approvals and collect requests, but your agents can compose custom cards and render them in Ola. Select any card from the [A2UI composer gallery](https://a2ui-composer.ag-ui.com/gallery) or build your own custom cards there, then share the JSON with your agent so it knows which cards you want it to generate.

## What Ola is not

Ola is a channel to agents you already run. It does not build or host agents. It has no model of its own and no opinion about what your agent should do next.

Having trouble? Contact us at `twilio_forward_support@twilio.com`. Include your agent name and host platform to help us resolve it faster.
