Si openclaw gateway status affiche déjà Runtime: running, que Telegram ne répond pas, que le relay Chrome reste gris et que les logs montrent 409 Conflict, vous êtes face au « triple symptôme » le plus fréquent en 2026 après déploiement : plan de contrôle sain, canaux métier non bouclés. Cet article s’adresse aux équipes qui ont terminé l’installation et visent OpenClaw en production 7×24 : quadruple sonde, tableau de symptômes, Runbook d’acceptation en six étapes et FAQ. Il se distingue de demi-installation, channels probe et gateway not ready pour éviter de modifier la config au mauvais stade.
Beaucoup d’équipes confondent « installation réussie » et « service externe prêt ». Dans l’architecture OpenClaw 2026, le processus Gateway, les canaux (Telegram / WhatsApp, etc.) et le relay navigateur sont trois chaînes indépendantes. Le Gateway ne garantit que RPC et contrôle ; le reste dépend du token, du mode webhook, de l’appairage, de l’URL WebSocket dans l’extension et du proxy. Si au moins deux symptômes ci-dessous correspondent, suivez cet article plutôt qu’une réinstallation complète.
Telegram totalement muet : bot en ligne, pas d’inbound dans les logs – souvent 409 (plusieurs Gateways sur le même token) ou webhook résiduel bloquant le polling.
409 Conflict dans les logs : le même BOT_TOKEN est consommé en long-polling par un second Gateway, un ancien conteneur ou un debug local.
Badge Relay actif, aucun onglet : extension sur mauvais port/hôte ; Nginx sans Upgrade: websocket. Depuis 2026.3.22+, pilote relay modifié – vérifier en multi-hôtes.
channels probe en échec, gateway status OK : souvent appairage non approuvé ou dmPolicy – voir channels probe, pas Gateway absent.
CLI distant Unauthorized : clés migrées de gateway.token vers gateway.auth.token – openclaw doctor --generate-gateway-token puis redémarrage.
18789 EADDRINUSE : « running » de surface avec ancien PID – libérer le port, gateway restart ; ne pas reconfigurer tous les canaux d’abord.
| Manifestation | Cet article (triple post-déploiement) | Article spécialisé |
|---|---|---|
| install.sh OK, pas de Gateway | Non | Demi-installation |
| gateway status: not ready / OOM | Non | gateway not ready |
| running + Telegram 409 / muet | Oui | + appairage : channels probe |
| running + Relay coupé | Oui | exposition publique + sécurité Gateway / Tailscale |
| models Unauthorized | partiel (clé token) | Auth |
« Sonde Gateway OK » ne prouve que la survie du plan de contrôle – canaux et relay navigateur exigent chacun leur propre acceptation.
Ordre fixe : prouver d’abord qu’un seul Gateway consomme le token, puis appairage et URL Relay. Ne pas enchaîner openclaw gateway restart tant que le 409 persiste.
Quadruple sonde (~5 min) : openclaw status → openclaw gateway status --deep → openclaw channels status --probe → openclaw doctor --deep ; autre terminal : openclaw logs --follow pour l’inbound.
Contrôle token Telegram : curl "https://api.telegram.org/bot<TOKEN>/getMe" ; si webhook configuré, deleteWebhook pour le polling.
Supprimer le 409 : arrêter toute autre instance Gateway/debug (ancien Docker, portable collègue). Une seule instance globale détient le token.
Appairage & dmPolicy : openclaw pairing approve telegram <CODE> ; si probe échoue, ajuster dmPolicy selon l’article channels – ne pas exposer le Gateway sur 0.0.0.0.
Chrome Relay : URL Gateway dans l’extension = écoute réelle (local ws://127.0.0.1:18789 ; derrière proxy wss:// + Upgrade). Multi-hôtes : impact relay 2026.3+.
Redémarrage & contrôle : openclaw doctor --fix → openclaw gateway restart → channels status --probe. macOS persistant : launchd ; Linux : Ubuntu systemd.
# Quadruple sonde post-déploiement + nettoyage webhook Telegram openclaw status openclaw gateway status --deep openclaw channels status --probe openclaw doctor --deep curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/getMe" curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/deleteWebhook" openclaw pairing approve telegram YOUR_CODE openclaw gateway restart
Conseil : si le Gateway n’écoute pas réellement, lisez d’abord demi-installation, puis revenez ici.
Attention : lier temporairement sur 0.0.0.0 est risqué. Production : loopback + Tailscale/tunnel ; rotation des tokens : article auth.
gateway.auth.token ; modifier seulement l’ancienne clé donne « doctor local OK, CLI distant 401 ».Connection: upgrade → « extension allumée, pas d’onglets ».Héberger le Gateway sur un portable en veille ou un Mac partagé avec la CI fait revenir le triple symptôme après mise à jour OS ou conflit de ports. Un nœud macOS dédié, toujours en ligne convient mieux aux canaux et au relay 7×24. Pour une capacité Mac maintenable en SSH « comme un VPS » avec la quadruple sonde dans une image standard, la location cloud Mac Mini NodeMini est souvent le choix le plus cohérent avec OpenClaw distant et la CI iOS, et limite les 409 « maison endormie, bureau actif ».
Suivez le Runbook §3 : channels status --probe, puis 409, deleteWebhook, pairing approve. Specs nœud : tarifs location.
L’article channels : appairage et dmPolicy. Celui-ci : canaux muets malgré Gateway démarré, Chrome Relay et 409. Lire les deux à la suite.
Pilote relay parfois ajusté ; multi-hôtes : notes de version. Accès et audit : centre d’aide.