> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trae.cn/llms.txt?lang=zh
> Use this file to discover all available pages before exploring further.

Agent Client Protocol (ACP) 是 Zed 推出的智能体通用通信协议，用于将智能体的核心能力（服务端）与用户界面（客户端）解耦，让不同的智能体服务端和客户端能在统一协议下灵活组合与交互。

TraeCode CLI 支持 ACP 协议，可作为智能体服务端，与所有支持 ACP 协议的编辑器 / 客户端实现无缝集成。

## 手动启动 ACP 服务器 {#手动启动-acp-服务器}

执行以下命令启动 ACP 服务器，即可在 ACP Client 中使用 TraeCode CLI。

```Shell
## 方式一 
traecli acp serve

## 方式二
traecli --acp
```

命令结构：

```JSON
traecli [全局参数] acp serve [ACP Server 参数]
```

## 全局参数 {#全局参数}

全局参数必须写在 `acp serve` 前。

<!-- @cols-width: 252,486 -->
| **参数**  | **说明**  |
| --- | --- |
| `-p, --profile <PROFILE>`  | 加载命名配置档。配置文件位于 `$TRAE_HOME/<PROFILE>.traecli.toml`，默认例如 `~/.trae/work.traecli.toml`。  |
| `--permission-mode <MODE>`  | 设置 ACP 会话的初始权限模式。支持 `default`、`auto` 和 `bypass_permissions`。  |
| `-c, --config <KEY=VALUE>`  | 覆盖 `traecli.toml` 中的配置。支持 dotted path，值按 TOML 解析；可以多次指定。  |

示例：

```Shell
## 指定配置档
traecli --profile work acp serve

## 设置初始权限模式
traecli --permission-mode auto acp serve

## 通过配置覆盖指定初始模型
traecli -c 'model="<model-id>"' acp serve

## 同时指定模型和初始 reasoning effort
traecli \
  -c 'model="<model-id>"' \
  -c 'model_reasoning_effort="high"' \
  acp serve
```

## ACP Server 参数 {#acp-server-参数}

以下参数写在 `acp serve` 后。

<!-- @cols-width: 252,486 -->
| **参数**  | **说明**  |
| --- | --- |
| `-y, --yolo`  | 跳过所有确认并关闭沙箱，初始权限模式相当于 `bypass_permissions`。仅适用于已经由外部环境可靠隔离的场景。  |
| `--dangerously-bypass-hook-trust`  | 本次启动时允许已启用的 Hooks 跳过持久化信任检查。该参数不会主动启用 Hooks。  |

通常无需手动执行上述命令来启动 ACP 服务器。实际使用中，ACP Client 会通过 `subprocess` 方式自动启动该服务器。下文以 Zed 编辑器为例，说明集成步骤。

## 示例：在 Zed 中集成 TraeCode CLI {#示例：在-zed-中集成-traecode-cli}

:::tip 提示
不同 ACP Client 集成 TraeCode CLI 的方式可能存在差异，请参考各自的官方文档进行操作。
:::

在 Zed 中通过 ACP 协议集成 TraeCode CLI 的步骤如下：

1. 新建 `~/.config/zed/settings.json` 文件。若已存在该文件，跳过此步骤。
2. 在 `~/.config/zed/settings.json` 文件中，新增以下配置：
   ```JSON
   {
     "agent_servers": {
       "TraeCode CLI": {
         "type": "custom",
         "command": "traecli",
         "args": [
           "acp",
           "serve"
         ],
         "env": {}
       }
     }
   }
   ```
   参数说明如下：
   <!-- @cols-width: 100,739 -->
   | **参数**  | **描述**  |
   | --- | --- |
   | type  | 指定服务端的类型。`"custom"` 表示用户自定义的服务端，需要指定启动命令。  |
   | command  | 指定启动服务端的可执行文件或命令，Zed 将调用这个命令来启动 ACP 服务器，此处为系统中的 `traecli` 可执行文件。  |
   | args  | 指定传给 `command` 的命令行参数，等价于在终端执行：`traecli acp serve`；其中 `"acp"` 是子命令，`"serve"` 是动作参数，用于启动 ACP 服务器。  |
   | env  | 指定启动服务端时的环境变量。空对象 `{}` 表示使用默认系统环境变量。  |
3. 在 Zed 编辑器侧边的 **New Thread** 面板中，新建 TraeCode CLI 线程。
   集成完毕后，你可以在 Zed 编辑器中使用 TraeCode CLI。
