Разработка ИИ16 минут

OpenClaw не отвечает: найдите, где остановилось сообщение

Если OpenClaw молчит, проверьте CLI, Gateway, панель, канал, модель и состояние после обновления. Исправляйте только первый сбой и проверяйте исходный канал.

Yingtu AI Editorial
Yingtu AI Editorial
YingTu Editorial
4 февр. 2026 г.
Обновлено 13 июл. 2026 г.
16 минут
OpenClaw не отвечает: найдите, где остановилось сообщение
yingtu.ai

Содержание

Заголовки не найдены

Если сообщение отправлено в OpenClaw, но ответ не приходит, не начинайте с переустановки и не удаляйте ~/.openclaw. Молчание одного Telegram-, Discord- или WebChat-канала ещё не означает, что остановилась вся система. Запишите точное время, откройте живой журнал и повторите проблему один раз, чтобы увидеть, где первым исчезает подтверждение работы.

Сначала выполните проверки, которые не должны исправлять конфигурацию:

hljs bash
openclaw status
openclaw status --all
openclaw gateway probe
openclaw gateway status
openclaw doctor
openclaw channels status --probe
openclaw logs --follow

Оставьте openclaw logs --follow во втором терминале и отправьте из проблемного канала короткое сообщение. Обычный openclaw doctor формирует отчёт. Команда openclaw doctor --fix меняет конфигурацию или состояние и не относится к этому первому шагу.

Что ломается первымГде продолжать проверку
CLI не находится или базовый status завершается ошибкойУстановка, путь к исполняемому файлу и PATH
Gateway недоступен либо runtime/connectivity не подтвержденыСлужба, конфигурация, аутентификация и порт
Gateway исправен, но не работает только панельURL, origin, идентификатор устройства и токен панели
Gateway исправен, но молчит один каналСопряжение, упоминание, allowlist, токен, scope и разрешения
Входящее сообщение есть в журнале, но модель не завершает ответПровайдер, модель, авторизация, лимит или тайм-аут
Сбой начался после обновления, а версии расходятсяCLI, управляемая служба, плагины и владелец конфигурации

Остановитесь здесь: пока не найден первый неисправный участок, не запускайте openclaw doctor --fix, не перезапускайте все службы, не переустанавливайте OpenClaw, не меняйте все ключи, не очищайте все сеансы и не удаляйте ~/.openclaw.

Зафиксируйте один сбой, прежде чем что-либо менять

Фраза «бот внезапно замолчал» почти бесполезна. Рабочая запись содержит время и часовой пояс, конкретный канал, исправные поверхности и последнее изменение. Например: «В 14:32 MSK Telegram-бот принял тестовое сообщение, но не ответил; WebChat в ту же минуту работал; утром обновлялся OpenClaw». Такая запись сразу отделяет общий отказ от проблемы одного транспорта.

Сохраните путь и версию:

hljs bash
which -a openclaw
openclaw --version
openclaw status --all
openclaw doctor

which -a openclaw особенно важен на VPS, в WSL, при установке через несколько менеджеров пакетов или при наличии systemd/launchd. Оболочка может запускать одну копию CLI, а управляемая служба — другую. Обновление двоичного файла в текущем терминале не доказывает, что именно его использует Gateway.

Запишите три группы данных:

  • Масштаб: молчит только группа, весь Telegram, панель, все каналы или даже CLI?
  • Последнее изменение: обновление, перезагрузка VPS, смена токена, прав, allowlist, модели, Node.js или менеджера пакетов?
  • Время: когда отправлено тестовое сообщение, когда появилась ошибка и когда перезапускалась служба?

После этого воспроизведите проблему ровно один раз. Журнал уже должен быть открыт. Отправьте короткий текст вроде «ответь OK» из исходного чата. Серия из десяти сообщений смешает временные метки, может вызвать rate limit или блокировку аутентификации и создаст несколько конкурирующих запусков.

По журналу определите наблюдаемый класс:

  1. входящего события нет;
  2. событие есть, но его отклоняет pairing, mention, allowlist или разрешение;
  3. вызов дошёл до провайдера, который вернул ошибку авторизации, лимита, модели или тайм-аута;
  4. модель завершила ответ, но отправка в канал не состоялась;
  5. OpenClaw сообщил об успешной отправке, а клиент её не показывает.

Перед передачей вывода удалите токены, ключи, заголовки Authorization, номера телефонов, личные сообщения и идентификаторы пользователей. Полезная форма — token: [REDACTED]: структура остаётся понятной, секретное значение не раскрывается.

Найдите первое отсутствующее подтверждение

