ACP 支持
在任何兼容 ACP 的编辑器中使用 Dropstone。
Dropstone 支持 Agent Client Protocol(ACP),允许你在兼容的编辑器和 IDE 中直接使用它。
提示:
有关支持 ACP 的编辑器和工具列表,请查看 ACP 进度报告。
ACP 是一个开放协议,用于标准化代码编辑器和 AI 编码代理之间的通信。
配置
要通过 ACP 使用 Dropstone,请配置你的编辑器以运行 dropstone acp 命令。
该命令将 Dropstone 作为兼容 ACP 的子进程启动,通过 JSON-RPC 经由 stdio 与你的编辑器通信。
以下是支持 ACP 的流行编辑器的示例。
Zed
添加到你的 Zed 配置(~/.config/zed/settings.json):
{
"agent_servers": {
"Dropstone": {
"command": "dropstone",
"args": ["acp"]
}
}
}
要打开它,请在命令面板中使用 agent: new thread 操作。
你也可以通过编辑 keymap.json 来绑定键盘快捷键:
[
{
"bindings": {
"cmd-alt-o": [
"agent::NewExternalAgentThread",
{
"agent": {
"custom": {
"name": "Dropstone",
"command": {
"command": "dropstone",
"args": ["acp"]
}
}
}
}
]
}
}
]
JetBrains IDEs
根据文档添加到你的 JetBrains IDE acp.json:
{
"agent_servers": {
"Dropstone": {
"command": "/absolute/path/bin/dropstone",
"args": ["acp"]
}
}
}
要打开它,请在 AI Chat 代理选择器中使用新的"Dropstone"代理。
Avante.nvim
添加到你的 Avante.nvim 配置:
{
acp_providers = {
["dropstone"] = {
command = "dropstone",
args = { "acp" }
}
}
}
如果你需要传递环境变量:
{
acp_providers = {
["dropstone"] = {
command = "dropstone",
args = { "acp" },
env = {
DROPSTONE_API_KEY = os.getenv("DROPSTONE_API_KEY")
}
}
}
}
CodeCompanion.nvim
要在 CodeCompanion.nvim 中将 Dropstone 用作 ACP 代理,请将以下内容添加到你的 Neovim 配置中:
require("codecompanion").setup({
interactions = {
chat = {
adapter = {
name = "dropstone",
model = "dropstone-pro",
},
},
},
})
此配置将 CodeCompanion 设置为使用 Dropstone 作为聊天的 ACP 代理。
如果你需要传递环境变量(如 DROPSTONE_API_KEY),请参考 CodeCompanion.nvim 文档中的配置适配器:环境变量以获取完整详情。
支持
Dropstone 通过 ACP 的工作方式与在终端中相同。所有功能都受支持:
- 内置工具(文件操作、终端命令等)
- 自定义工具和斜杠命令
- 在 Dropstone 配置中配置的 MCP 服务器
- 来自
AGENTS.md的项目特定规则 - 自定义格式化程序和 linter
- 代理和权限系统
Note:
某些内置斜杠命令(如 /undo 和 /redo)目前不支持通过 ACP 使用。