Les agents ACP d’OpenClaw
L’installation d’acpx en deux commandes, les pièges du premier lancement, les prérequis d’exécution et les dix-sept identifiants de harnais
Vous voulez piloter Claude Code ou Gemini CLI depuis un message Telegram plutôt que depuis un terminal, et OpenClaw sait le faire via l’Agent Client Protocol. Une session ACP lance le véritable harnais externe comme un processus sur l’hôte de la passerelle, suit chaque lancement comme une tâche de fond, et peut lier une conversation ou un fil pour que les suites continuent d’atteindre le même harnais. Il faut d’abord une extension d’exécution, et une courte liste de conditions décide si votre agent apprend un jour que ce chemin existe.
Installer l’extension d’exécution acpx
- Les installations packagées utilisent l’extension d’exécution officielle acpx, publiée sous la portée openclaw sur npm, et cela tient en deux commandes : openclaw plugins install, en nommant ce paquet à portée, puis openclaw config set plugins.entries.acpx.enabled true. Les dépôts source peuvent utiliser à la place l’extension d’espace de travail locale extensions/acpx après pnpm install. Lancez ensuite /acp doctor pour un contrôle de disponibilité, ou /acp install pour qu’OpenClaw affiche les étapes déterministes d’installation et d’activation.
- Si plugins.allow est défini, c’est un inventaire d’extensions restrictif et non une indication, et il doit inclure acpx, sinon le backend ACP installé est bloqué intentionnellement. C’est l’échec de premier lancement le plus souvent pris pour une installation cassée, et il apparaît sous la forme de l’erreur indiquant que le backend d’exécution ACP n’est pas configuré ; /acp doctor signale l’entrée manquante dans la liste d’autorisation au lieu de vous laisser deviner.
- L’extension acpx embarque directement l’exécution ACP, il n’y a donc ni binaire acpx séparé ni version à configurer. Elle enregistre le backend embarqué au démarrage de la passerelle et attend une sonde de santé avant le signal ready de la passerelle, sonde qui fournit aussi les diagnostics d’échec. Elle est bornée par plugins.entries.acpx.config.timeoutSeconds, dont la valeur par défaut est de 120 secondes pour que des harnais plus lents comme Gemini CLI terminent le démarrage et l’initialisation ACP.
- L’adaptateur ACP Codex est livré avec l’extension acpx et démarre localement quand c’est possible, avec un CODEX_HOME isolé dans lequel OpenClaw copie les entrées de confiance de projet approuvées ainsi que la configuration sûre de routage de modèle et de fournisseur, tandis que l’authentification, les notifications et les hooks restent uniquement dans la configuration de l’hôte. Les autres adaptateurs de harnais peuvent être récupérés à la demande avec npx au premier usage, si bien qu’un hôte sans npm ou sans accès réseau échoue sur ces récupérations tant que les caches ne sont pas préchauffés ou l’adaptateur installé autrement.
Si l’une des conditions échoue, les compétences ACP et les indications ACP de sessions_spawn restent masquées afin que l’agent ne propose pas un backend indisponible.
Pourquoi les compétences ACP peuvent rester invisibles
Les conditions sont énumérées en entier : ACP doit être activé, la répartition ne doit pas être désactivée, la session courante ne doit pas être bloquée par le bac à sable, et un backend d’exécution doit être chargé et sain. Un agent qui ne vous a jamais proposé un lancement ACP rapporte en général fidèlement sa propre configuration plutôt qu’il n’ignore votre demande. Les deux moitiés échouent différemment : acp.dispatch.enabled=false met en pause la répartition ACP automatique dans les fils sans masquer ni bloquer un appel explicite à sessions_spawn avec le runtime acp, alors qu’un demandeur en bac à sable est refusé d’emblée parce que l’exécution ACP se fait côté hôte. Depuis une session en bac à sable, la réponse documentée est le runtime subagent.
La liste des prérequis
- Avant d’incriminer OpenClaw, vérifiez que /acp doctor signale un backend activé et sain, que l’identifiant cible est autorisé par acp.allowedAgents quand cette liste est définie, et que la commande du harnais peut réellement démarrer sur l’hôte de la passerelle. Chacun de ces points a son propre message d’erreur plutôt qu’un échec générique, si bien que le message reçu réduit déjà le champ des causes.
- L’authentification du fournisseur doit déjà exister sur l’hôte pour le harnais visé : claude, codex, gemini, opencode, droid et les autres ont chacun leur propre connexion. Une erreur d’authentification fournisseur signifie qu’OpenClaw est sain et que la CLI ou le fournisseur cible n’est simplement pas connecté, ce qui se corrige en vous connectant ou en fournissant la clé du fournisseur dans l’environnement de l’hôte de la passerelle, pas en modifiant la configuration d’OpenClaw.
- Le modèle choisi doit exister pour ce harnais, car les identifiants de modèle ne sont pas portables d’un harnais à l’autre, et le contrôle du modèle dépend des capacités de l’adaptateur : un harnais qui n’annonce ni la capacité ACP models ni son propre drapeau de modèle au démarrage ne peut pas du tout être forcé sur un modèle. Le cwd demandé doit exister et être accessible, sinon omettez-le et laissez le backend utiliser sa valeur par défaut.
Un point décide du choix avant toute configuration : les outils d’extension d’OpenClaw et les outils intégrés d’OpenClaw ne sont pas exposés aux harnais ACP par défaut, et les deux ponts MCP qui changent cela sont explicites et désactivés par défaut. Si vous voulez une exécution déléguée native d’OpenClaw avec ses propres outils, c’est une exécution Les sous-agents d’OpenClaw, avec sa propre clé de session et sa propre commande ; si vous voulez seulement une CLI d’IA locale comme modèle de repli texte seul, les Les backends CLI d’OpenClaw ne sont ni ACP ni un environnement de harnais, sans outils OpenClaw et sans contrôles ACP.
Les dix-sept identifiants de harnais
Avec le backend acpx, voici les identifiants à passer à /acp spawn ou à sessions_spawn comme agentId : claude, codex, copilot, cursor, droid, fast-agent, gemini, iflow, kilocode, kimi, kiro, mux, opencode, openclaw, qoder, qwen et trae. claude demande une authentification Claude Code sur l’hôte, copilot une connexion à la CLI ou à l’exécution Copilot, cursor lance cursor-agent acp, droid demande une authentification Factory ou Droid ou FACTORY_API_KEY dans l’environnement du harnais, gemini demande une authentification Gemini CLI ou une clé d’API, opencode demande une authentification CLI ou fournisseur OpenCode, et openclaw est le pont de passerelle qui permet à un harnais compatible ACP de répondre à une session de passerelle OpenClaw. codex est le repli ACP explicite, utilisé seulement quand le chemin natif /codex est indisponible ou quand ACP est demandé nommément. pi est également enregistré dans le backend acpx mais n’est pas un harnais de codage au même sens. Chaque lancement atterrit dans les Les tâches de fond d’OpenClaw, et les Les modes de permission d’OpenClaw sont l’endroit où les réglages au niveau du harnais côtoient les approbations d’exécution d’OpenClaw : une session ACP n’a pas de TTY interactif, donc un travail de codage riche en écritures et en exécutions demande en général un profil capable d’avancer sans interaction.
Sur Diali
Diali héberge OpenClaw pour vous, et chaque client fait tourner son propre assistant plutôt qu’une part d’un assistant partagé. La configuration d’exécution est générée depuis le tableau de bord et remplacée à chaque version, si bien que les clés de politique sont écrites pour vous au lieu d’être modifiées à la main sur une machine dont il faut se souvenir. L’état vit sur un volume persistant, ce qui conserve une session et son historique au fil des mises à niveau ; des instantanés quotidiens et une restauration en un clic sont disponibles grâce à l’option Sauvegardes (incluse avec Max). OpenClaw hébergé sur Diali présente ce que couvre l’exécution hébergée et Tarifs Diali donne les formules.
- Deux commandes installent acpx, puis /acp doctor avant tout le reste.
- Des indications ACP masquées signalent une condition échouée, pas une fonction absente.
- Dix-sept identifiants de harnais, chacun avec sa propre connexion sur l’hôte.
Arrêtez de lire, construisez le vôtre
Configurez un agent, choisissez un canal, et faites-le travailler dans l’application que vous gardez déjà ouverte.