Ответ проходит через несколько независимых участков. CLI должен обращаться к ожидаемой установке; Gateway — быть доступным; панель или мессенджер — принять вход; провайдер — завершить модельный запрос; канал — доставить результат обратно. Процесс может быть «запущен», а один из следующих участков — нет.

УчастокДостаточное подтверждениеЕсли подтверждения нет
CLIРазрешается ожидаемый путь, status возвращает данныеСначала исправьте установку или PATH
GatewayProbe доступен, runtime запущен, connectivity в нормеПроверяйте службу, config, auth, bind и порт
ПанельОткрывается правильный Gateway и проходит входПроверяйте URL, origin, device identity и токен
Каналchannels status --probe проверяет нужный аккаунтПроверяйте pairing, mention, allowlist, scope и права
Провайдер/модельВход принят, нужная модель выбрана и вызов завершёнПроверяйте auth, лимит, доступность и тайм-аут
Исходящая доставкаЗавершённый текст передан в исходный чат или тредПроверяйте ответ платформы и целевой контекст

Официальная русская страница устранения неполадок также начинает со status, Gateway, каналов и журнала. Практическое правило: продолжайте только с первого участка без подтверждения. Если Gateway не достигается, настройка упоминания в Discord пока не имеет значения. Если Gateway и WebChat работают, а молчит одна группа, переустановка всей службы только увеличит область риска.

Runtime: running — взгляд менеджера процессов. Connectivity probe: failed — реальная попытка CLI соединиться с WebSocket Gateway. Поэтому «служба загружена» и «Gateway доступен» нельзя считать одним состоянием. Для удалённого Gateway дополнительно проверяются фактический URL, туннель/Tailscale и доступность WebSocket, а не просто наличие процесса на локальном компьютере.

Gateway остановлен, недоступен или запущен не той службой

Оставайтесь в этой ветке, если openclaw gateway probe недоступен либо status показывает проблему runtime, connectivity, config или endpoint. Сначала соберите детали:

hljs bash
openclaw gateway probe
openclaw gateway status
openclaw gateway status --deep
openclaw doctor
openclaw logs --follow

Официальный регламент Gateway связывает разные сигнатуры с разными действиями.

Требуется режим local

Сообщение вида Gateway start blocked: set gateway.mode=local не означает, что local нужно включить всегда. Сначала решите, должна ли эта машина размещать Gateway. Для локального хоста исправьте активный config. Для удалённого клиента настройка local создаст второй экземпляр вместо подключения к настоящему Gateway.

Внешний bind без аутентификации

Отказ слушать не-loopback адрес без auth — защитная граница. Настройте ожидаемый метод аутентификации или верните локальный bind. Не отключайте проверку ради запуска: на VPS это способно открыть управляющий интерфейс внешней сети.

Порт занят

EADDRINUSE означает, что порт уже принадлежит процессу. Установите, является ли он нужным Gateway, старым экземпляром или другой службой. Не завершайте случайный PID и не меняйте порт одновременно на сервере и клиентах: панель и туннель могут остаться на старом endpoint.

CLI и служба используют разные конфигурации

Сравните Config (cli), Config (service), profile, state directory, двоичный путь и пользователя службы. Редактирование одного файла не помогает, если systemd запускает другой profile. Сначала определите реально обслуживающую установку, затем меняйте её определение.

Удалённый Gateway или туннель недоступен

На VPS и в remote mode проверяйте не «есть ли интернет вообще», а достижим ли конкретный WebSocket endpoint, работает ли туннель и совпадает ли токен удалённого подключения. Проблема маршрута или DNS должна подтверждаться probe и сетевой ошибкой. Не советуйте обход блокировок и не переносите Gateway к случайному провайдеру без подтверждения, что отказ находится в сетевом участке.

После одного точечного изменения повторите ту же команду probe, которая не работала. Перезапуск оправдан, если исправленный config должен перечитаться или установлено, что службой владеет устаревший процесс. Сам перезапуск не отвечает на вопрос, что было неверно: mode, auth, port, URL или служебный профиль.

Gateway исправен: разделите панель и один молчащий канал

Доступный Gateway резко сужает поиск. Ошибка панели и ошибка Telegram/Discord проходят разные границы доверия.

Не работает только Dashboard или WebChat

Сверьте URL панели с endpoint из Gateway status. Затем ищите в живом журнале отказ origin, требование device identity, AUTH_TOKEN_MISMATCH, повторные unauthorized или блокировку после неудачных входов.

Меняйте только доказанный участок:

  • исправьте устаревший URL;
  • разрешите только действительно доверенный origin;
  • замените токен панели только при подтверждённом mismatch;
  • завершите требуемую регистрацию устройства вместо отключения проверки;
  • после нескольких неудачных входов остановите повторы, чтобы не усилить блокировку.

