Усунення несправностей Gateway
Ця сторінка — поглиблений runbook. Почніть із /help/troubleshooting, якщо спершу хочете пройти швидкий потік тріажу.Послідовність команд
Спочатку виконайте ці команди в такому порядку:openclaw gateway statusпоказуєRuntime: runningіRPC probe: ok.openclaw doctorне повідомляє про блокувальні проблеми конфігурації/сервісу.openclaw channels status --probeпоказує актуальний стан транспорту для кожного облікового запису і, де це підтримується, результати probe/audit на кшталтworksабоaudit ok.
Anthropic 429: extra usage required for long context
Використовуйте це, коли логи/помилки містять:HTTP 429: rate_limit_error: Extra usage is required for long context requests.
- Вибрана модель Anthropic Opus/Sonnet має
params.context1m: true. - Поточні облікові дані Anthropic не придатні для long-context використання.
- Запити завершуються помилкою лише для довгих сесій/запусків моделей, яким потрібен шлях 1M beta.
- Вимкніть
context1mдля цієї моделі, щоб повернутися до звичайного контекстного вікна. - Використовуйте API ключ Anthropic з білінгом або увімкніть Anthropic Extra Usage в обліковому записі Anthropic OAuth/передплати.
- Налаштуйте fallback-моделі, щоб запуски продовжувалися, коли Anthropic відхиляє long-context запити.
- /providers/anthropic
- /reference/token-use
- /help/faq#why-am-i-seeing-http-429-ratelimiterror-from-anthropic
Немає відповідей
Якщо канали працюють, але відповідей немає, перевірте маршрутизацію й політики, перш ніж щось перепідключати.- Очікує схвалення pairing для відправників у DM.
- Керування згадуваннями в групі (
requireMention,mentionPatterns). - Невідповідності allowlist каналу/групи.
drop guild message (mention required→ повідомлення групи ігнорується, доки не буде згадування.pairing request→ відправника потрібно схвалити.blocked/allowlist→ відправника/канал відфільтровано політикою.
Підключення dashboard/control UI
Коли dashboard/control UI не підключається, перевірте URL, режим auth і припущення щодо безпечного контексту.- Правильні URL probe і dashboard.
- Невідповідність режиму auth/token між клієнтом і gateway.
- Використання HTTP там, де потрібна ідентичність пристрою.
device identity required→ небезпечний контекст або відсутня auth пристрою.origin not allowed→Originбраузера не входить доgateway.controlUi.allowedOrigins(або ви підключаєтеся з origin браузера не через loopback без явного allowlist).device nonce required/device nonce mismatch→ клієнт не завершує challenge-based потік auth пристрою (connect.challenge+device.nonce).device signature invalid/device signature expired→ клієнт підписав неправильний payload (або зі старою часовою позначкою) для поточного handshake.AUTH_TOKEN_MISMATCHзcanRetryWithDeviceToken=true→ клієнт може виконати одну довірену повторну спробу з кешованим токеном пристрою.- Ця повторна спроба з кешованим токеном повторно використовує кешований набір scopes, збережений разом із paired
токеном пристрою. Виклики з явними
deviceToken/ явнимиscopesзберігають свій запитаний набір scopes. - Поза цим шляхом повторної спроби пріоритет auth під час connect такий:
спочатку явний shared token/password, потім явний
deviceToken, потім збережений токен пристрою, потім bootstrap token. - В асинхронному шляху Tailscale Serve Control UI невдалі спроби для того самого
{scope, ip}серіалізуються до того, як лімітатор зафіксує невдачу. Тому дві неправильні одночасні повторні спроби від того самого клієнта можуть призвести доretry laterу другій спробі замість двох звичайних mismatch. too many failed authentication attempts (retry later)від клієнта loopback із browser-origin → повторні невдачі від того самого нормалізованогоOriginтимчасово блокуються; інший localhost origin використовує окремий bucket.- повторювані
unauthorizedпісля цієї повторної спроби → розсинхронізація shared token/device token; оновіть конфігурацію токена та повторно схваліть/оберніть токен пристрою за потреби. gateway connect failed:→ неправильний хост/порт/url цілі.
Швидка мапа кодів деталей auth
Використовуйтеerror.details.code із невдалої відповіді connect, щоб вибрати наступну дію:
| Код деталей | Значення | Рекомендована дія |
|---|---|---|
AUTH_TOKEN_MISSING | Клієнт не надіслав потрібний shared token. | Вставте/задайте токен у клієнті й повторіть спробу. Для шляхів dashboard: openclaw config get gateway.auth.token, потім вставте його в налаштуваннях Control UI. |
AUTH_TOKEN_MISMATCH | Shared token не збігся з токеном auth gateway. | Якщо canRetryWithDeviceToken=true, дозвольте одну довірену повторну спробу. Повторні спроби з кешованим токеном повторно використовують збережені схвалені scopes; виклики з явними deviceToken / scopes зберігають запитаний набір scopes. Якщо помилка лишається, виконайте контрольний список відновлення після дрейфу токена. |
AUTH_DEVICE_TOKEN_MISMATCH | Кешований токен для пристрою застарів або відкликаний. | Оберніть/повторно схваліть токен пристрою через devices CLI, потім перепідключіться. |
PAIRING_REQUIRED | Ідентичність пристрою відома, але не схвалена для цієї ролі. | Схваліть pending-запит: openclaw devices list, потім openclaw devices approve <requestId>. |
- чекає на
connect.challenge - підписує payload, прив’язаний до challenge
- надсилає
connect.params.device.nonceіз тим самим challenge nonce
openclaw devices rotate / revoke / remove неочікувано відхиляється:
- сесії з paired-device token можуть керувати лише власним пристроєм, якщо
виклик не має також
operator.admin openclaw devices rotate --scope ...може запитувати лише ті scopes оператора, які сесія виклику вже має
- /web/control-ui
- /gateway/configuration (режими auth gateway)
- /gateway/trusted-proxy-auth
- /gateway/remote
- /cli/devices
Сервіс Gateway не працює
Використовуйте це, коли сервіс установлено, але процес не тримається запущеним.Runtime: stoppedіз підказками щодо завершення.- Невідповідність конфігурації сервісу (
Config (cli)vsConfig (service)). - Конфлікти портів/слухачів.
- Додаткові інсталяції launchd/systemd/schtasks при використанні
--deep. - Підказки очищення
Other gateway-like services detected (best effort).
Gateway start blocked: set gateway.mode=localабоexisting config is missing gateway.mode→ режим local gateway не ввімкнено, або файл конфігурації було перезаписано й він втративgateway.mode. Виправлення: задайтеgateway.mode="local"у своїй конфігурації або повторно запустітьopenclaw onboard --mode local/openclaw setup, щоб знову записати очікувану конфігурацію local-mode. Якщо ви запускаєте OpenClaw через Podman, типовий шлях до конфігурації —~/.openclaw/openclaw.json.refusing to bind gateway ... without auth→ bind не через loopback без валідного шляху auth gateway (token/password або trusted-proxy, якщо налаштовано).another gateway instance is already listening/EADDRINUSE→ конфлікт порту.Other gateway-like services detected (best effort)→ існують застарілі або паралельні units launchd/systemd/schtasks. У більшості конфігурацій має бути один gateway на машину; якщо вам усе ж потрібно більше одного, ізолюйте порти + конфігурацію/стан/робочий простір. Див. /gateway#multiple-gateways-same-host.
Попередження gateway probe
Використовуйте це, колиopenclaw gateway probe до чогось достукується, але все одно виводить блок попередження.
warnings[].codeіprimaryTargetIdу JSON-виводі.- Чи стосується попередження fallback через SSH, кількох gateway, відсутніх scopes або нерозв’язаних auth refs.
SSH tunnel failed to start; falling back to direct probes.→ налаштування SSH не спрацювало, але команда все одно спробувала direct-цілі з конфігурації/loopback.multiple reachable gateways detected→ відповіло більше ніж одна ціль. Зазвичай це означає навмисну конфігурацію з кількома gateway або застарілі/дубльовані слухачі.Probe diagnostics are limited by gateway scopes (missing operator.read)→ connect спрацював, але detail RPC обмежено через scopes; зв’яжіть ідентичність пристрою або використайте облікові дані зoperator.read.- текст попередження про нерозв’язаний SecretRef
gateway.auth.*/gateway.remote.*→ матеріал auth був недоступний у цьому шляху команди для невдалої цілі.
Канал підключений, але повідомлення не проходять
Якщо стан каналу — connected, але потік повідомлень не працює, зосередьтеся на політиках, дозволах і правилах доставки, специфічних для каналу.- Політику DM (
pairing,allowlist,open,disabled). - Allowlist групи й вимоги до згадувань.
- Відсутні дозволи/scopes API каналу.
mention required→ повідомлення ігнорується через політику згадувань у групі.pairing/ сліди pending approval → відправника не схвалено.missing_scope,not_in_channel,Forbidden,401/403→ проблема з auth/дозволами каналу.
Доставка cron і heartbeat
Якщо cron або heartbeat не запустилися чи не доставили результат, спочатку перевірте стан планувальника, а потім ціль доставки.- Cron увімкнений і присутнє наступне пробудження.
- Статус історії запусків завдань (
ok,skipped,error). - Причини пропуску heartbeat (
quiet-hours,requests-in-flight,alerts-disabled,empty-heartbeat-file,no-tasks-due).
cron: scheduler disabled; jobs will not run automatically→ cron вимкнено.cron: timer tick failed→ збій тіку планувальника; перевірте помилки файлів/логів/runtime.heartbeat skippedзreason=quiet-hours→ поза вікном активних годин.heartbeat skippedзreason=empty-heartbeat-file→HEARTBEAT.mdіснує, але містить лише порожні рядки / markdown-заголовки, тому OpenClaw пропускає виклик моделі.heartbeat skippedзreason=no-tasks-due→HEARTBEAT.mdмістить блокtasks:, але в цьому тіку жодне завдання ще не належить до виконання.heartbeat: unknown accountId→ недійсний account id для цілі доставки heartbeat.heartbeat skippedзreason=dm-blocked→ ціль heartbeat розв’язалася в destination типу DM, тоді якagents.defaults.heartbeat.directPolicy(або перевизначення для конкретного агента) має значенняblock.
Збій paired tool вузла
Якщо node paired, але tools не працюють, ізолюйте стан foreground, дозволів і погоджень.- Node online з очікуваними можливостями.
- Дозволи ОС для камери/мікрофона/локації/екрана.
- Стан exec approvals і allowlist.
NODE_BACKGROUND_UNAVAILABLE→ застосунок node має бути на передньому плані.*_PERMISSION_REQUIRED/LOCATION_PERMISSION_REQUIRED→ відсутній дозвіл ОС.SYSTEM_RUN_DENIED: approval required→ очікується погодження exec.SYSTEM_RUN_DENIED: allowlist miss→ команду заблоковано через allowlist.
Збій browser tool
Використовуйте це, коли дії browser tool завершуються помилкою, хоча сам gateway працює справно.- Чи задано
plugins.allowі чи включає воноbrowser. - Валідний шлях до виконуваного файла браузера.
- Досяжність профілю CDP.
- Доступність локального Chrome для профілів
existing-session/user.
unknown command "browser"абоunknown command 'browser'→ вбудований browser plugin виключено черезplugins.allow.- browser tool відсутній / недоступний, хоча
browser.enabled=true→plugins.allowвиключаєbrowser, тому plugin ніколи не завантажувався. Failed to start Chrome CDP on port→ процес браузера не зміг запуститися.browser.executablePath not found→ налаштований шлях недійсний.browser.cdpUrl must be http(s) or ws(s)→ налаштований URL CDP використовує непідтримувану схему, наприкладfile:абоftp:.browser.cdpUrl has invalid port→ у налаштованому URL CDP вказано неправильний або недопустимий порт.No Chrome tabs found for profile="user"→ профіль підключення Chrome MCP не має відкритих локальних вкладок Chrome.Remote CDP for profile "<name>" is not reachable→ налаштований віддалений endpoint CDP недосяжний із хоста gateway.Browser attachOnly is enabled ... not reachableабоBrowser attachOnly is enabled and CDP websocket ... is not reachable→ для профілю attach-only немає досяжної цілі, або HTTP endpoint відповів, але CDP WebSocket все одно не вдалося відкрити.Playwright is not available in this gateway build; '<feature>' is unsupported.→ у поточній інсталяції gateway відсутній повний пакет Playwright; ARIA snapshots і базові screenshots сторінки все ще можуть працювати, але навігація, AI snapshots, screenshots елементів за CSS-селекторами й експорт PDF залишаються недоступними.fullPage is not supported for element screenshots→ запит screenshot поєднав--full-pageз--refабо--element.element screenshots are not supported for existing-session profiles; use ref from snapshot.→ виклики screenshot для Chrome MCP /existing-sessionмають використовувати захоплення сторінки або snapshot--ref, а не CSS--element.existing-session file uploads do not support element selectors; use ref/inputRef.→ hooks завантаження файлів у Chrome MCP потребують snapshot refs, а не CSS-селекторів.existing-session file uploads currently support one file at a time.→ для профілів Chrome MCP надсилайте по одному завантаженню за раз.existing-session dialog handling does not support timeoutMs.→ hooks діалогів у профілях Chrome MCP не підтримують перевизначення timeout.response body is not supported for existing-session profiles yet.→responsebodyвсе ще потребує керованого браузера або профілю raw CDP.- застарілі перевизначення viewport / dark-mode / locale / offline у профілях attach-only або remote CDP → виконайте
openclaw browser stop --browser-profile <name>, щоб закрити активну керовану сесію й звільнити стан емуляції Playwright/CDP без перезапуску всього gateway.
Якщо після оновлення щось раптово зламалося
Більшість проблем після оновлення — це дрейф конфігурації або суворіші значення за замовчуванням, які тепер примусово застосовуються.1) Поведінка auth і перевизначення URL змінилася
- Якщо
gateway.mode=remote, виклики CLI можуть бути спрямовані на remote, навіть якщо локальний сервіс працює справно. - Явні виклики
--urlне виконують fallback до збережених облікових даних.
gateway connect failed:→ неправильна URL-ціль.unauthorized→ endpoint досяжний, але auth неправильна.
2) Guardrails для bind і auth стали суворішими
- Bind не через loopback (
lan,tailnet,custom) потребують валідного шляху auth gateway: shared token/password auth або правильно налаштованого розгортанняtrusted-proxyне через loopback. - Старі ключі на кшталт
gateway.tokenне замінюютьgateway.auth.token.
refusing to bind gateway ... without auth→ bind не через loopback без валідного шляху auth gateway.RPC probe: failedколи runtime працює → gateway живий, але недоступний із поточними auth/url.
3) Стан pairing та ідентичності пристрою змінився
- Pending approvals пристроїв для dashboard/nodes.
- Pending approvals pairing для DM після змін політики чи ідентичності.
device identity required→ auth пристрою не задоволено.pairing required→ відправника/пристрій потрібно схвалити.