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

# ACP-compatible agents

> How GPR discovers and launches agents that speak Agent Client Protocol.

GPR’s daemon is an ACP host. Any catalog agent that speaks ACP over stdio can run tasks and chats.

## Built-in catalog

| Id | Command | Notes |
| - | - | - |
| `cursor` | `cursor-agent acp` | No adapter |
| `claude` | `claude-code-acp` | Needs `claude` + adapter binary |
| `codex` | `codex-acp` | Needs `codex` + adapter binary |
| `kiro` | `kiro-cli acp` | No adapter |
| `opencode` | `opencode acp` | No adapter |
| `qwen` | `qwen --experimental-acp` | No adapter |
| `cline` | `cline acp` | No adapter |
| `copilot` | `copilot acp` | No adapter |

## Discovery

```bash theme={null}
gpr discover
```

`Ready` means:

1. Every binary in `Requires` is on `PATH`.
2. If an adapter is required, that binary exists beside `gpr`.

## Selecting an agent

Set the agent on the **workspace** in the app. Tasks use that workspace’s agent when claimed.

## Protocol path

```text theme={null}
Phone ↔ backend relay ↔ gpr daemon ↔ ACP stdio ↔ agent process
```

The backend does not embed the agent. It relays frames and stores task/session metadata.

## Adding new agents later

New catalog entries ship with daemon releases. Prefer agents that already appear in `gpr discover`.

When you need a custom ACP binary, extra env (API keys, proxy URLs), or an agent id that is not in the catalog, write [agents.json](https://getpullrequest.com/docs/reference/agents-json.md). Names in that file are advertised to the app on connect. A catalog id you redefine fully replaces the built-in launch spec.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.