OPENCLAW MULTI
CHANNELS_
JSONL.

Мультиканальный шлюз

Несколько мессенджеров на одном Gateway экономят время — пока не случится «все каналы немы, HTTP жив». С 2026.4.x RPC channels.start поднимает именованные аккаунты; одна *.jsonl в ~/.openclaw/agents/main/sessions/ может раздуться до десятков мегабайт из‑за cron и долгих агентов. Gateway часто пишет строку Bootstrap и замирает — высокий CPU, нет новых handler-тиков. Это не обязательно сбой модели или OAuth. Читайте вместе с WebSocket / Ed25519, sessions / OAuth / cron, systemd / launchd.

1. Типичные ошибки — почему «запущено» не значит «здорово»

1) channels.start подтверждает аккаунты — не то, что главный цикл успевает кормить плагины. 2) Разбор Bootstrap может быть синхронным; монструозный файл блокирует цикл Node при открытых портах. 3) Мультиканал смешивает симптомы со старыми багами очереди announce — сначала измеряйте размер. 4) Удалённый Mac plist: разный HOME — вы смотрите не тот файл, который ест Gateway.

2. Матрица симптомов

СигналСначалаДоказательство
Логи после Bootstrap не идутОгромная jsonlls -lhS sessions/*.jsonl
Высокий CPU, память ровнаяСинхронный парсингТрейс без тиков канала
Только удалённоСреда launchdlaunchctl print

3. Пять шагов

Шаг 1

Заморозить изменения; зафиксировать хеш Gateway.

Шаг 2

channels.start с channel и при необходимости accountId — не смешивать со слепым restart.

Шаг 3

Найти самую большую jsonl; перед разрезом полный бэкап.

ls -lhS ~/.openclaw/agents/main/sessions/*.jsonl | head -5

Шаг 4

Остановить Gateway, перенести файл, удалить устаревшие *.lock, холодный старт.

Шаг 5

openclaw gateway status, smoke одного канала, затем cron — plist на удалённых Mac как в гайде launchd.

4. Матрица решений

ДоказательствоПриоритетИзбегать
Файл >50 МБ + тишина BootstrapПолитика архиваБесконечный restart
Только путь announceРелиз с фиксом очередиСлепое отключение аудита

Пороги: три проверки подряд >40 МБ → обязательный архив; тишина >120 с после Bootstrap → P0; два зависания в неделю на удалённом Mac → мониторинг диска.

5. FAQ

Перенос без потерь? Только с бэкапом; при падении prod доступность важнее полной истории чата.

channels.start вместо restart? Нет — без переноса файла restart редко лечит зависание Bootstrap.

Почему Windows и Mac по-разному? Антивирус, учёт планировщика и семантика путей — всегда метрики, не ярлыки.

6. Кейс

Думали OAuth — на деле 80 МБ main.jsonl; после выноса всё ожило за секунды.

Урок наблюдаемости: скорость роста хранилища сессий должна быть на том же дашборде, что и обновление токенов.

7. Вывод и MACGPU

Следующая SLA после полноты RPC — скорость роста хранилища сессий. Чистый VPS годится для тестов; когда нужна отладка с Apple toolchain, вынесите Gateway на стабильный удалённый Mac — почасовые узлы MACGPU отделяют прод от кафе‑Wi‑Fi.

В двух словах: чаще всего тишина — «пробка» JSONL в цикле событий, не падение провайдера; до TLS и handshake измеряйте байты; аренда удалённого Mac выравнивает пики и охлаждение.