日本語
ドキュメント
ACPサポート

ACP サポート

ACP 対応エディタで OpenCode を使用できます。

OpenCode は Agent Client Protocol (opens in a new tab)(ACP)をサポートしており、対応するエディタや IDE で直接使用できます。

ACP をサポートするエディタとツールの一覧は、ACP 進捗レポート (opens in a new tab)をご覧ください。

ACP は、コードエディタと AI コーディングエージェント間の通信を標準化するオープンプロトコルです。


設定

ACP 経由で OpenCode を使用するには、エディタで opencode acp コマンドを実行するように設定します。

このコマンドは、OpenCode を ACP 互換のサブプロセスとして起動し、stdio 経由で JSON-RPC を使用してエディタと通信します。

以下は、ACP をサポートする人気エディタの設定例です。


Zed

Zed (opens in a new tab) の設定(~/.config/zed/settings.json)に追加:

~/.config/zed/settings.json
{
  "agent_servers": {
    "OpenCode": {
      "command": "opencode",
      "args": ["acp"]
    }
  }
}

開くには、コマンドパレットagent: new thread アクションを使用します。

keymap.json を編集してキーボードショートカットをバインドすることもできます:

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

JetBrains IDE

ドキュメント (opens in a new tab)に従って、JetBrains IDE (opens in a new tab) の acp.json に追加:

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

開くには、AI Chat エージェントセレクタで新しい 'OpenCode' エージェントを使用します。


Avante.nvim

Avante.nvim (opens in a new tab) の設定に追加:

{
  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 (opens in a new tab) で OpenCode を ACP エージェントとして使用するには、Neovim 設定に以下を追加:

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

この設定により、CodeCompanion はチャット用の ACP エージェントとして OpenCode を使用します。

環境変数(OPENCODE_API_KEY など)を渡す必要がある場合は、CodeCompanion.nvim ドキュメントのアダプタの設定:環境変数 (opens in a new tab)を参照してください。

サポート

OpenCode は ACP 経由でもターミナルと同様に動作します。すべての機能がサポートされています:

⚠️

/undo/redo などの一部の組み込みスラッシュコマンドは現在サポートされていません。

  • 組み込みツール(ファイル操作、ターミナルコマンドなど)
  • カスタムツールとスラッシュコマンド
  • OpenCode 設定で構成された MCP サーバー
  • AGENTS.md からのプロジェクト固有ルール
  • カスタムフォーマッタとリンター
  • エージェントと権限システム