~/content/acp-support

ACP Support

Use OpenCode in any ACP-compatible editor.

last_updated: "2026-01-20"

OpenCode 支持 Agent Client Protocol 或 (ACP),允许您在兼容的编辑器和 IDE 中直接使用它。

Note

💡 提示

有关支持 ACP 的编辑器和工具的列表,请查看 ACP 进度报告

ACP 是一种开放协议,可标准化代码编辑器和 AI 编码代理之间的通信。


##配置

要通过 ACP 使用 OpenCode,请配置您的编辑器以运行 opencode acp 命令。

该命令将 OpenCode 启动为 ACP 兼容的子进程,该子进程通过 stdio 上的 JSON-RPC 与您的编辑器通信。

以下是支持 ACP 的常用编辑器的示例。


###Zed

添加到您的 Zed 配置 (~/.config/zed/settings.json):

bash
{
  "agent_servers": {
    "OpenCode": {
      "command": "opencode",
      "args": ["acp"]
    }
  }
}

要打开它,请使用 命令面板 中的 agent: new thread 操作。

您还可以通过编辑 keymap.json 来绑定键盘快捷键:

bash
[
  {
    "bindings": {
      "cmd-alt-o": [
        "agent::NewExternalAgentThread",
        {
          "agent": {
            "custom": {
              "name": "OpenCode",
              "command": {
                "command": "opencode",
                "args": ["acp"]
              }
            }
          }
        }
      ]
    }
  }
]

###JetBrains IDEs

根据 文档,添加到您的 JetBrains IDE acp.json:

bash
{
  "agent_servers": {
    "OpenCode": {
      "command": "/absolute/path/bin/opencode",
      "args": ["acp"]
    }
  }
}

要打开它,请在 AI Chat 代理选择器中使用新的 'OpenCode' 代理。


###Avante.nvim

添加到您的 Avante.nvim 配置:

bash
{
  acp_providers = {
    ["opencode"] = {
      command = "opencode",
      args = { "acp" }
    }
  }
}

如果您需要传递环境变量:

bash
{
  acp_providers = {
    ["opencode"] = {
      command = "opencode",
      args = { "acp" },
      env = {
        OPENCODE_API_KEY = os.getenv("OPENCODE_API_KEY")
      }
    }
  }
}

###CodeCompanion.nvim

要在 CodeCompanion.nvim 中使用 OpenCode 作为 ACP 代理,请将以下内容添加到您的 Neovim 配置:

bash
require("codecompanion").setup({
  interactions = {
    chat = {
      adapter = {
        name = "opencode",
        model = "claude-sonnet-4",
      },
    },
  },
})

此配置设置 CodeCompanion 以使用 OpenCode 作为聊天的 ACP 代理。

如果您需要传递环境变量(如 OPENCODE_API_KEY),请参阅 CodeCompanion.nvim 文档中的 Configuring Adapters: Environment Variables 以获取完整详细信息。

##支持

OpenCode 通过 ACP 的工作方式与在终端中相同。 支持所有功能:

Note

📝 注意

某些内置的斜杠命令(如 /undo/redo)当前不受支持。

  • 内置工具(文件操作、终端命令等)
  • 自定义工具和斜杠命令
  • 在 OpenCode 配置中配置的 MCP 服务器
  • 来自 AGENTS.md 的项目特定规则
  • 自定义格式化程序和 linter
  • 代理和权限系统
Comments (Coming Soon)

Configure Giscus in environment variables to enable comments.