Salta ai contenuti

Supporto ACP

Usa OpenCode in qualsiasi editor compatibile con ACP.

OpenCode supporta l’Agent Client Protocol o (ACP), consentendoti di utilizzarlo direttamente in editor e IDE compatibili.

ACP e un protocollo aperto che standardizza la comunicazione tra editor di codice e agenti di codifica AI.


Configurare

Per utilizzare OpenCode tramite ACP, configura il tuo editor per eseguire il comando opencode acp.

Il comando avvia OpenCode come un sottoprocesso compatibile con ACP che comunica con il tuo editor tramite JSON-RPC tramite stdio.

Di seguito sono riportati esempi per editor popolari che supportano ACP.


Zed

Aggiungi alla tua configurazione Zed (~/.config/zed/settings.json):

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

Per aprirlo, usa l’azione agent: new thread nella Palette dei comandi.

Puoi anche collegare una scorciatoia da tastiera modificando il tuo keymap.json:

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

JetBrains IDE

Aggiungi al tuo IDE JetBrains acp.json secondo la documentazione:

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

Per aprirlo, usa il nuovo agente ‘OpenCode’ nel selettore di agenti di chat AI.


Avante.nvim

Aggiungi alla tua configurazione Avante.nvim:

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

Se devi passare variabili d’ambiente:

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

CodeCompanion.nvim

Per utilizzare OpenCode come agente ACP in CodeCompanion.nvim, aggiungi quanto segue alla tua configurazione Neovim:

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

Questa configurazione imposta CodeCompanion per utilizzare OpenCode come agente ACP per la chat.

Se devi passare variabili d’ambiente (come OPENCODE_API_KEY), fai riferimento a Configurazione degli adattatori: Variabili d’ambiente nella documentazione CodeCompanion.nvim per maggiori dettagli.

Supporto

OpenCode funziona allo stesso modo tramite ACP come nel terminale. Tutte le funzionalita sono supportate:

  • Strumenti integrati (operazioni sui file, comandi del terminale, ecc.)
  • Strumenti personalizzati e comandi slash
  • Server MCP configurati nella tua configurazione OpenCode
  • Regole specifiche del progetto da AGENTS.md
  • Formattatori e linter personalizzati
  • Sistema di agenti e permessi