Salta ai contenuti

Supporto ACP

Usa OpenCode in qualunque editor compatibile con ACP.

OpenCode supporta Agent Client Protocol (ACP), permettendoti di usarlo direttamente in editor e IDE compatibili.

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


Configure

Per usare OpenCode via ACP, configura l’editor in modo che esegua il comando opencode acp.

Il comando avvia OpenCode come sottoprocesso compatibile con ACP che comunica con l’editor via JSON-RPC su stdio.

Qui sotto trovi esempi per editor popolari che supportano ACP.


Zed

Aggiungi alla configurazione di 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 Command Palette.

Puoi anche assegnare una scorciatoia da tastiera modificando keymap.json:

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

JetBrains IDEs

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

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

Per aprirlo, seleziona il nuovo agente ‘OpenCode’ nel selettore agenti di AI Chat.


Avante.nvim

Aggiungi alla configurazione di 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 usare OpenCode come agente ACP in CodeCompanion.nvim, aggiungi quanto segue alla config di Neovim:

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

Questa config imposta CodeCompanion per usare OpenCode come agente ACP per la chat.

Se devi passare variabili d’ambiente (come OPENCODE_API_KEY), vedi Configuring Adapters: Environment Variables nella documentazione di CodeCompanion.nvim.

Support

OpenCode funziona via ACP come nel terminale. Tutte le funzionalita sono supportate:

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