O que é o ACP no OpenCode e para que serve?

ACP no OpenCode é o Agent Client Protocol, um padrão aberto que define como um agente de código conversa com o seu editor. Ele foi criado e liberado como open source pela Zed Industries, com governança de comunidade. O OpenCode, agente open source da sst, expõe seu loop de agente e ferramentas via ACP, e por isso roda dentro de editores compatíveis como Zed, JetBrains e Neovim. Na prática, tu chama o agente sem sair do editor. O comando que sobe tudo é opencode acp.
Você abriu a doc do OpenCode, encontrou a sigla ACP e travou
Calma que é mais simples do que parece
ACP é um protocolo que liga o agente de IA ao seu editor de código
Antes de sair mexendo no settings.json e no comando, vale entender o que é essa ponte e para que ela serve, então bora do começo =)
O que significa ACP (Agent Client Protocol)
ACP é a sigla de Agent Client Protocol, um padrão aberto que define como agentes de IA de código conversam com editores e IDEs
A ideia por trás é simples: em vez de cada agente inventar o seu próprio jeito de se conectar a cada editor, todo mundo fala a mesma língua
É um padrão pra conectar QUALQUER agente a QUALQUER ambiente de edição, beleza?
Se você já viu como o NPM padroniza a instalação de pacotes pra qualquer projeto Node, a lógica aqui é parecida: um contrato comum que todo mundo respeita
O ACP foi criado e liberado como open source pela Zed Industries, a empresa por trás do editor Zed
Hoje o código e a governança ficam na comunidade, no repositório github.com/zed-industries/agent-client-protocol
E não é só a Zed nessa
Em outubro de 2025, a JetBrains firmou parceria com a Zed pra co-desenvolver o ACP e adotá-lo nas IDEs dela
Ou seja, o protocolo não é experimento de fundo de quintal: tem empresa grande apostando nele pra interoperabilidade de agentes dentro do editor
O que o ACP habilita na prática no OpenCode
O OpenCode é um agente de código open source mantido pela sst
O que o suporte a ACP muda pra você é o seguinte: o OpenCode expõe o loop de agente e as ferramentas dele via ACP
E o que isso significa na prática?
Significa que você usa o OpenCode DENTRO de um editor compatível, sem trocar de janela e sem abrir um terminal separado só pra conversar com a IA
Os editores compatíveis citados na doc são o Zed, o JetBrains e o Neovim
Pensa assim: o agente vira mais um recurso do seu editor, do lado do seu código, com acesso às ferramentas que ele já sabe usar
Em vez de copiar e colar código de um lado pro outro, tu chama o agente ali mesmo onde você programa
Como o OpenCode entra em modo ACP
Aqui vai a parte prática, só com o que dá pra afirmar com segurança
- O comando que coloca o OpenCode em modo ACP é este
opencode acp
Só que você não roda ele na mão: esse é o comando que o EDITOR chama por baixo dos panos. Ele inicia o OpenCode como um subprocesso ACP, que fala JSON-RPC por stdio com o editor
Traduzindo o miudinho: o editor abre o OpenCode sozinho e os dois trocam mensagens por aquele canal padrão de entrada e saída, sem você ver
- No Zed, faça a ligação adicionando o OpenCode como
agent_serverno arquivo~/.config/zed/settings.json
{
"agent_servers": {
"OpenCode": {
"command": "opencode",
"args": ["acp"]
}
}
}
Repara que o command é opencode e os args são ["acp"]: é exatamente o comando de cima, só que declarado pro editor chamar sozinho
O erro comum aqui é bagunçar o JSON: uma vírgula sobrando ou uma chave fora do lugar e o Zed não carrega a config
Se algo não subir, confere primeiro se o arquivo settings.json está com a estrutura certinha antes de sair procurando culpa no OpenCode
Um empurrão pra começar do zero no OpenCode
Se você ainda está montando o ambiente e quer ver o OpenCode rodando na prática, este vídeo do canal mostra como usar modelos de graça no OpenCode via ZenMux
É um bom ponto de partida pra pegar familiaridade com a ferramenta antes de partir pra configuração do ACP
Conclusão
No fim das contas, ACP é a ponte entre o agente e o editor
O Agent Client Protocol padroniza essa conversa, a Zed criou e abriu o padrão, a JetBrains entrou na parceria, e o OpenCode surfa nisso expondo o agente dele pra editores compatíveis como Zed, JetBrains e Neovim
O próximo passo é escolher um editor compatível e configurar a conexão que aponta pro comando opencode acp
Aí é sentar na cadeira e deixar o agente trabalhar do lado do seu código =)
Perguntas frequentes
O modo ACP do OpenCode funciona só no Zed ou tem suporte em outros editores?
O OpenCode expõe o agente via ACP para Zed, JetBrains e Neovim, não só pro Zed. Com a parceria entre Zed e JetBrains firmada em outubro de 2025, a tendência é o protocolo chegar em mais ambientes conforme o padrão for se consolidando
Quem criou o ACP e quem mantém o protocolo hoje?
A Zed Industries criou e liberou o Agent Client Protocol como open source. Hoje a governança ficou com a comunidade, no repositório github.com/zed-industries/agent-client-protocol, então o projeto não depende de uma empresa só pra evoluir
O que é JSON-RPC e por que o ACP usa stdio em vez de HTTP?
JSON-RPC é um padrão leve de chamadas remotas onde o cliente manda uma mensagem JSON e recebe uma resposta JSON de volta. Via stdio, o editor abre o OpenCode como subprocesso e os dois trocam essas mensagens pelo canal padrão de entrada e saída do processo, sem precisar de porta de rede nenhuma
Preciso deixar o OpenCode aberto no terminal antes de usar o modo ACP no Zed?
Não. Com a entrada de agent_servers no settings.json do Zed, o próprio editor chama o comando opencode acp como subprocesso quando precisa. Você não sobe nada na mão: o Zed cuida disso por baixo dos panos
Por que a JetBrains entrou na parceria do ACP em vez de criar o próprio protocolo?
A parceria foi anunciada em outubro de 2025 pra garantir interoperabilidade de agentes nas IDEs da JetBrains. Apostar num padrão aberto já existente acelera a adoção e evita que cada empresa invente o próprio jeito de conectar agente com editor
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 473 aulas
- 20 projetos
- 39h 26min
Blog | Mais populares
As diferenças de var, let e const
Como fazer redirecionamento com PHP
Neste artigo você vai aprender a como fazer redirecionamento com PHP, utilizaremos abordagens fáceis de entender e de aplicar Fala programador(a), beleza? Bora aprender mais […]
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação A popularidade da automação de processos com o n8n está em alta, principalmente […]