OPENCLAW MULTI
CHANNELS_
JSONL.
Mit Telegram, Slack-Ersatz und internen Bots auf einem Gateway zu laufen klingt effizient — bis plötzlich alle Kanäle schweigen, während HTTP weiter 200 liefert. Seit 2026.4.x hilft der RPC channels.start, Konten gezielt zu starten; gleichzeitig haben Community-Threads gezeigt, dass eine einzelne *.jsonl unter ~/.openclaw/agents/main/sessions/ durch Cron und Langläufer auf dutzende Megabyte anschwellen kann. Gateway protokolliert dann oft eine Bootstrap-Zeile und verharrt — CPU nahe 100 %, keine neuen Handler-Ticks. Das ist kein Modellproblem und oft auch kein OAuth-Problem. Lesen Sie parallel WebSocket/Ed25519, sessions/OAuth/cron, systemd/launchd.
1. Schmerzpunkte — warum RPC «gestartet» nicht «gesund» bedeutet
1) channels.start bestätigt Konten — nicht, dass die Hauptschleife Zeit für Plugins hat. 2) Bootstrap-Parsing kann synchron sein; eine Monsterdatei blockiert den Node-Loop trotz offener Ports. 3) Multi-Channel verwischt Symptome mit historischen Announce-Fehlern — erst Dateigröße messen. 4) Remote-Mac-plist: unterschiedliche HOME-Werte verschieben die Datei, die Sie lesen, nicht die, die Gateway frißt.
2. Symptommatrix
| Signal | Zuerst prüfen | Beweis |
|---|---|---|
| Logs stoppen nach Bootstrap-Zeile | Riesige jsonl | ls -lhS sessions/*.jsonl |
| Hohe CPU, flaches RAM | Synchrones Parsen | Trace ohne Kanal-Ticks |
| Nur Remote reproduzierbar | launchd-Umgebung | launchctl print |
3. Fünf Rettungsschritte
Schritt 1
Änderungen einfrieren; Gateway-Hash dokumentieren.
Schritt 2
channels.start mit channel und optional accountId — keine Vermischung mit blindem Restart.
Schritt 3
Größte jsonl identifizieren, vor jedem Cut vollständig sichern.
Schritt 4
Gateway stoppen, Datei verschieben, *.lock löschen, kalt starten.
Schritt 5
openclaw gateway status, Einzelkanal-Smoke, dann Cron — plist auf Remote-Macs wie im launchd-Leitfaden angleichen.
4. Entscheidungsmatrix
| Beweis | Primär | Vermeiden |
|---|---|---|
| Datei >50 MB + Bootstrap-Stille | Archivierungsrichtlinie | Endlos-Restart |
| Nur Announce-Pfad betroffen | Release mit Queue-Fix | Audit-Logs killen |
Schwellen: drei Monitoringläufe >40 MB → Pflichtarchiv; Stille >120 s nach Bootstrap → P0; zwei Remote-Freezes/Woche → Datenträger überwachen.
5. FAQ
Verschieben ohne Datenverlust? Nur mit Backup; Verfügbarkeit vor Chat-Historie bei Produktionsausfall.
channels.start ersetzt Restart? Nein — ohne Dateiverschiebung hilft Restart selten.
Warum Windows vs. Mac unterschiedlich? AV, Scheduler-Konto und Pfadsemantik — immer Messwerte statt Labels.
6. Fallstudie
OAuth-Verdacht — in Wahrheit 80 MB main.jsonl; nach Auslagerung Sekunden bis zur Normalität.
Die Observability-Lektion: Speicher-Wachstumsraten gehören auf dasselbe Dashboard wie Token-Refresh.
7. Einordnung & MACGPU
Nächste SLA nach RPC-Vollständigkeit ist Speicher-Velocity. Reines VPS eignet sich zum Test; wenn Apple-Toolchains parallel debuggt werden müssen, Gateway auf einen thermisch stabilen Remote-Mac zu legen — MACGPU-Stundenknoten — trennt Produktion vom Laptop-WLAN-Risiko.
Abschluss: Schweigen meist JSONL-Stau am Loop, nicht Provider-Ausfall — vor TLS/Handshake drehen, Bytes messen; Remote-Mac-Miete aligniert Peaks mit Kühlbudget.