После изменения перезагрузите только панель и подтвердите вход. Токены мессенджеров и ключ модели в этой цепочке не участвовали.

Не отвечает Telegram, Discord, Slack или другой один канал

Проверьте реальный аккаунт:

hljs bash
openclaw channels status --probe
openclaw pairing list --channel CHANNEL

При нескольких аккаунтах укажите нужный account. Затем отправьте одно короткое сообщение и сопоставьте его с журналом.

  • Нет входящего события: проверьте, добавлен ли бот в нужный чат, относится ли token к этому аккаунту и какой экземпляр обслуживает webhook/polling.
  • Требуется упоминание: отправьте корректное @mention; не отключайте правило для всех групп из-за неправильного теста.
  • Ожидается pairing: одобрите запрос правильного пользователя, а не убирайте механизм сопряжения.
  • Блокирует allowlist: подтвердите ID пользователя, комнаты или guild и добавьте только необходимое значение.
  • not_in_channel, missing_scope, Forbidden: исправьте членство, scope или право, указанное платформой.
  • 401/403: сначала установите, кто вернул код — канал, провайдер модели или OpenRouter.

Русские обсуждения часто сводят проблему VPS к сети, а проблему Telegram — к Privacy Mode. Оба варианта возможны лишь при соответствующем сигнале. Отсутствие события в журнале, прямые сообщения, группа, упоминание и обратная отправка — разные тесты. Для полной настройки канала используйте английский регламент интеграции OpenClaw; точный OpenRouter 403 имеет отдельную ветку диагностики.

Сообщение вошло: проследите модель и обратную доставку

Не переходите к модели без входящего события. Если его нет, запрос не достиг model route, и смена модели или provider key не исправит вход канала.

При наличии входа проверяйте по порядку:

  1. политика приняла сообщение;
  2. выбран ожидаемый provider и model;
  3. провайдер принял credentials;
  4. модель завершила вызов;
  5. результат передан исходящему каналу.

401/403 указывают на аутентификацию, разрешение аккаунта или доступ к модели. 429 относится к quota/rate. Timeout или unavailable требуют ограниченного повтора либо уже настроенного fallback, а не массовой смены ключей. Model not found или setup error требуют сверки идентификатора и совместимости. Актуальные детали принадлежат официальной диагностике провайдеров, а не старой таблице моделей.

Если модель завершила ответ, но чат молчит, покиньте модельную ветку. Изучите ответ платформы: разрешено ли боту писать, верен ли thread, не отклонён ли формат или вложение, совпадает ли destination. Сначала проверьте простой текст «OK», затем — форматирование и файлы.

Полезны два контролируемых сравнения: тот же короткий текст через другую уже работающую поверхность и новый тестовый сеанс без удаления старого. Они отделяют общий вызов модели от проблемы конкретного контекста. Старый сеанс следует сохранить до фиксации журнала.

После обновления сравните CLI, службу и конфигурацию

Сбой после update часто является расхождением владельцев: CLI обновлён, служба нет; новый config открывается старым CLI; plugin загружает прежнее дерево зависимостей; старый клиент соединяется с новым Gateway.

Зафиксируйте состояние:

hljs bash
openclaw update --dry-run
openclaw update status --json
which -a openclaw
openclaw --version
openclaw gateway status --deep
openclaw config get meta.lastTouchedVersion

Официальная процедура обновления координирует замену пакета, Doctor и перезапуск Gateway. Ручная замена через другой менеджер пакетов может обновить только CLI в shell.

  • Старый CLI и config, изменённый новой версией: сначала исправьте PATH.
  • CLI и service указывают на разные установки: обновите подтверждённую службу и снова прочитайте её версию.
  • Plugin не загружается: сохраните точную ошибку зависимости и исправляйте этот plugin, не удаляя все.
  • Protocol/capability mismatch: остановите старый клиент или wrapper и подключитесь совместимой версией.
  • Все версии совпадают: вернитесь к обычной цепочке; близость к update ещё не доказывает причину.

На 13 июля 2026 года GitHub помечал OpenClaw v2026.6.11 как Latest; релиз опубликован 30 июня и включает исправления доставки, reconnect, зависших отправок и настройки моделей. Проверка версии полезна при совпадающей сигнатуре, но «обновиться до последней» не является универсальным ремонтом.

Повышайте риск действия только вместе с доказательством

Команды диагностики и восстановления меняют систему в разной степени.

