Перейти до основного вмісту

Documentation Index

Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt

Use this file to discover all available pages before exploring further.

openclaw doctor

Перевірки справності + швидкі виправлення для Gateway і каналів. Пов’язано:

Приклади

openclaw doctor
openclaw doctor --repair
openclaw doctor --deep
openclaw doctor --repair --non-interactive
openclaw doctor --generate-gateway-token
Для дозволів, специфічних для каналу, використовуйте проби каналів замість doctor:
openclaw channels capabilities --channel discord --target channel:<channel-id>
openclaw channels status --probe
Цільова проба можливостей Discord повідомляє ефективні дозволи бота в каналі; проба стану перевіряє налаштовані канали Discord і цілі автоматичного приєднання до голосових каналів.

Опції

  • --no-workspace-suggestions: вимкнути пропозиції пам’яті/пошуку робочої області
  • --yes: приймати стандартні значення без запитів
  • --repair: застосувати рекомендовані виправлення, не пов’язані із сервісом, без запитів; установлення й перезапис сервісу Gateway усе одно потребують інтерактивного підтвердження або явних команд Gateway
  • --fix: псевдонім для --repair
  • --force: застосувати агресивні виправлення, зокрема перезапис власної конфігурації сервісу за потреби
  • --non-interactive: виконати без запитів; лише безпечні міграції та виправлення, не пов’язані із сервісом
  • --generate-gateway-token: згенерувати й налаштувати токен Gateway
  • --deep: просканувати системні сервіси на наявність додаткових установлень Gateway і повідомити про нещодавні передавання перезапуску супервізора Gateway
