Português
Documentação
Suporte ACP

Suporte ACP

Use OpenCode em qualquer editor compatível com ACP.

OpenCode suporta o Agent Client Protocol (opens in a new tab) (ACP), permitindo que você o use diretamente em editores e IDEs compatíveis.

Para uma lista de editores e ferramentas que suportam ACP, confira o relatório de progresso do ACP (opens in a new tab).

ACP é um protocolo aberto que padroniza a comunicação entre editores de código e agentes de codificação com IA.


Configuração

Para usar OpenCode via ACP, configure seu editor para executar o comando opencode acp.

O comando inicia OpenCode como um subprocesso compatível com ACP que se comunica com seu editor via JSON-RPC sobre stdio.

Abaixo estão exemplos para editores populares que suportam ACP.


Zed

Adicione à sua configuração do Zed (opens in a new tab) (~/.config/zed/settings.json):

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

Para abrir, use a ação agent: new thread na Paleta de Comandos.

Você também pode vincular um atalho de teclado editando seu keymap.json:

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

JetBrains IDEs

Adicione ao seu JetBrains IDE (opens in a new tab) acp.json de acordo com a documentação (opens in a new tab):

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

Para abrir, use o novo agente 'OpenCode' no seletor de agentes do AI Chat.


Avante.nvim

Adicione à sua configuração do Avante.nvim (opens in a new tab):

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

Se você precisar passar variáveis de ambiente:

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

CodeCompanion.nvim

Para usar OpenCode como agente ACP no CodeCompanion.nvim (opens in a new tab), adicione o seguinte à sua configuração do Neovim:

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

Esta configuração define o CodeCompanion para usar OpenCode como agente ACP para chat.

Se você precisar passar variáveis de ambiente (como OPENCODE_API_KEY), consulte Configurando Adaptadores: Variáveis de Ambiente (opens in a new tab) na documentação do CodeCompanion.nvim para detalhes completos.

Suporte

OpenCode funciona da mesma forma via ACP como no terminal. Todos os recursos são suportados:

⚠️

Alguns comandos slash integrados como /undo e /redo atualmente não são suportados.

  • Ferramentas integradas (operações de arquivo, comandos de terminal, etc.)
  • Ferramentas personalizadas e comandos slash
  • Servidores MCP configurados na sua configuração do OpenCode
  • Regras específicas do projeto do AGENTS.md
  • Formatadores e linters personalizados
  • Sistema de agentes e permissões