Aller au contenu

Prise en charge ACP

Utilisez OpenCode dans n'importe quel editeur compatible ACP.

OpenCode prend en charge l’Agent Client Protocol ou (ACP), vous permettant de l’utiliser directement dans les editeurs et IDE compatibles.

ACP est un protocole ouvert qui standardise la communication entre les editeurs de code et les agents de codage AI.


Configurer

Pour utiliser OpenCode via ACP, configurez votre editeur pour executer la commande opencode acp.

La commande demarre OpenCode en tant que sous-processus compatible ACP qui communique avec votre editeur via JSON-RPC via stdio.

Ci-dessous des exemples pour les editeurs populaires qui prennent en charge ACP.


Zed

Ajoutez a votre configuration Zed (~/.config/zed/settings.json) :

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

Pour l’ouvrir, utilisez l’action agent: new thread dans la Palette de commandes.

Vous pouvez egalement lier un raccourci clavier en modifiant votre keymap.json :

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

JetBrains IDE

Ajoutez a votre IDE JetBrains acp.json selon la documentation :

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

Pour l’ouvrir, utilisez le nouvel agent ‘OpenCode’ dans le selecteur d’agent de chat AI.


Avante.nvim

Ajoutez a votre configuration Avante.nvim :

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

Si vous devez passer des variables d’environnement :

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

CodeCompanion.nvim

Pour utiliser OpenCode en tant qu’agent ACP dans CodeCompanion.nvim, ajoutez ce qui suit a votre configuration Neovim :

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

Cette configuration configure CodeCompanion pour utiliser OpenCode en tant qu’agent ACP pour le chat.

Si vous devez passer des variables d’environnement (comme OPENCODE_API_KEY), reportez-vous a Configuration des adaptateurs : Variables d’environnement dans la documentation CodeCompanion.nvim pour plus de details.

Support

OpenCode fonctionne de la meme maniere via ACP que dans le terminal. Toutes les fonctionnalites sont prises en charge :

  • Outils integres (operations de fichiers, commandes de terminal, etc.)
  • Outils personnalisés et commandes slash
  • Serveurs MCP configures dans votre configuration OpenCode
  • Regles specifiques au projet a partir de AGENTS.md
  • Formateurs et linters personnalisés
  • Systeme d’agents et d’autorisations