随着开发者现在可以直接在编辑器中与智能体协作,AI 编程正变得越来越简单。Zed ACP 通过将 AI 编程智能体与 Zed 连接起来实现了这一点,让你无需在不同工具之间反复切换即可获得帮助。它让你在如何编程、管理任务以及与 AI 协作方面拥有更大的灵活性。在本指南中,我们将介绍 Zed ACP 的工作原理,以及如何在编辑器中使用它。
什么是 Zed ACP?
Zed ACP 是 Agent Client Protocol 的简称,这是一种开放协议,可让 AI 编程智能体直接与 Zed 编辑器连接。它为 AI 编程智能体与编辑器之间的通信提供了标准化方式,使智能体能够访问项目上下文、建议修改,并通过编辑器界面协助完成编程任务。你无需使用单独的工具,而是可以在同一界面中与 AI 智能体协作。这让开发者能够根据自身需求更自由地选择和切换智能体。
Agent Client Protocol(ACP)如何工作?
AI 智能体需要一种清晰的方式与编辑器通信,以理解任务、获取正确的上下文,并在需要时进行修改。ACP 通过标准化的通信流程提供了这种连接,让 AI 智能体与编辑器之间更容易交换信息、协同工作。以下是 Agent Client Protocol 的工作方式。
ACP 连接 AI 智能体与编程环境
ACP 架构通过 ACP 协议在开发者、Zed 编辑器和 AI 编程智能体之间建立连接。Zed 充当客户端,将任务和上下文发送给智能体,智能体随后可以使用 LLM、工具以及代码库来完成工作。这种设置让编辑器与智能体之间的通信保持有序,使得从一处统一处理编程任务变得更加容易。
Developer
↓
Zed Editor (ACP Client)
↓
ACP Protocol
↓
AI Coding Agent
↓
LLM + Tools + CodebaseACP 与 MCP:有什么区别?
ACP 与 MCP 看起来可能很相似,因为二者都帮助 AI 系统与其他组件交互,但它们承担的角色不同。ACP 专注于将 AI 编程智能体与编辑器及开发环境连接起来,而 MCP 则将 AI 应用与外部工具、数据源和服务连接起来。以下是这两种协议的区别:
| 协议 | 主要用途 |
|---|---|
| ACP | 将 AI 智能体与编程环境连接起来 |
| MCP | 将 AI 模型/智能体与外部工具及数据源连接起来 |
为什么要在 Zed 中使用 ACP?
ACP 可以让 AI 智能体更贴近开发者已在使用的工具和文件,从而使编程体验更加灵活。它可以简化智能体与编辑器的交互方式,减少在不同应用之间切换的需要。以下是在 Zed 中使用 ACP 的主要原因:
在一个编辑器中使用多个 AI 编程智能体
ACP 让 Zed 能够通过同一协议与多个 AI 编程智能体协作。开发者不再局限于特定编辑器内置的 AI 功能,也不必在不同的编程环境之间来回切换。
借助兼容 ACP 的智能体,开发者可以:
根据不同的编程任务选择 AI 智能体
在不改变编辑器工作流的情况下切换智能体
随着新的 AI 编程工具推出即时进行测试
例如,开发者可以通过 ACP 将 Kimi Code CLI 连接到 Zed,并直接在 Zed 环境中使用 Kimi Code CLI 的编程能力。
让 AI 辅助始终融入编程工作流
ACP 的一大优势在于,它让 AI 智能体更贴近开发流程。开发者不必再在聊天机器人和编辑器之间来回复制代码,而是可以直接在 Zed 中与 AI 智能体交互。
ACP 让 AI 智能体能够与以下内容交互:
编辑器提供的项目上下文
已打开的文件及代码信息
来自编辑器的开发者指令
这为以下任务打造了更顺畅的工作流:
解释不熟悉的代码
生成新功能
重构现有文件
跨项目调试问题
将编辑器与 AI 智能体分离
ACP 在编码环境与驱动智能体的 AI 模型之间建立了清晰的分离。
在这种架构下:
Zed 专注于提供快速高效的开发界面
AI 智能体负责推理、代码生成和任务执行
开发者可以替换或添加智能体,而无需更改编辑器
这种灵活性有助于避免开发者被锁定在单一 AI 编码方案中,也支持更加开放的 AI 开发生态。
构建更灵活的基于智能体的开发流程
现代 AI 编码正从简单的代码补全,转向能够理解项目、规划任务并执行多步骤更改的自主智能体。
ACP 为 Zed 中的这类工作流提供了所需的连接层。结合 MCP(Model Context Protocol)等工具,AI 智能体可以访问更多工具、外部资源和开发服务,同时保持与编辑器工作流的连接。
对开发者而言,这意味着 Zed 可以成为一个中心工作空间,让不同的 AI 智能体与代码、工具和项目上下文协同工作。
Zed 如何与兼容 ACP 的智能体协作?
Zed 使用 ACP(Agent Client Protocol)通过标准化接口连接外部 AI 编码智能体。在此设置中,Zed 充当 ACP 客户端,而连接的 AI 编码工具则作为 ACP 智能体运行。
当开发者在 Zed 中开始一次 AI 编码会话时,编辑器会通过 ACP 与智能体通信。这使智能体能够接收编码请求、访问相关的项目上下文,并将响应或代码更改发回编辑器。
这种架构使编辑器与 AI 智能体保持分离,让不同的兼容 ACP 的智能体都能连接到 Zed,而无需为每个工具进行定制集成。
借助 ACP 支持,开发者可以将 Kimi Code CLI 等 AI 编码智能体连接到 Zed,并直接在现有开发流程中使用 AI 编码辅助功能。
如何通过 ACP 将 Kimi Code CLI 连接到 Zed?
Kimi Code CLI 支持 ACP 集成,让开发者可以直接在 Zed 中使用 Kimi 的 AI 编码能力。整个设置只需安装 Kimi Code CLI、完成身份验证,并在 Zed 中添加 ACP 智能体配置即可。
前提条件
在将 Kimi Code CLI 连接到 Zed 之前,请确保你已经:
安装了 Kimi Code CLI
完成了 Kimi Code CLI 的登录设置
安装了支持 ACP 的最新版 Zed
Kimi Code CLI 提供了 kimi acp 命令,用于以 ACP 模式启动 CLI。Zed 会将此命令作为 ACP 智能体启动,并通过该协议与其通信。
步骤 1:查找 Kimi Code CLI 路径(可选)
在大多数情况下,你可以在配置中直接使用 kimi。如果 Zed 找不到该命令,可以检查安装路径:
which kimi复制返回的路径以供后续使用。
这在 macOS 上尤其有用,因为从桌面启动的应用程序可能无法继承终端的 PATH 环境变量。
步骤 2:在 Zed 中配置 Kimi Code CLI
打开 Zed 配置文件:
~/.config/zed/settings.json添加以下 agent_servers 配置:
{
"agent_servers": {
"Kimi Code CLI": {
"type": "custom",
"command": "kimi",
"args": ["acp"],
"env": {}
}
}
}配置详情:
type:自定义 ACP 智能体请设置为"custom"command:Kimi Code CLI 可执行文件的路径args:使用acp以 ACP 模式启动 Kimi Code CLIenv:可选环境变量,通常留空
如果 kimi 在系统 PATH 中不可用,请将其替换为完整路径:
"command": "/your/path/to/kimi""command": "/your/path/to/kimi"第 3 步:在 Zed 中启动 Kimi Code CLI
保存配置后:
打开 Zed
打开 Agent 面板
创建新对话
选择 Kimi Code CLI 作为 agent
Zed 会自动以 ACP 子进程的方式启动 Kimi Code CLI 并建立连接,你无需在终端中手动运行 kimi acp。
第 4 步:在 Zed 中使用 Kimi 编写代码
连接成功后,你可以在 Zed 中使用 Kimi Code CLI 完成以下任务:
理解项目代码
生成新功能
重构文件
调试问题
结合项目上下文跨多个文件工作
通过 ACP,Kimi Code CLI 作为集成的编程 agent 在 Zed 中运行,将 Zed 的编辑体验与 Kimi 的 AI 辅助开发能力结合在一起。
在 Zed 中使用 Kimi Code 的优势
对于希望在不离开编码环境的情况下获得 AI 辅助的开发者来说,Kimi Code 可以让 Zed 变得更加实用。通过 ACP 连接该 agent,开发者可以处理编码任务、在现有项目中工作,并使用自然语言获得帮助。以下是在 Zed 中使用 Kimi Code 的主要优势:
理解并浏览大型代码库
Kimi Code 可以分析项目文件,理解代码库中不同部分之间的关联。这有助于开发者更快地找到相关的文件、函数和逻辑,在处理大型或不熟悉的项目时尤其有用。
用自然语言生成和修改代码
开发者可以用简单的语言描述自己的需求,而不必手动编写每一处改动。Kimi Code 可以根据给定的指令生成新代码或修改现有代码,从而让常见的开发任务处理起来更快、更轻松。
协助处理多文件编码任务
许多开发任务需要跨多个文件而不是单一位置进行修改。Kimi Code 可以理解更广泛的任务需求,并在相关文件中协同进行所需的更新,帮助保持整个项目中相关改动的一致性。
调试并改进现有代码
Kimi Code 可以通过审查现有代码来帮助识别潜在问题,并说明可能导致问题的原因。它还可以提出修复建议、改进代码结构,并根据开发者的指示进行修改,从而减少手动查找和解决错误所耗费的时间。
构建基于 agent 的开发工作流
在 Zed 中使用 Kimi Code,可以让开发者将 AI agent 纳入日常开发流程之中。该 agent 可以在编辑器内支持编码和项目改动等任务,从而形成一种灵活的工作流:开发者与 AI agent 协同工作,而不是将其当作一个独立的工具来使用。
排查 Zed ACP 集成问题
一些设置或配置问题可能会导致 ACP agent 在 Zed 中无法正常工作。大多数问题与 agent 配置、命令路径、身份验证或连接有关,通常只需进行几项简单检查即可解决。以下是常见问题及其解决方法:
| 问题 | 可能原因 | 解决方法 |
|---|---|---|
| Kimi Code CLI 未出现在 Zed 中 | agent_servers 配置缺失或存在语法错误 | 检查 settings.json 文件,确认 Kimi Code CLI 配置已正确添加 |
| Zed 找不到 kimi 命令 | Kimi Code CLI 在系统 PATH 中不可用 | 运行 which kimi 查找可执行文件路径,然后将 "command": "kimi" 替换为完整路径 |
| ACP agent 启动后立即退出 | Kimi Code CLI 安装或身份验证未完成 | 在终端中运行 kimi acp,验证 ACP 模式能否正常启动,如有需要请完成登录流程 |
| 启动 agent 时出现身份验证错误 | Kimi Code CLI 账户身份验证已过期或未配置 | 重新登录 Kimi Code CLI,然后重启 Zed |
| 对 settings.json 的修改未生效 | Zed 尚未重新加载更新后的配置 | 修改配置文件后需重启 Zed |
| 执行编码任务时,agent 响应缓慢或失败 | 网络连接问题或项目上下文过大 | 检查网络连接,并尝试缩小项目范围 |
结语
Zed ACP 为开发者提供了一种灵活的方式,将 AI 辅助能力融入日常编码工作流程。它还让在不同 agent 之间切换变得更加方便,同时让编辑器始终处于开发工作的核心位置。随着 AI 编码的不断发展,这种方式有助于让开发工作更高效、更具适应性。如果你想尝试这种工作流程,不妨在 Zed 中试用 Kimi Code,看它是否适合你的编码需求。现在就开始使用 Kimi,体验更自然的 AI 辅助开发流程。