УровеньПримерыКогда оправдан
Наблюдениеstatus, probe, doctor, doctor --lint, logsНеизвестен первый сбой
Точечное изменениеОдин endpoint, token, pairing, allowlist, scope, model или config keyОшибка называет этот участок
ПерезапускТолько соответствующий Gateway, worker или serviceИзвестное изменение требует reload
Записывающий repairdoctor --fixОтчёт совпадает с проблемой, config сохранён
Замена метаданных службыForce install определения GatewayДоказано, что service использует неверный путь
Разрушительное восстановлениеReset, удаление каталога, широкая переустановкаДанные сохранены, узкие действия не помогли, последствия ясны

Перед записью найдите и проверьте активный config:

hljs bash
openclaw config file
openclaw config validate
openclaw doctor --lint --json

Документация Doctor различает отчёт и repair. Обычный Doctor сообщает, --lint остаётся диагностическим, --fix меняет config/state, а принудительный repair может перезаписать пользовательскую supervisor-конфигурацию.

Записывайте старое значение и меняйте одну переменную. Не соединяйте update, ротацию всех токенов, перезапуск всех служб, очистку сеансов и удаление state в одну попытку. Такое действие уничтожает причинность и способно создать второй инцидент.

Докажите ответ в исходном чате

Статус running — не критерий восстановления. Проверка должна пройти по тому же пути, который был сломан.

  1. Повторите точный probe, который раньше падал.
  2. Отправьте минимальное сообщение в исходный чат, группу, thread или панель.
  3. Подтвердите входящее событие по времени.
  4. Подтвердите завершение ожидаемого provider/model.
  5. Подтвердите доставку в исходное назначение.
  6. Ненадолго оставьте журнал открытым и исключите повтор фатальной сигнатуры.

Официальное описание журналов помогает определить источник событий. Сопоставляйте время и компонент, а не слово error. Старое предупреждение старта не отменяет успешный текущий ответ; повторная auth/delivery ошибка после одного удачного сообщения означает нестабильность.

Отдельно зафиксируйте немедленное восстановление и короткое наблюдение. Один ответ доказывает, что путь работает сейчас. Наблюдение исключает reconnect loop, истекающий credential, rate boundary или возврат старой службы под supervisor.

Эскалация без передачи секретов

Если неисправный участок найден, но минимальное действие не помогает, подготовьте компактный пакет:

  • время и часовой пояс одной неудачной попытки;
  • работающие и неработающие поверхности;
  • version, все CLI paths и метод установки;
  • обезличенные status/probe/channel результаты;
  • последнее изменение;
  • короткий журнал вокруг теста;
  • update state и расхождения CLI/service/config;
  • каждое выполненное действие и его результат;
  • форма нужного config без значений секретов.

Не отправляйте полный env, raw config, историю чатов, session database, token, provider key, Authorization или webhook secret. Если самым первым ломается CLI, PATH или владелец установки, это отдельная задача установки; не маскируйте её ремонтом каналов.

Часто задаваемые вопросы

Почему OpenClaw запущен, но не отвечает?

Процесс подтверждает лишь runtime. Connectivity, вход канала, pairing/policy, модель и обратная доставка могут оставаться неисправными. Ищите первое отсутствующее подтверждение.

Какие команды безопаснее всего выполнить сначала?

openclaw status, status --all, gateway probe и живой logs --follow. Они сужают область без намеренного записывающего ремонта.

Можно ли сразу запустить openclaw doctor --fix?

Нет. Сначала обычный отчёт, путь к config и владелец службы. --fix допустим, когда найденное Doctor условие совпадает с наблюдаемым сбоем.

Нужно ли сразу перезапускать Gateway?

Только если доказана проблема Gateway или известное изменение требует reload. При исправном Gateway и одном молчащем канале перезапуск слишком широк.

Почему молчит только Telegram или Discord?

Проверяйте account probe, наличие бота в чате, pairing, mention, allowlist, token, membership, scope, permissions и исходящую ошибку этого канала.

Что делать после неудачного обновления?

Сравните все пути CLI, версию, глубокий Gateway status, update state и config lastTouchedVersion. Исправляйте доказанное расхождение, а не переустанавливайте всё.

Какая версия OpenClaw сейчас последняя?

При проверке 13 июля 2026 года Latest была v2026.6.11. Статус меняется: сверяйте текущий GitHub release с реально запущенными CLI и service.

Можно ли удалить ~/.openclaw?

Не как первый шаг. Там может находиться config и состояние, необходимое для восстановления и объяснения сбоя. Сначала сохраните данные и исчерпайте узкие действия.

Что передать сопровождающему или поддержке?

Обезличенную временную шкалу, affected surfaces, version/paths, целевые probe-результаты, короткий журнал, последнее изменение и результаты попыток. Никогда не передавайте секретные значения и частную переписку.

Теги

Поделиться статьей

XTelegram