OPENCLAW MULTI
CHANNELS_
JSONL.
Empiler Telegram, messagerie d’entreprise et bots sur un seul Gateway accélère la livraison — jusqu’au jour où tous les canaux se taisent alors que HTTP répond encore 200. Depuis 2026.4.x, le RPC channels.start aide à démarrer des comptes nommés ; une seule *.jsonl sous ~/.openclaw/agents/main/sessions/ peut gonfler à des dizaines de mégaoctets via cron et agents longue durée. Le Gateway affiche souvent une ligne Bootstrap puis se fige — CPU proche du plein, pas de nouveaux ticks. Ce n’est pas forcément un problème de modèle ni OAuth. Lisez en parallèle WebSocket / Ed25519, sessions / OAuth / cron, systemd / launchd.
1. Points douloureux — pourquoi « démarré » n’est pas « sain »
1) channels.start confirme les comptes — pas que la boucle principale a du temps pour les plugins. 2) Le parsing Bootstrap peut être synchrone ; un fichier monstre bloque la boucle Node malgré les ports ouverts. 3) Le multi-canal brouille les symptômes avec d’anciennes erreurs d’annonces — mesurer d’abord la taille. 4) plist Mac distant : des valeurs HOME différentes déplacent le fichier que vous lisez par rapport à celui que le Gateway consomme.
2. Matrice symptômes
| Signal | Vérifier en premier | Preuve |
|---|---|---|
| Logs arrêtés après la ligne Bootstrap | jsonl énorme | ls -lhS sessions/*.jsonl |
| CPU haute, mémoire plate | Parsing synchrone | Trace sans ticks canal |
| Uniquement à distance | Environnement launchd | launchctl print |
3. Cinq étapes
Étape 1
Geler les changements ; documenter le hash Gateway.
Étape 2
channels.start avec channel et optionnellement accountId — pas de mélange avec un restart aveugle.
Étape 3
Identifier la plus grosse jsonl ; sauvegarder avant toute coupure.
Étape 4
Arrêter le Gateway, déplacer le fichier, supprimer les *.lock, redémarrage à froid.
Étape 5
openclaw gateway status, smoke mono-canal, puis cron — aligner les plist sur les Mac distants comme dans le guide launchd.
4. Matrice décision
| Preuve | Priorité | Éviter |
|---|---|---|
| Fichier >50 Mo + silence Bootstrap | Politique d’archivage | Boucle de restart infinie |
| Chemin announce seulement | Mise à jour avec correctif file d’attente | Couper les journaux d’audit sans raison |
Seuils : trois passages monitoring >40 Mo → archivage obligatoire ; silence >120 s après Bootstrap → P0 ; deux figements distants/semaine → surveiller le disque.
5. FAQ
Déplacer sans perte ? Uniquement avec sauvegarde ; disponibilité avant l’historique chat en cas de panne prod.
channels.start remplace le restart ? Non — sans déplacement de fichier, le restart aide rarement.
Pourquoi Windows vs Mac diffèrent ? Antivirus, compte du planificateur et sémantique des chemins — toujours mesurer plutôt qu’étiqueter.
6. Cas
OAuth suspect — en réalité 80 Mo main.jsonl ; après déplacement, retour à la normale en secondes.
Leçon observabilité : les taux de croissance stockage doivent être sur le même tableau de bord que le rafraîchissement des tokens.
7. Conclusion MACGPU
La prochaine SLA après la complétude RPC est la vélocité du stockage de sessions. Un VPS pur convient aux tests ; pour déboguer avec les toolchains Apple en parallèle, poser le Gateway sur un Mac distant thermiquement stable — nœuds MACGPU à l’heure — sépare la production du Wi‑Fi café.
En synthèse : le silence vient souvent d’un embouteillage JSONL sur la boucle, pas d’une panne provider — avant TLS/handshake, mesurer les octets ; la location Mac distant aligne les pics et le budget refroidissement.