Zum Inhalt springen

ACP-Unterstützung

Verwenden Sie OpenCode in jedem ACP-kompatiblen Editor.

OpenCode unterstützt Agent Client Protocol oder (ACP), sodass Sie es direkt in kompatiblen Editoren und IDEs verwenden können.

ACP ist ein offenes Protokoll, das die Kommunikation zwischen Code-Editoren und AI-Coding-Agenten standardisiert.


Konfigurieren

Um OpenCode über ACP zu verwenden, konfigurieren Sie Ihren Editor für die Ausführung des Befehls opencode acp.

Der Befehl startet OpenCode als ACP-kompatiblen Unterprozess, der über stdio über JSON-RPC mit Ihrem Editor kommuniziert.

Nachfolgend finden Sie Beispiele für beliebte Editoren, die ACP unterstützen.


Zed

Fügen Sie Ihrer Zed-Konfiguration (~/.config/zed/settings.json) Folgendes hinzu:

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

Um es zu öffnen, verwenden Sie die Aktion agent: new thread in der Befehlspalette.

Sie können auch eine Tastenkombination binden, indem Sie Ihren keymap.json bearbeiten:

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

JetBrains IDEs

Fügen Sie zu Ihrem JetBrains IDE acp.json gemäß documentation hinzu:

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

Um es zu öffnen, verwenden Sie den neuen Agenten „OpenCode“ in der AI Chat Agent Selector.


Avante.nvim

Fügen Sie Ihrer Avante.nvim-Konfiguration Folgendes hinzu:

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

Wenn Sie Umgebungsvariablen übergeben müssen:

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

CodeCompanion.nvim

Um OpenCode als ACP-Agent in CodeCompanion.nvim zu verwenden, fügen Sie Folgendes zu Ihrer Neovim-Konfiguration hinzu:

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

Diese Konfiguration richtet CodeCompanion so ein, dass OpenCode als ACP-Agent für den Chat verwendet wird.

Wenn Sie Umgebungsvariablen (wie OPENCODE_API_KEY) übergeben müssen, finden Sie ausführliche Informationen zu Configuring Adapters: Environment Variables in der Dokumentation zu CodeCompanion.nvim.

Support

OpenCode funktioniert über ACP genauso wie im Terminal. Alle Funktionen werden unterstützt:

  • Integrierte Tools (Dateioperationen, Terminalbefehle usw.)
  • Benutzerdefinierte Tools und Slash-Befehle
  • MCP-Server, die in Ihrer OpenCode-Konfiguration konfiguriert sind
  • Projektspezifische Regeln von AGENTS.md
  • Benutzerdefinierte Formatierer und Linters
  • Agenten- und Berechtigungssystem