Clawdbot Gateway
Clawdbot Gateway est le service permanent qui gère les connexions de messagerie, l'exécution des agents et le plan de contrôle de votre assistant IA.
Aperçu de Clawdbot Gateway
Clawdbot Gateway est le processus permanent qui gère les connexions de messagerie (WhatsApp via Baileys, Telegram via grammY, Discord, Slack et plus) et le plan de contrôle/événements. C'est le service central qui maintient votre assistant IA Clawdbot en fonctionnement 24h/24 et 7j/7.
Qu'est-ce que le Gateway ?
Le Gateway est un daemon à longue durée de vie qui :
- Maintient toutes les connexions aux fournisseurs de messagerie
- Expose une API WebSocket typée pour les requêtes, réponses et événements push du serveur
- Valide les trames entrantes selon le JSON Schema
- Émet des événements comme
agent,chat,presence,health,heartbeat,cron
Principe clé : Un Gateway par hôte ; c'est le seul endroit qui ouvre les sessions de messagerie (comme WhatsApp).
Démarrage Rapide
Démarrer le Gateway
clawdbot gateway --port 18789Pour des logs de débogage/traçage complets :
clawdbot gateway --port 18789 --verboseSi le port est occupé, terminez les listeners puis démarrez :
clawdbot gateway --forceMode Développement
Pour le développement avec rechargement automatique sur les modifications TypeScript :
pnpm gateway:watchArchitecture du Gateway
Composants
| Composant | Description |
|---|---|
| Gateway (daemon) | Maintient les connexions aux fournisseurs, expose l'API WS |
| Clients | App macOS, CLI, UI web se connectent via WebSocket |
| Nœuds | Appareils macOS/iOS/Android/headless avec role: node |
| WebChat | UI statique utilisant l'API WS du Gateway |
| Canvas Host | Sert le HTML modifiable par l'agent (port par défaut 18793) |
Flux de Connexion
Client Gateway
| |
|---- req:connect -------->|
|<------ res (ok) ---------|
| |
|<------ event:presence ---|
|<------ event:tick -------|
| |
|------- req:agent ------->|
|<------ res:agent --------|
|<------ event:agent ------|Configuration du Gateway
Configuration de Base
Emplacement du fichier de configuration : ~/.clawdbot/clawdbot.json
{
"gateway": {
"port": 18789,
"auth": {
"token": "your-secret-token"
},
"reload": {
"mode": "hybrid"
}
}
}Configuration du Port
Priorité du port :
- Flag CLI
--port - Variable d'environnement
CLAWDBOT_GATEWAY_PORT gateway.portdans la configuration- Par défaut : 18789
Authentification
L'authentification du Gateway est requise par défaut. Configurez via :
gateway.auth.tokendans la configuration- Variable d'environnement
CLAWDBOT_GATEWAY_TOKEN gateway.auth.passwordpour l'authentification par mot de passe
Les clients doivent envoyer connect.params.auth.token ou connect.params.auth.password.
Rechargement à Chaud
Le rechargement à chaud de la configuration surveille ~/.clawdbot/clawdbot.json :
| Mode | Description |
|---|---|
hybrid (par défaut) | Applique à chaud les changements sûrs, redémarre pour les critiques |
off | Désactive le rechargement à chaud |
Services du Gateway
Points de Terminaison HTTP
Le Gateway sert plusieurs points de terminaison HTTP sur le même port :
| Point de terminaison | Description |
|---|---|
/v1/chat/completions | Compatible OpenAI Chat Completions |
/v1/responses | API OpenResponses |
/tools/invoke | Invocation d'outils |
| UI de Contrôle | Tableau de bord web |
Canvas Host
Démarre par défaut sur le port 18793, servant :
http://<gateway-host>:18793/__clawdbot__/canvas/Depuis ~/.clawdbot/workspace/canvas. Désactiver avec :
canvasHost.enabled: falseCLAWDBOT_SKIP_CANVAS_HOST=1
Tableau de Bord
Accédez à l'UI de Contrôle à :
http://127.0.0.1:18789/Ou exécutez :
clawdbot dashboardAccès à Distance
Tunnel SSH (Recommandé)
ssh -N -L 18789:127.0.0.1:18789 user@hostLes clients se connectent ensuite à ws://127.0.0.1:18789 via le tunnel.
Tailscale/VPN
Préféré pour l'accès à distance en production. Le même handshake + token d'authentification s'applique.
Gestion du Gateway
Commandes de Service
# Vérifier le statut
clawdbot gateway status
# Vérification de santé
clawdbot health
# Audit de sécurité
clawdbot security audit --deep
# Arrêter le gateway
clawdbot gateway stopSupervision
macOS : Utilise LaunchAgent (bot.molt.<profile>)
Linux : Utilise le service utilisateur systemd (clawdbot-gateway-<profile>.service)
Windows : Utilise Windows Service (Clawdbot Gateway (<profile>))
Gateways Multiples
Généralement inutile — un Gateway peut servir plusieurs canaux et agents. Utilisez plusieurs Gateways uniquement pour :
- La redondance
- L'isolation stricte (ex., bot de secours)
Exigences :
- Isoler l'état + la configuration
- Utiliser des ports uniques
Protocole Wire
Transport
- WebSocket avec des trames texte contenant des payloads JSON
- La première trame doit être
connect
Types de Messages
Requêtes :
{"type": "req", "id": "...", "method": "...", "params": {...}}Réponses :
{"type": "res", "id": "...", "ok": true, "payload": {...}}Événements :
{"type": "event", "event": "...", "payload": {...}, "seq": 1}Idempotence
Les clés d'idempotence sont requises pour les méthodes à effets de bord (send, agent) pour un retry sûr.
Dépannage
Le Gateway Ne Démarre Pas
- Vérifiez si le port est utilisé :
lsof -i :18789 - Consultez les logs :
cat /tmp/clawdbot/gateway.log - Utilisez
--forcepour terminer les listeners existants
Problèmes de Connexion
- Vérifiez que le token d'authentification correspond
- Vérifiez la connectivité réseau
- Consultez les logs de handshake WebSocket avec
--verbose
Problèmes de Canal
- Vérifiez le statut du canal :
clawdbot channels status - Ré-authentifiez les canaux :
clawdbot channels login - Consultez les logs spécifiques au canal
Bonnes Pratiques
- Utilisez des Tokens d'Auth : Configurez toujours
gateway.auth.tokenpour la sécurité - Surveillez la Santé : Vérifiez régulièrement
clawdbot health - Utilisez la Supervision : Laissez launchd/systemd gérer les redémarrages
- Sauvegardez la Configuration : Conservez des sauvegardes de
~/.clawdbot/clawdbot.json - Consultez les Logs : Vérifiez régulièrement les logs pour détecter les problèmes
Prochaines Étapes
- Guide d'Installation de Clawdbot - Guide d'installation complet
- Intégration WhatsApp de Clawdbot - Connecter à WhatsApp
- Intégration Telegram de Clawdbot - Connecter à Telegram
Streaming Clawdbot
Découvrez les réponses en streaming de l'assistant IA Clawdbot, le chunking, les indicateurs de saisie et la livraison de messages en temps réel.
Configuration de Clawdbot Gateway
Guide complet pour configurer la passerelle de l'assistant IA Clawdbot. Découvrez les options de configuration, les variables d'environnement et les paramètres avancés.