> ## Documentation Index
> Fetch the complete documentation index at: https://docs.entire.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Integration Protocol

> Add support for an AI coding agent that Entire does not ship with

If your agent is not listed in our [native agent integrations](/agents/overview), you can still integrate it with Entire. This can be done with the Agent Integration Protocol by building an `entire-agent-<name>` executable and putting it on your `$PATH`. Entire discovers it there and registers it as an agent.

## Add an Agent Integration

After you put the executable on your `$PATH`, install its hooks in an existing Entire repository:

```bash theme={null}
entire agent add NAME
```

During initial setup, select it with:

```bash theme={null}
entire enable --agent NAME
```

See [`entire agent add`](/cli-reference/agent#agent-add) and [`entire enable --agent`](/cli-reference/enable) for their flags and setup behavior.

> [!NOTE]
>
> Selecting a discovered agent with `entire agent add` or `entire enable --agent` sets `external_agents` to `true`. If you install an integration executable after setup, run `entire agent add NAME` or add `"external_agents": true` to `.entire/settings.json`. The setting key keeps its original name.

> [!WARNING]
>
> Agent integrations receive repository paths and session data, and they run with the same filesystem access as the Entire CLI. Only install integrations you trust.

## Protocol Reference

> **[Build an Agent Integration](/agents/agent-integration-protocol/build-an-agent-integration)**
>
> Scaffold an executable and implement the protocol with working examples.

> **[Architecture](/agents/agent-integration-protocol/architecture)**
>
> See how the CLI discovers an integration and invokes it.

> **[Lifecycle](/agents/agent-integration-protocol/lifecycle)**
>
> Follow the CLI calls through discovery, setup, sessions, and shutdown.

> **[Commands](/agents/agent-integration-protocol/commands)**
>
> Implement each subcommand, input, and output.

> **[Data Model](/agents/agent-integration-protocol/data-model)**
>
> Use the JSON shapes that the protocol exchanges.
