ACPのサポート
ACP 互換エディターで OpenCode を使用します。
OpenCode は Agent Client Protocol または (ACP) をサポートしているため、互換性のあるエディターや IDE で直接使用できます。
ACP は、コード エディターと AI コーディング エージェント間の通信を標準化するオープン プロトコルです。
設定する
ACP 経由で OpenCode を使用するには、opencode acp コマンドを実行するようにエディタを設定します。
このコマンドは、stdio 経由で JSON-RPC 経由でエディターと通信する ACP 互換のサブプロセスとして OpenCode を開始します。
以下は、ACP をサポートする一般的なエディタの例です。
Zed
Zed 構成 (~/.config/zed/settings.json) に追加します。
{ "agent_servers": { "OpenCode": { "command": "opencode", "args": ["acp"] } }}これを開くには、コマンド パレットの agent: new thread アクションを使用します。
keymap.json を編集してキーボード ショートカットをバインドすることもできます。
[ { "bindings": { "cmd-alt-o": [ "agent::NewExternalAgentThread", { "agent": { "custom": { "name": "OpenCode", "command": { "command": "opencode", "args": ["acp"] } } } } ] } }]JetBrains IDE
documentation に従って、JetBrains IDE acp.json に追加します:
{ "agent_servers": { "OpenCode": { "command": "/absolute/path/bin/opencode", "args": ["acp"] } }}これを開くには、AI Chat エージェント セレクターで新しい「OpenCode」エージェントを使用します。
Avante.nvim
Avante.nvim 設定に追加:
{ acp_providers = { ["opencode"] = { command = "opencode", args = { "acp" } } }}環境変数を渡す必要がある場合:
{ acp_providers = { ["opencode"] = { command = "opencode", args = { "acp" }, env = { OPENCODE_API_KEY = os.getenv("OPENCODE_API_KEY") } } }}CodeCompanion.nvim
CodeCompanion.nvim で OpenCode を ACP エージェントとして使用するには、以下を Neovim 構成に追加します。
require("codecompanion").setup({ interactions = { chat = { adapter = { name = "opencode", model = "claude-sonnet-4", }, }, },})この構成は、OpenCode をチャットの ACP エージェントとして使用するように CodeCompanion をセットアップします。
環境変数 (OPENCODE_API_KEY など) を渡す必要がある場合、詳細については、CodeCompanion.nvim ドキュメントの「アダプターの構成: 環境変数」を参照してください。
サポート
OpenCode は、ACP 経由でもterminal 内で動作するのと同じように動作します。すべての機能がサポートされています。
- 組み込みツール (ファイル操作、terminalコマンドなど)
- カスタムツールとスラッシュコマンド
- OpenCode 構成で構成された MCP サーバー
AGENTS.mdのプロジェクト固有のルール- カスタムフォーマッタとリンター
- エージェントと権限システム