Примітки:
  • У режимі Nix (OPENCLAW_NIX_MODE=1) перевірки doctor лише для читання й надалі працюють, але doctor --fix, doctor --repair, doctor --yes і doctor --generate-gateway-token вимкнено, оскільки openclaw.json є незмінним. Натомість відредагуйте джерело Nix для цього встановлення; для nix-openclaw використовуйте орієнтований на агента Швидкий старт.
  • Інтерактивні запити (наприклад, виправлення keychain/OAuth) виконуються лише тоді, коли stdin є TTY і --non-interactive не встановлено. Безголові запуски (cron, Telegram, без термінала) пропускатимуть запити.
  • Продуктивність: неінтерактивні запуски doctor пропускають завчасне завантаження plugin, щоб безголові перевірки справності залишалися швидкими. Інтерактивні сеанси й надалі повністю завантажують plugins, коли перевірці потрібен їхній внесок.
  • --fix (псевдонім для --repair) записує резервну копію до ~/.openclaw/openclaw.json.bak і вилучає невідомі ключі конфігурації, перелічуючи кожне вилучення.
  • doctor --fix --non-interactive повідомляє про відсутні або застарілі визначення сервісу Gateway, але не встановлює й не перезаписує їх поза режимом виправлення оновлення. Запустіть openclaw gateway install для відсутнього сервісу або openclaw gateway install --force, коли ви навмисно хочете замінити запускувач.
  • Перевірки цілісності стану тепер виявляють осиротілі файли transcript у каталозі сеансів. Архівування їх як .deleted.<timestamp> потребує інтерактивного підтвердження; --fix, --yes і безголові запуски залишають їх на місці.
  • Doctor також сканує ~/.openclaw/cron/jobs.json (або cron.store) на наявність застарілих форм завдань Cron і може перезаписати їх на місці до того, як планувальник муситиме автоматично нормалізувати їх під час виконання.
  • У Linux Doctor попереджає, коли crontab користувача все ще запускає застарілий ~/.openclaw/bin/ensure-whatsapp.sh; цей скрипт більше не підтримується й може логувати хибні збої Gateway WhatsApp, коли cron не має середовища systemd user-bus.
  • Коли WhatsApp увімкнено, Doctor перевіряє наявність деградованого циклу подій Gateway, доки локальні клієнти openclaw-tui усе ще працюють. doctor --fix зупиняє лише перевірені локальні клієнти TUI, щоб відповіді WhatsApp не ставали в чергу за застарілими циклами оновлення TUI.
  • Doctor переписує застарілі посилання моделей openai-codex/* на канонічні посилання openai/* у primary models, fallbacks, перевизначеннях heartbeat/subagent/compaction, hooks, перевизначеннях моделей каналів і застарілих прив’язках маршрутів сеансів. --fix переносить намір Codex у записи agentRuntime.id: "codex" із прив’язкою до provider/model, зберігає прив’язки auth-profile сеансів, як-от openai-codex:..., вилучає застарілі прив’язки runtime всього агента/сеансу та залишає виправлені посилання агентів OpenAI на маршрутизації автентифікації Codex замість прямої автентифікації OpenAI API-key.
  • Doctor очищає застарілий проміжний стан залежностей plugin, створений старішими версіями OpenClaw, і повторно зв’язує хостовий пакет openclaw для керованих npm plugins, які оголошують його як peer dependency. Він також виправляє відсутні завантажувані plugins, на які посилається конфігурація, як-от plugins.entries, налаштовані канали, налаштовані параметри provider/search або налаштовані agent runtimes. Під час оновлень пакетів Doctor пропускає виправлення plugin через package manager, доки заміну пакета не буде завершено; після цього повторно запустіть openclaw doctor --fix, якщо налаштований plugin усе ще потребує відновлення. Якщо завантаження не вдається, Doctor повідомляє помилку встановлення й зберігає налаштований запис plugin для наступної спроби виправлення.
  • Doctor виправляє застарілу конфігурацію plugin, вилучаючи відсутні id plugin з plugins.allow/plugins.deny/plugins.entries, а також відповідну висячу конфігурацію каналів, цілі Heartbeat і перевизначення моделей каналів, коли виявлення plugin справне.
  • Doctor ізолює недійсну конфігурацію plugin, вимикаючи відповідний запис plugins.entries.<id> і вилучаючи його недійсне корисне навантаження config. Запуск Gateway уже пропускає лише цей несправний plugin, тож інші plugins і канали можуть продовжувати працювати.
  • Установіть OPENCLAW_SERVICE_REPAIR_POLICY=external, коли інший супервізор керує життєвим циклом Gateway. Doctor і надалі повідомляє про справність Gateway/сервісу та застосовує виправлення, не пов’язані із сервісом, але пропускає встановлення/запуск/перезапуск/bootstrap сервісу та очищення застарілого сервісу.
  • У Linux Doctor ігнорує неактивні додаткові gateway-подібні systemd units і не перезаписує метадані command/entrypoint для запущеного systemd-сервісу Gateway під час виправлення. Спершу зупиніть сервіс або використайте openclaw gateway install --force, коли ви навмисно хочете замінити активний запускувач.
  • Doctor автоматично мігрує застарілу пласку конфігурацію Talk (talk.voiceId, talk.modelId тощо) у talk.provider + talk.providers.<provider>.
  • Повторні запуски doctor --fix більше не повідомляють і не застосовують нормалізацію Talk, коли єдина різниця полягає в порядку ключів об’єкта.
  • Doctor містить перевірку готовності memory-search і може рекомендувати openclaw configure --section model, коли бракує облікових даних embedding.
  • Doctor попереджає, коли не налаштовано власника команд. Власник команд — це обліковий запис людини-оператора, якому дозволено виконувати команди лише для власника й затверджувати небезпечні дії. Спарювання через DM лише дозволяє комусь спілкуватися з ботом; якщо ви затвердили відправника до появи bootstrap першого власника, явно встановіть commands.ownerAllowFrom.
  • Doctor попереджає, коли налаштовано агентів у режимі Codex і в Codex home оператора існують особисті ресурси Codex CLI. Локальні запуски Codex app-server використовують ізольовані домівки для кожного агента, тому використовуйте openclaw migrate codex --dry-run, щоб інвентаризувати ресурси, які слід просувати свідомо.
  • Doctor вилучає вилучений з обігу plugins.entries.codex.config.codexDynamicToolsProfile; Codex app-server завжди залишає нативні workspace tools Codex нативними.
  • Doctor попереджає, коли skills, дозволені для типового агента, недоступні в поточному runtime-середовищі, бо бракує bins, env vars, config або вимог ОС. doctor --fix може вимкнути ці недоступні skills за допомогою skills.entries.<skill>.enabled=false; натомість установіть/налаштуйте відсутню вимогу, коли хочете залишити skill активним.
  • Якщо режим sandbox увімкнено, але Docker недоступний, Doctor повідомляє високосигнальне попередження з виправленням (install Docker або openclaw config set agents.defaults.sandbox.mode off).
  • Якщо наявні застарілі файли реєстру sandbox (~/.openclaw/sandbox/containers.json або ~/.openclaw/sandbox/browsers.json), Doctor повідомляє про них; openclaw doctor --fix мігрує дійсні записи в шардовані каталоги реєстру й ізолює недійсні застарілі файли.
  • Якщо gateway.auth.token/gateway.auth.password керуються SecretRef і недоступні в поточному шляху команди, Doctor повідомляє попередження лише для читання й не записує резервні облікові дані відкритим текстом.
  • Якщо перевірка SecretRef каналу не вдається в шляху виправлення, Doctor продовжує роботу й повідомляє попередження замість дострокового виходу.
  • Після міграцій каталогу стану Doctor попереджає, коли ввімкнені типові облікові записи Telegram або Discord залежать від резервного env, а TELEGRAM_BOT_TOKEN або DISCORD_BOT_TOKEN недоступні процесу Doctor.
  • Автоматичне розпізнавання імен користувачів Telegram allowFrom (doctor --fix) потребує доступного для розв’язання токена Telegram у поточному шляху команди. Якщо перевірка токена недоступна, Doctor повідомляє попередження й пропускає автоматичне розпізнавання для цього проходу.

macOS: перевизначення env launchctl

Якщо ви раніше запускали launchctl setenv OPENCLAW_GATEWAY_TOKEN ... (або ...PASSWORD), це значення перевизначає ваш файл конфігурації й може спричиняти сталі помилки “unauthorized”.
launchctl getenv OPENCLAW_GATEWAY_TOKEN
launchctl getenv OPENCLAW_GATEWAY_PASSWORD

launchctl unsetenv OPENCLAW_GATEWAY_TOKEN
launchctl unsetenv OPENCLAW_GATEWAY_PASSWORD

Пов’язано