Перейти к основному содержанию
Краткие ответы и более глубокое устранение неполадок для реальных конфигураций (локальная разработка, VPS, несколько агентов, OAuth/API-ключи, отказоустойчивое переключение моделей). Диагностику среды выполнения см. в Устранении неполадок. Полный справочник конфигурации см. в Конфигурации.

Первые 60 секунд, если что-то сломалось

  1. Быстрый статус (первая проверка)
    openclaw status
    
    Быстрая локальная сводка: ОС + обновление, доступность gateway/службы, агенты/сеансы, конфигурация провайдера + проблемы среды выполнения (когда gateway доступен).
  2. Отчет для вставки (безопасно делиться)
    openclaw status --all
    
    Диагностика только для чтения с хвостом журнала (токены скрыты).
  3. Состояние демона + порта
    openclaw gateway status
    
    Показывает среду выполнения супервизора в сравнении с доступностью RPC, целевой URL проверки и какую конфигурацию, вероятно, использовала служба.
  4. Глубокие проверки
    openclaw status --deep
    
    Запускает живую проверку состояния gateway, включая проверки каналов, когда они поддерживаются (требуется доступный gateway). См. Health.
  5. Отслеживание последнего журнала
    openclaw logs --follow
    
    Если RPC недоступен, используйте запасной вариант:
    tail -f "$(ls -t /tmp/openclaw/openclaw-*.log | head -1)"
    
    Файловые журналы отделены от журналов службы; см. Логирование и Устранение неполадок.
  6. Запуск doctor (исправления)
    openclaw doctor
    
    Исправляет/мигрирует конфигурацию/состояние + выполняет проверки работоспособности. См. Doctor.
  7. Снимок Gateway
    openclaw health --json
    openclaw health --verbose   # shows the target URL + config path on errors
    
    Запрашивает у запущенного gateway полный снимок (только WS). См. Health.

Быстрый старт и первая настройка

Вопросы и ответы по первому запуску — установка, onboarding, маршруты аутентификации, подписки, начальные сбои — находятся в FAQ по первому запуску.

Что такое OpenClaw?

OpenClaw — это персональный AI-ассистент, который вы запускаете на собственных устройствах. Он отвечает в уже используемых вами мессенджерах и каналах (WhatsApp, Telegram, Slack, Mattermost, Discord, Google Chat, Signal, iMessage, WebChat и встроенных канальных plugin, таких как QQ Bot), а также может работать с голосом + живым Canvas на поддерживаемых платформах. Gateway — это постоянно включенный контур управления; ассистент — это продукт.
OpenClaw — это не «просто обертка для Claude». Это локальный прежде всего контур управления, который позволяет запускать способного ассистента на вашем собственном железе, доступного из уже используемых вами чат-приложений, с сеансами с состоянием, памятью и инструментами — без передачи контроля над вашими рабочими процессами размещенному SaaS.Основное:
  • Ваши устройства, ваши данные: запускайте Gateway где хотите (Mac, Linux, VPS) и храните рабочее пространство + историю сеансов локально.
  • Настоящие каналы, а не веб-песочница: WhatsApp/Telegram/Slack/Discord/Signal/iMessage/и т. д., плюс мобильный голос и Canvas на поддерживаемых платформах.
  • Независимость от модели: используйте Anthropic, OpenAI, MiniMax, OpenRouter и т. д. с маршрутизацией и failover для каждого агента.
  • Только локальный вариант: запускайте локальные модели, чтобы все данные могли оставаться на вашем устройстве, если хотите.
  • Маршрутизация нескольких агентов: отдельные агенты для канала, учетной записи или задачи, каждый со своим рабочим пространством и значениями по умолчанию.
  • Открытый исходный код и возможность доработки: изучайте, расширяйте и размещайте самостоятельно без привязки к поставщику.
Документация: Gateway, Каналы, Несколько агентов, Память.
Хорошие первые проекты:
  • Создать сайт (WordPress, Shopify или простой статический сайт).
  • Прототипировать мобильное приложение (структура, экраны, план API).
  • Организовать файлы и папки (очистка, именование, теги).
  • Подключить Gmail и автоматизировать сводки или последующие действия.
Он может справляться с большими задачами, но лучше всего работает, когда вы делите их на этапы и используете субагентов для параллельной работы.
Повседневная польза обычно выглядит так:
  • Личные брифинги: сводки входящих, календаря и важных для вас новостей.
  • Исследование и черновики: быстрое исследование, сводки и первые черновики писем или документов.
  • Напоминания и последующие действия: подсказки и чек-листы на базе Cron или Heartbeat.
  • Автоматизация браузера: заполнение форм, сбор данных и повторяющиеся веб-задачи.
  • Координация между устройствами: отправьте задачу с телефона, дайте Gateway выполнить ее на сервере и получите результат обратно в чате.
Да, для исследования, квалификации и подготовки черновиков. Он может сканировать сайты, составлять короткие списки, резюмировать потенциальных клиентов и писать черновики outreach-сообщений или рекламных текстов.Для outreach или запуска рекламы держите человека в контуре. Избегайте спама, соблюдайте местные законы и политики платформ, а также проверяйте все перед отправкой. Самый безопасный шаблон — поручить OpenClaw подготовить черновик, а вам утверждать.Документация: Безопасность.
OpenClaw — это персональный ассистент и слой координации, а не замена IDE. Используйте Claude Code или Codex для самого быстрого прямого цикла кодирования внутри репозитория. Используйте OpenClaw, когда вам нужны долговременная память, доступ с разных устройств и оркестрация инструментов.Преимущества:
  • Постоянная память + рабочее пространство между сеансами
  • Доступ с нескольких платформ (WhatsApp, Telegram, TUI, WebChat)
  • Оркестрация инструментов (браузер, файлы, планирование, хуки)
  • Постоянно включенный Gateway (запуск на VPS, взаимодействие откуда угодно)
  • Узлы для локального браузера/экрана/камеры/exec
Витрина: https://openclaw.ai/showcase

Skills и автоматизация

Используйте управляемые переопределения вместо редактирования копии в репозитории. Поместите изменения в ~/.openclaw/skills/<name>/SKILL.md (или добавьте папку через skills.load.extraDirs в ~/.openclaw/openclaw.json). Приоритет: <workspace>/skills<workspace>/.agents/skills~/.agents/skills~/.openclaw/skills → встроенные → skills.load.extraDirs, поэтому управляемые переопределения все равно имеют приоритет над встроенными Skills без изменения git. Если Skill нужно установить глобально, но показывать только некоторым агентам, храните общую копию в ~/.openclaw/skills и управляйте видимостью через agents.defaults.skills и agents.list[].skills. В репозитории должны находиться только изменения, достойные upstream, и уходить как PR.
Да. Добавьте дополнительные каталоги через skills.load.extraDirs в ~/.openclaw/openclaw.json (самый низкий приоритет). Приоритет по умолчанию: <workspace>/skills<workspace>/.agents/skills~/.agents/skills~/.openclaw/skills → встроенные → skills.load.extraDirs. clawhub по умолчанию устанавливает в ./skills, что OpenClaw воспринимает как <workspace>/skills в следующем сеансе. Если Skill должен быть виден только определенным агентам, сочетайте это с agents.defaults.skills или agents.list[].skills.
Сегодня поддерживаются такие шаблоны:
  • Задания Cron: изолированные задания могут задавать переопределение model для каждого задания.
  • Агенты: направляйте задачи отдельным агентам с разными моделями по умолчанию, уровнями thinking и параметрами потока.
  • Переключение по требованию: используйте /model, чтобы в любой момент переключить модель текущего сеанса.
Например, используйте одну и ту же модель с разными настройками для каждого агента:
{
  agents: {
    list: [
      {
        id: "coder",
        model: "xiaomi/mimo-v2.5-pro",
        thinkingDefault: "high",
        params: { temperature: 0.1 },
      },
      {
        id: "chat",
        model: "xiaomi/mimo-v2.5-pro",
        thinkingDefault: "off",
        params: { temperature: 0.8 },
      },
    ],
  },
}
Поместите общие значения по умолчанию для модели в agents.defaults.models["provider/model"].params, затем поместите переопределения конкретного агента в плоский agents.list[].params. Не определяйте отдельные вложенные записи agents.list[].models["provider/model"].params для той же модели; agents.list[].models предназначен для каталога моделей и переопределений среды выполнения для конкретного агента.См. Задания Cron, Маршрутизация нескольких агентов, Конфигурация и Slash-команды.
Используйте субагентов для долгих или параллельных задач. Субагенты работают в собственном сеансе, возвращают сводку и сохраняют отзывчивость основного чата.Попросите бота «spawn a sub-agent for this task» или используйте /subagents. Используйте /status в чате, чтобы увидеть, что Gateway делает прямо сейчас (и занят ли он).Совет по токенам: долгие задачи и субагенты потребляют токены. Если важна стоимость, задайте более дешевую модель для субагентов через agents.defaults.subagents.model.Документация: Субагенты, Фоновые задачи.
Используйте привязки тредов. Вы можете привязать тред Discord к субагенту или целевому сеансу, чтобы последующие сообщения в этом треде оставались в привязанном сеансе.Базовый поток:
  • Создайте через sessions_spawn с thread: true (и при необходимости mode: "session" для постоянных последующих сообщений).
  • Или привяжите вручную через /focus <target>.
  • Используйте /agents, чтобы проверить состояние привязки.
  • Используйте /session idle <duration|off> и /session max-age <duration|off>, чтобы управлять автоматическим снятием фокуса.
  • Используйте /unfocus, чтобы отвязать тред.
Требуемая конфигурация:
  • Глобальные значения по умолчанию: session.threadBindings.enabled, session.threadBindings.idleHours, session.threadBindings.maxAgeHours.
  • Переопределения Discord: channels.discord.threadBindings.enabled, channels.discord.threadBindings.idleHours, channels.discord.threadBindings.maxAgeHours.
  • Автопривязка при создании: channels.discord.threadBindings.spawnSessions по умолчанию равен true; установите false, чтобы отключить создание сеансов, привязанных к тредам.
Документация: Субагенты, Discord, Справочник конфигурации, Slash-команды.
Сначала проверьте разрешенный маршрут инициатора:
  • Доставка субагента в режиме завершения предпочитает любой привязанный тред или маршрут беседы, когда он существует.
  • Если источник завершения содержит только канал, OpenClaw использует запасной вариант — сохраненный маршрут сеанса инициатора (lastChannel / lastTo / lastAccountId), чтобы прямая доставка все еще могла выполниться успешно.
  • Если нет ни привязанного маршрута, ни пригодного сохраненного маршрута, прямая доставка может завершиться ошибкой, а результат вместо немедленной публикации в чат попадет в доставку через очередь сеанса.
  • Недействительные или устаревшие цели все еще могут принудительно привести к запасной очереди или окончательному сбою доставки.
  • Если последний видимый ответ ассистента дочернего агента — точный тихий токен NO_REPLY / no_reply или ровно ANNOUNCE_SKIP, OpenClaw намеренно подавляет объявление вместо публикации устаревшего более раннего прогресса.
  • Вывод tool/toolResult не продвигается в текст результата дочернего агента; результат — это последний видимый ответ ассистента дочернего агента.
Отладка:
openclaw tasks show <runId-or-sessionKey>
Документация: субагенты, фоновые задачи, инструменты сеанса.
Cron выполняется внутри процесса Gateway. Если Gateway не работает непрерывно, запланированные задания не будут выполняться.Контрольный список:
  • Убедитесь, что cron включен (cron.enabled) и OPENCLAW_SKIP_CRON не задан.
  • Проверьте, что Gateway работает 24/7 (без сна/перезапусков).
  • Проверьте настройки часового пояса для задания (--tz и часовой пояс хоста).
Отладка:
openclaw cron run <jobId>
openclaw cron runs --id <jobId> --limit 50
Документация: задания Cron, автоматизация.
Сначала проверьте режим доставки:
  • --no-deliver / delivery.mode: "none" означает, что резервная отправка раннером не ожидается.
  • Отсутствующая или недопустимая цель объявления (channel / to) означает, что раннер пропустил исходящую доставку.
  • Сбои авторизации канала (unauthorized, Forbidden) означают, что раннер пытался доставить сообщение, но учетные данные это заблокировали.
  • Тихий изолированный результат (только NO_REPLY / no_reply) считается намеренно недоставляемым, поэтому раннер также подавляет резервную доставку из очереди.
Для изолированных заданий cron агент все еще может отправлять напрямую с помощью инструмента message, когда доступен маршрут чата. --announce управляет только резервным путем раннера для финального текста, который агент еще не отправил.Отладка:
openclaw cron runs --id <jobId> --limit 50
openclaw tasks show <runId-or-sessionKey>
Документация: задания Cron, фоновые задачи.
Обычно это путь переключения live-модели, а не дублирование планирования.Изолированный cron может сохранять передачу runtime-модели и повторять попытку, когда активный запуск выбрасывает LiveSessionModelSwitchError. Повтор сохраняет переключенного провайдера/модель, а если переключение принесло новое переопределение профиля авторизации, cron также сохраняет его перед повторной попыткой.Связанные правила выбора:
  • Переопределение модели хуком Gmail имеет приоритет, когда применимо.
  • Затем model отдельного задания.
  • Затем любое сохраненное переопределение модели cron-сеанса.
  • Затем обычный выбор модели агента/по умолчанию.
Цикл повторов ограничен. После начальной попытки плюс 2 повторов переключения cron прерывается, а не зацикливается навсегда.Отладка:
openclaw cron runs --id <jobId> --limit 50
openclaw tasks show <runId-or-sessionKey>
Документация: задания Cron, CLI cron.
Используйте встроенные команды openclaw skills или поместите Skills в рабочую область. Интерфейс Skills для macOS недоступен в Linux. Просматривайте Skills на https://clawhub.ai.
openclaw skills search "calendar"
openclaw skills search --limit 20
openclaw skills install @owner/<skill-slug>
openclaw skills install @owner/<skill-slug> --version <version>
openclaw skills install @owner/<skill-slug> --force
openclaw skills install @owner/<skill-slug> --global
openclaw skills update --all
openclaw skills update --all --global
openclaw skills list --eligible
openclaw skills check
Встроенная команда openclaw skills install по умолчанию записывает в каталог skills/ активной рабочей области. Добавьте --global, чтобы установить в общий управляемый каталог Skills для всех локальных агентов. Устанавливайте отдельный CLI clawhub только если хотите публиковать или синхронизировать собственные Skills. Используйте agents.defaults.skills или agents.list[].skills, если хотите сузить набор агентов, которым видны общие Skills.
Да. Используйте планировщик Gateway:
  • Задания Cron для запланированных или повторяющихся задач (сохраняются между перезапусками).
  • Heartbeat для периодических проверок «основного сеанса».
  • Изолированные задания для автономных агентов, которые публикуют сводки или доставляют сообщения в чаты.
Документация: задания Cron, автоматизация, Heartbeat.
Не напрямую. Skills для macOS ограничены metadata.openclaw.os и необходимыми бинарными файлами, а Skills появляются в системном промпте только когда они допустимы на хосте Gateway. В Linux Skills только для darwin (например, apple-notes, apple-reminders, things-mac) не загрузятся, если вы не переопределите ограничение.Поддерживаются три схемы:Вариант A - запустить Gateway на Mac (проще всего). Запустите Gateway там, где существуют бинарные файлы macOS, затем подключитесь из Linux в удаленном режиме или через Tailscale. Skills загружаются нормально, потому что хост Gateway работает на macOS.Вариант B - использовать узел macOS (без SSH). Запустите Gateway в Linux, сопрягите узел macOS (приложение в строке меню) и установите Команды запуска Node в “Всегда спрашивать” или “Всегда разрешать” на Mac. OpenClaw может считать Skills только для macOS допустимыми, когда необходимые бинарные файлы существуют на узле. Агент запускает эти Skills через инструмент nodes. Если выбрать “Всегда спрашивать”, одобрение “Всегда разрешать” в запросе добавит эту команду в список разрешенных.Вариант C - проксировать бинарные файлы macOS через SSH (для продвинутых). Оставьте Gateway в Linux, но сделайте так, чтобы необходимые CLI-бинарники разрешались в SSH-обертки, которые запускаются на Mac. Затем переопределите Skill, чтобы разрешить Linux и сохранить его допустимым.
  1. Создайте SSH-обертку для бинарного файла (пример: memo для Apple Notes):
    #!/usr/bin/env bash
    set -euo pipefail
    exec ssh -T user@mac-host /opt/homebrew/bin/memo "$@"
    
  2. Поместите обертку в PATH на хосте Linux (например, ~/bin/memo).
  3. Переопределите метаданные Skill (в рабочей области или ~/.openclaw/skills), чтобы разрешить Linux:
    ---
    name: apple-notes
    description: Manage Apple Notes via the memo CLI on macOS.
    metadata: { "openclaw": { "os": ["darwin", "linux"], "requires": { "bins": ["memo"] } } }
    ---
    
  4. Запустите новый сеанс, чтобы снимок Skills обновился.
На сегодня встроенной нет.Варианты:
  • Пользовательский Skill / Plugin: лучший вариант для надежного доступа к API (у Notion/HeyGen есть API).
  • Автоматизация браузера: работает без кода, но медленнее и более хрупкая.
Если вы хотите хранить контекст по каждому клиенту (рабочие процессы агентства), простой шаблон таков:
  • Одна страница Notion на клиента (контекст + предпочтения + активная работа).
  • Попросите агента получить эту страницу в начале сеанса.
Если нужна нативная интеграция, откройте запрос функции или создайте Skill, работающий с этими API.Установка Skills:
openclaw skills install @owner/<skill-slug>
openclaw skills update --all
Встроенные установки попадают в каталог skills/ активной рабочей области. Для общих Skills для всех локальных агентов используйте openclaw skills install @owner/<skill-slug> --global (или разместите их вручную в ~/.openclaw/skills/<name>/SKILL.md). Если общий установленный Skill должны видеть только некоторые агенты, настройте agents.defaults.skills или agents.list[].skills. Некоторые Skills ожидают бинарные файлы, установленные через Homebrew; в Linux это означает Linuxbrew (см. запись FAQ по Homebrew для Linux выше). См. Skills, конфигурацию Skills и ClawHub.
Используйте встроенный профиль браузера user, который подключается через Chrome DevTools MCP:
openclaw browser --browser-profile user tabs
openclaw browser --browser-profile user snapshot
Если нужно пользовательское имя, создайте явный профиль MCP:
openclaw browser create-profile --name chrome-live --driver existing-session
openclaw browser --browser-profile chrome-live tabs
Этот путь может использовать локальный браузер хоста или подключенный браузерный узел. Если Gateway работает в другом месте, либо запустите хост узла на машине с браузером, либо используйте удаленный CDP.Текущие ограничения для existing-session / user:
  • действия управляются ref, а не CSS-селекторами
  • для загрузок требуются ref / inputRef, сейчас поддерживается один файл за раз
  • responsebody, экспорт PDF, перехват скачиваний и пакетные действия все еще требуют управляемого браузера или сырого профиля CDP

Песочница и память

Да. См. песочницу. Для настройки, специфичной для Docker (полный Gateway в Docker или образы песочницы), см. Docker.
Образ по умолчанию в первую очередь ориентирован на безопасность и запускается от пользователя node, поэтому он не включает системные пакеты, Homebrew или встроенные браузеры. Для более полной настройки:
  • Сохраняйте /home/node с помощью OPENCLAW_HOME_VOLUME, чтобы кэши сохранялись.
  • Встраивайте системные зависимости в образ с помощью OPENCLAW_IMAGE_APT_PACKAGES.
  • Установите браузеры Playwright через встроенный CLI: node /app/node_modules/playwright-core/cli.js install chromium
  • Задайте PLAYWRIGHT_BROWSERS_PATH и убедитесь, что путь сохраняется.
Документация: Docker, браузер.
Да - если ваш приватный трафик — это DM, а публичный трафик — группы.Используйте agents.defaults.sandbox.mode: "non-main", чтобы групповые/канальные сеансы (неосновные ключи) выполнялись в настроенном бэкенде песочницы, а основной DM-сеанс оставался на хосте. Docker — бэкенд по умолчанию, если не выбрать другой. Затем ограничьте инструменты, доступные в изолированных сеансах, через tools.sandbox.tools.Пошаговая настройка + пример конфигурации: группы: личные DM + публичные группыСправочник ключевой конфигурации: конфигурация Gateway
Задайте agents.defaults.sandbox.docker.binds как ["host:path:mode"] (например, "/home/user/src:/src:ro"). Глобальные привязки и привязки отдельного агента объединяются; привязки отдельного агента игнорируются при scope: "shared". Используйте :ro для всего чувствительного и помните, что привязки обходят стены файловой системы песочницы.OpenClaw проверяет источники привязок как по нормализованному пути, так и по каноническому пути, разрешенному через самый глубокий существующий предок. Это означает, что выходы через родительские symlink все равно закрываются отказом, даже если последний сегмент пути еще не существует, и проверки разрешенного корня все равно применяются после разрешения symlink.См. песочницу и песочница, политика инструментов и Elevated для примеров и заметок по безопасности.
Память OpenClaw — это просто Markdown-файлы в рабочей области агента:
  • Ежедневные заметки в memory/YYYY-MM-DD.md
  • Курируемые долгосрочные заметки в MEMORY.md (только основные/приватные сеансы)
OpenClaw также выполняет тихий сброс памяти перед Compaction, чтобы напомнить модели записать долговечные заметки перед автоматическим Compaction. Это выполняется только когда рабочая область доступна для записи (песочницы только для чтения пропускают это). См. память.
Попросите бота записать факт в память. Долгосрочные заметки должны быть в MEMORY.md, краткосрочный контекст — в memory/YYYY-MM-DD.md.Мы всё ещё улучшаем эту область. Полезно напоминать модели сохранять воспоминания; она поймёт, что делать. Если она продолжает забывать, проверьте, что Gateway использует одно и то же рабочее пространство при каждом запуске.Документация: Memory, Рабочее пространство агента.
Файлы памяти находятся на диске и сохраняются, пока вы их не удалите. Ограничение — это ваше хранилище, а не модель. Контекст сеанса всё равно ограничен окном контекста модели, поэтому длинные разговоры могут подвергаться Compaction или обрезаться. Поэтому существует поиск по памяти — он возвращает в контекст только релевантные части.Документация: Memory, Контекст.
Только если вы используете эмбеддинги OpenAI. Codex OAuth покрывает чат/завершения и не предоставляет доступ к эмбеддингам, поэтому вход через Codex (OAuth или вход через Codex CLI) не поможет для семантического поиска по памяти. Эмбеддингам OpenAI всё равно нужен настоящий ключ API (OPENAI_API_KEY или models.providers.openai.apiKey).Если вы явно не задаёте провайдера, OpenClaw использует эмбеддинги OpenAI. Устаревшие конфигурации, где всё ещё указано memorySearch.provider = "auto", тоже разрешаются в OpenAI. Если ключ OpenAI API недоступен, семантический поиск по памяти остаётся недоступным, пока вы не настроите ключ или явно не выберете другого провайдера.Если вы предпочитаете оставаться локально, задайте memorySearch.provider = "local" (и при необходимости memorySearch.fallback = "none"). Если вам нужны эмбеддинги Gemini, задайте memorySearch.provider = "gemini" и укажите GEMINI_API_KEY (или memorySearch.remote.apiKey). Мы поддерживаем модели эмбеддингов OpenAI, OpenAI-совместимые, Gemini, Voyage, Mistral, Bedrock, Ollama, LM Studio, GitHub Copilot, DeepInfra или локальные — подробности настройки см. в Memory.

Где данные находятся на диске

Нет — состояние OpenClaw локально, но внешние сервисы всё равно видят то, что вы им отправляете.
  • Локально по умолчанию: сеансы, файлы памяти, конфигурация и рабочее пространство находятся на хосте Gateway (~/.openclaw + каталог вашего рабочего пространства).
  • Удалённо по необходимости: сообщения, которые вы отправляете провайдерам моделей (Anthropic/OpenAI/и т. д.), уходят в их API, а чат-платформы (WhatsApp/Telegram/Slack/и т. д.) хранят данные сообщений на своих серверах.
  • Вы контролируете объём данных: использование локальных моделей оставляет промпты на вашей машине, но трафик каналов всё равно проходит через серверы соответствующего канала.
См. также: Рабочее пространство агента, Memory.
Всё находится в $OPENCLAW_STATE_DIR (по умолчанию: ~/.openclaw):
ПутьНазначение
$OPENCLAW_STATE_DIR/openclaw.jsonОсновная конфигурация (JSON5)
$OPENCLAW_STATE_DIR/credentials/oauth.jsonИмпорт устаревшего OAuth (копируется в профили аутентификации при первом использовании)
$OPENCLAW_STATE_DIR/agents/<agentId>/agent/auth-profiles.jsonПрофили аутентификации (OAuth, ключи API и необязательные keyRef/tokenRef)
$OPENCLAW_STATE_DIR/secrets.jsonНеобязательная файловая секретная полезная нагрузка для провайдеров SecretRef file
$OPENCLAW_STATE_DIR/agents/<agentId>/agent/auth.jsonФайл устаревшей совместимости (статические записи api_key очищены)
$OPENCLAW_STATE_DIR/credentials/Состояние провайдера (например, whatsapp/<accountId>/creds.json)
$OPENCLAW_STATE_DIR/agents/Состояние по агентам (agentDir + сеансы)
$OPENCLAW_STATE_DIR/agents/<agentId>/sessions/История разговоров и состояние (для каждого агента)
$OPENCLAW_STATE_DIR/agents/<agentId>/sessions/sessions.jsonМетаданные сеансов (для каждого агента)
Устаревший путь для одного агента: ~/.openclaw/agent/* (мигрируется с помощью openclaw doctor).Ваше рабочее пространство (AGENTS.md, файлы памяти, Skills и т. д.) отделено и настраивается через agents.defaults.workspace (по умолчанию: ~/.openclaw/workspace).
Эти файлы находятся в рабочем пространстве агента, а не в ~/.openclaw.
  • Рабочее пространство (для каждого агента): AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md, memory/YYYY-MM-DD.md, необязательный HEARTBEAT.md. Корневой memory.md в нижнем регистре — только вход для исправления устаревшего формата; openclaw doctor --fix может объединить его с MEMORY.md, когда существуют оба файла.
  • Каталог состояния (~/.openclaw): конфигурация, состояние каналов/провайдеров, профили аутентификации, сеансы, журналы и общие Skills (~/.openclaw/skills).
Рабочее пространство по умолчанию — ~/.openclaw/workspace, настраивается через:
{
  agents: { defaults: { workspace: "~/.openclaw/workspace" } },
}
Если бот «забывает» после перезапуска, убедитесь, что Gateway использует одно и то же рабочее пространство при каждом запуске (и помните: удалённый режим использует рабочее пространство хоста Gateway, а не вашего локального ноутбука).Совет: если вам нужно устойчивое поведение или предпочтение, попросите бота записать это в AGENTS.md или MEMORY.md, а не полагайтесь на историю чата.См. Рабочее пространство агента и Memory.
Да. SOUL.md — один из файлов начальной загрузки рабочего пространства, внедряемых в контекст агента. Лимит внедрения по умолчанию для одного файла — 20000 символов, а общий бюджет начальной загрузки по всем файлам — 60000 символов.Измените общие значения по умолчанию в конфигурации OpenClaw:
{
  agents: {
    defaults: {
      bootstrapMaxChars: 50000,
      bootstrapTotalMaxChars: 300000,
    },
  },
}
Или переопределите для одного агента:
{
  agents: {
    list: [
      {
        id: "main",
        bootstrapMaxChars: 50000,
        bootstrapTotalMaxChars: 300000,
      },
    ],
  },
}
Используйте /context, чтобы проверить исходные и внедрённые размеры, а также было ли усечение. Держите SOUL.md сфокусированным на голосе, позиции и личности; рабочие правила помещайте в AGENTS.md, а устойчивые факты — в память.См. Контекст и Конфигурация агента.
Поместите своё рабочее пространство агента в приватный git-репозиторий и создавайте резервные копии где-нибудь приватно (например, в приватном GitHub). Это сохранит память + файлы AGENTS/SOUL/USER и позволит позже восстановить «разум» ассистента.Не коммитьте ничего из ~/.openclaw (учётные данные, сеансы, токены или зашифрованные секретные полезные нагрузки). Если вам нужно полное восстановление, отдельно создайте резервные копии и рабочего пространства, и каталога состояния (см. вопрос о миграции выше).Документация: Рабочее пространство агента.
См. отдельное руководство: Удаление.
Да. Рабочее пространство — это cwd по умолчанию и якорь памяти, а не жёсткая песочница. Относительные пути разрешаются внутри рабочего пространства, но абсолютные пути могут обращаться к другим расположениям на хосте, если песочница не включена. Если нужна изоляция, используйте agents.defaults.sandbox или настройки песочницы для конкретного агента. Если вы хотите, чтобы репозиторий был рабочим каталогом по умолчанию, укажите в workspace этого агента корень репозитория. Репозиторий OpenClaw — это просто исходный код; держите рабочее пространство отдельно, если только вы намеренно не хотите, чтобы агент работал внутри него.Пример (репозиторий как cwd по умолчанию):
{
  agents: {
    defaults: {
      workspace: "~/Projects/my-repo",
    },
  },
}
Состоянием сеансов владеет хост Gateway. Если вы в удалённом режиме, нужное вам хранилище сеансов находится на удалённой машине, а не на вашем локальном ноутбуке. См. Управление сеансами.

Основы конфигурации

OpenClaw читает необязательную конфигурацию JSON5 из $OPENCLAW_CONFIG_PATH (по умолчанию: ~/.openclaw/openclaw.json):
$OPENCLAW_CONFIG_PATH
Если файл отсутствует, используются достаточно безопасные значения по умолчанию (включая рабочее пространство по умолчанию ~/.openclaw/workspace).
Привязки не к loopback требуют действительный путь аутентификации Gateway. На практике это означает:
  • аутентификация по общему секрету: токен или пароль
  • gateway.auth.mode: "trusted-proxy" за правильно настроенным identity-aware обратным прокси
{
  gateway: {
    bind: "lan",
    auth: {
      mode: "token",
      token: "replace-me",
    },
  },
}
Примечания:
  • gateway.remote.token / .password сами по себе не включают локальную аутентификацию Gateway.
  • Локальные пути вызовов могут использовать gateway.remote.* как fallback только когда gateway.auth.* не задан.
  • Для аутентификации по паролю вместо этого задайте gateway.auth.mode: "password" плюс gateway.auth.password (или OPENCLAW_GATEWAY_PASSWORD).
  • Если gateway.auth.token / gateway.auth.password явно настроен через SecretRef и не разрешается, разрешение завершается закрыто (без маскировки удалённым fallback).
  • Настройки Control UI с общим секретом аутентифицируются через connect.params.auth.token или connect.params.auth.password (хранятся в настройках приложения/UI). Режимы с идентификацией, такие как Tailscale Serve или trusted-proxy, вместо этого используют заголовки запроса. Не помещайте общие секреты в URL.
  • При gateway.auth.mode: "trusted-proxy" обратные прокси same-host loopback требуют явного gateway.auth.trustedProxy.allowLoopback = true и записи loopback в gateway.trustedProxies.
OpenClaw по умолчанию принудительно включает аутентификацию Gateway, включая loopback. В обычном пути по умолчанию это означает аутентификацию по токену: если явный путь аутентификации не настроен, запуск Gateway разрешается в режим токена и генерирует токен только на время этого запуска, поэтому локальные WS-клиенты должны аутентифицироваться. Явно настройте gateway.auth.token, gateway.auth.password, OPENCLAW_GATEWAY_TOKEN или OPENCLAW_GATEWAY_PASSWORD, когда клиентам нужен стабильный секрет между перезапусками. Это блокирует другим локальным процессам вызов Gateway.Если вы предпочитаете другой путь аутентификации, можно явно выбрать режим пароля (или, для identity-aware обратных прокси, trusted-proxy). Если вам действительно нужен открытый loopback, явно задайте gateway.auth.mode: "none" в конфиге. Doctor может сгенерировать токен для вас в любой момент: openclaw doctor --generate-gateway-token.
Gateway отслеживает конфиг и поддерживает hot-reload:
  • gateway.reload.mode: "hybrid" (по умолчанию): безопасные изменения применяются без перезапуска, критические требуют перезапуска
  • hot, restart, off также поддерживаются
Задайте cli.banner.taglineMode в конфиге:
{
  cli: {
    banner: {
      taglineMode: "off", // random | default | off
    },
  },
}
  • off: скрывает текст слогана, но оставляет строку заголовка/версии баннера.
  • default: каждый раз использует All your chats, one OpenClaw..
  • random: чередующиеся забавные/сезонные слоганы (поведение по умолчанию).
  • Если вы вообще не хотите показывать баннер, задайте переменную окружения OPENCLAW_HIDE_BANNER=1.
web_fetch работает без API-ключа. web_search зависит от выбранного провайдера:
  • API-backed провайдеры, такие как Brave, Exa, Firecrawl, Gemini, Kimi, MiniMax Search, Perplexity и Tavily, требуют стандартной настройки API-ключа.
  • Grok может повторно использовать xAI OAuth из аутентификации модели или перейти к XAI_API_KEY / конфигу веб-поиска Plugin.
  • Ollama Web Search не требует ключа, но использует настроенный хост Ollama и требует ollama signin.
  • DuckDuckGo не требует ключа, но это неофициальная интеграция на основе HTML.
  • SearXNG не требует ключа/может быть самостоятельно размещен; настройте SEARXNG_BASE_URL или plugins.entries.searxng.config.webSearch.baseUrl.
Рекомендуется: запустите openclaw configure --section web и выберите провайдера. Альтернативы через переменные окружения:
  • Brave: BRAVE_API_KEY
  • Exa: EXA_API_KEY
  • Firecrawl: FIRECRAWL_API_KEY
  • Gemini: GEMINI_API_KEY
  • Grok: xAI OAuth, XAI_API_KEY
  • Kimi: KIMI_API_KEY или MOONSHOT_API_KEY
  • MiniMax Search: MINIMAX_CODE_PLAN_KEY, MINIMAX_CODING_API_KEY или MINIMAX_API_KEY
  • Perplexity: PERPLEXITY_API_KEY или OPENROUTER_API_KEY
  • SearXNG: SEARXNG_BASE_URL
  • Tavily: TAVILY_API_KEY
{
  plugins: {
    entries: {
      brave: {
        config: {
          webSearch: {
            apiKey: "BRAVE_API_KEY_HERE",
          },
        },
      },
    },
    },
    tools: {
      web: {
        search: {
          enabled: true,
          provider: "brave",
          maxResults: 5,
        },
        fetch: {
          enabled: true,
          provider: "firecrawl", // optional; omit for auto-detect
        },
      },
    },
}
Конфиг веб-поиска для конкретного провайдера теперь находится в plugins.entries.<plugin>.config.webSearch.*. Устаревшие пути провайдера tools.web.search.* пока загружаются для совместимости, но их не следует использовать для новых конфигов. Конфиг fallback для веб-загрузки Firecrawl находится в plugins.entries.firecrawl.config.webFetch.*.Примечания:
  • Если вы используете списки разрешений, добавьте web_search/web_fetch/x_search или group:web.
  • web_fetch включен по умолчанию (если явно не отключен).
  • Если tools.web.fetch.provider опущен, OpenClaw автоматически обнаруживает первого готового fallback-провайдера для загрузки по доступным учетным данным. Официальный Plugin Firecrawl предоставляет этот fallback.
  • Демоны читают переменные окружения из ~/.openclaw/.env (или из окружения сервиса).
Документация: Веб-инструменты.
config.apply заменяет весь конфиг. Если отправить частичный объект, все остальное будет удалено.Текущий OpenClaw защищает от многих случайных затираний:
  • Операции записи конфига, принадлежащие OpenClaw, проверяют полный конфиг после изменения перед записью.
  • Недопустимые или разрушительные операции записи, принадлежащие OpenClaw, отклоняются и сохраняются как openclaw.json.rejected.*.
  • Если прямое редактирование ломает запуск или hot reload, Gateway аварийно закрывается или пропускает перезагрузку; он не перезаписывает openclaw.json.
  • openclaw doctor --fix отвечает за исправление и может восстановить последнюю рабочую версию, сохранив отклоненный файл как openclaw.json.clobbered.*.
Восстановление:
  • Проверьте openclaw logs --follow на наличие Invalid config at, Config write rejected: или config reload skipped (invalid config).
  • Проверьте самый новый openclaw.json.clobbered.* или openclaw.json.rejected.* рядом с активным конфигом.
  • Запустите openclaw config validate и openclaw doctor --fix.
  • Верните только нужные ключи через openclaw config set или config.patch.
  • Если у вас нет последней рабочей версии или отклоненной полезной нагрузки, восстановите из резервной копии или заново запустите openclaw doctor и перенастройте каналы/модели.
  • Если это было неожиданно, создайте баг-репорт и приложите последний известный конфиг или любую резервную копию.
  • Локальный кодовый агент часто может восстановить рабочий конфиг по логам или истории.
Как избежать:
  • Используйте openclaw config set для небольших изменений.
  • Используйте openclaw configure для интерактивного редактирования.
  • Сначала используйте config.schema.lookup, если не уверены в точном пути или форме поля; он возвращает неглубокий узел схемы плюс краткие описания непосредственных дочерних элементов для детализации.
  • Используйте config.patch для частичного редактирования через RPC; оставьте config.apply только для полной замены конфига.
  • Если вы используете агентский инструмент gateway из запуска агента, он все равно будет отклонять записи в tools.exec.ask / tools.exec.security (включая устаревшие алиасы tools.bash.*, которые нормализуются к тем же защищенным путям exec).
Документация: Конфиг, Настройка, Устранение неполадок Gateway, Doctor.
Распространенный шаблон: один Gateway (например, Raspberry Pi) плюс узлы и агенты:
  • Gateway (центральный): отвечает за каналы (Signal/WhatsApp), маршрутизацию и сессии.
  • Узлы (устройства): Mac/iOS/Android подключаются как периферия и предоставляют локальные инструменты (system.run, canvas, camera).
  • Агенты (воркеры): отдельные «мозги»/рабочие пространства для специальных ролей (например, «Hetzner ops», «Personal data»).
  • Субагенты: запускают фоновую работу из основного агента, когда нужен параллелизм.
  • TUI: подключайтесь к Gateway и переключайте агентов/сессии.
Документация: Узлы, Удаленный доступ, Маршрутизация с несколькими агентами, Субагенты, TUI.
Да. Это опция конфига:
{
  browser: { headless: true },
  agents: {
    defaults: {
      sandbox: { browser: { headless: true } },
    },
  },
}
По умолчанию false (с графическим интерфейсом). Headless с большей вероятностью вызывает антибот-проверки на некоторых сайтах. См. Браузер.Headless использует тот же движок Chromium и работает для большинства видов автоматизации (формы, клики, скрейпинг, входы). Основные отличия:
  • Нет видимого окна браузера (используйте скриншоты, если нужна визуальная проверка).
  • Некоторые сайты строже относятся к автоматизации в headless-режиме (CAPTCHA, антибот). Например, X/Twitter часто блокирует headless-сессии.
Задайте browser.executablePath равным бинарному файлу Brave (или любого браузера на основе Chromium) и перезапустите Gateway. См. полные примеры конфига в Браузер.

Удаленные Gateway и узлы

Сообщения Telegram обрабатываются gateway. Gateway запускает агента и только затем вызывает узлы через Gateway WebSocket, когда нужен инструмент узла:Telegram → Gateway → Agent → node.* → Node → Gateway → TelegramУзлы не видят входящий трафик провайдера; они получают только RPC-вызовы узлов.
Короткий ответ: сопрягите компьютер как узел. Gateway работает в другом месте, но может вызывать инструменты node.* (экран, камера, система) на вашей локальной машине через Gateway WebSocket.Типичная настройка:
  1. Запустите Gateway на постоянно включенном хосте (VPS/домашний сервер).
  2. Добавьте хост Gateway и ваш компьютер в одну tailnet.
  3. Убедитесь, что Gateway WS доступен (привязка к tailnet или SSH-туннель).
  4. Откройте приложение macOS локально и подключитесь в режиме Remote over SSH (или напрямую через tailnet), чтобы оно могло зарегистрироваться как узел.
  5. Одобрите узел на Gateway:
    openclaw devices list
    openclaw devices approve <requestId>
    
Отдельный TCP-мост не требуется; узлы подключаются через Gateway WebSocket.Напоминание о безопасности: сопряжение узла macOS разрешает system.run на этой машине. Сопрягайте только устройства, которым доверяете, и изучите Безопасность.Документация: Узлы, Протокол Gateway, Удаленный режим macOS, Безопасность.
Проверьте базовые вещи:
  • Gateway запущен: openclaw gateway status
  • Состояние Gateway: openclaw status
  • Состояние канала: openclaw channels status
Затем проверьте аутентификацию и маршрутизацию:
  • Если вы используете Tailscale Serve, убедитесь, что gateway.auth.allowTailscale задан корректно.
  • Если вы подключаетесь через SSH-туннель, подтвердите, что локальный туннель поднят и указывает на правильный порт.
  • Подтвердите, что ваши списки разрешений (DM или группа) включают вашу учетную запись.
Документация: Tailscale, Удаленный доступ, Каналы.
Да. Встроенного моста «бот-бот» нет, но это можно надежно настроить несколькими способами:Самый простой: используйте обычный чат-канал, к которому имеют доступ оба бота (Telegram/Slack/WhatsApp). Пусть бот A отправит сообщение боту B, а затем бот B ответит как обычно.CLI-мост (универсальный): запустите скрипт, который вызывает другой Gateway с openclaw agent --message ... --deliver, нацеливаясь на чат, где слушает другой бот. Если один бот находится на удаленном VPS, направьте ваш CLI на этот удаленный Gateway через SSH/Tailscale (см. Удаленный доступ).Пример шаблона (запускайте с машины, которая может достучаться до целевого Gateway):
openclaw agent --message "Hello from local bot" --deliver --channel telegram --reply-to <chat-id>
Совет: добавьте защитное ограничение, чтобы два бота не зацикливались бесконечно (только по упоминанию, списки разрешений каналов или правило «не отвечать на сообщения ботов»).Документация: Удаленный доступ, CLI агента, Отправка агентом.
Нет. Один Gateway может размещать несколько агентов, каждый со своим рабочим пространством, настройками моделей по умолчанию и маршрутизацией. Это обычная настройка, и она намного дешевле и проще, чем запускать отдельный VPS для каждого агента.Используйте отдельные VPS только тогда, когда нужна жесткая изоляция (границы безопасности) или сильно разные конфиги, которыми вы не хотите делиться. В остальных случаях оставьте один Gateway и используйте нескольких агентов или субагентов.
Да - узлы являются основным способом доступа к вашему ноутбуку с удаленного Gateway, и они дают больше, чем доступ к оболочке. Gateway работает на macOS/Linux (Windows через WSL2) и легковесен (небольшого VPS или устройства класса Raspberry Pi достаточно; 4 ГБ RAM более чем хватает), поэтому распространенная схема - постоянно включенный хост плюс ваш ноутбук как узел.
  • Входящий SSH не требуется. Узлы подключаются наружу к WebSocket Gateway и используют сопряжение устройств.
  • Более безопасные элементы управления выполнением. system.run ограничивается allowlist/подтверждениями узла на этом ноутбуке.
  • Больше инструментов устройства. Узлы предоставляют canvas, camera и screen в дополнение к system.run.
  • Локальная автоматизация браузера. Оставьте Gateway на VPS, но запускайте Chrome локально через хост узла на ноутбуке или подключайтесь к локальному Chrome на хосте через Chrome MCP.
SSH подходит для разового доступа к оболочке, но узлы проще для постоянных рабочих процессов агента и автоматизации устройств.Документация: Узлы, CLI узлов, Браузер.
Нет. На одном хосте должен работать только один gateway, если вы намеренно не запускаете изолированные профили (см. Несколько gateway). Узлы - это периферийные устройства, которые подключаются к gateway (узлы iOS/Android или “режим узла” macOS в приложении меню). Для headless-хостов узлов и управления через CLI см. CLI хоста Node.Полный перезапуск требуется для изменений gateway, discovery и поверхности размещенных plugin.
Да.
  • config.schema.lookup: проверить одно поддерево конфигурации с его неглубоким узлом схемы, совпавшей UI-подсказкой и сводками непосредственных дочерних элементов перед записью
  • config.get: получить текущий снимок + hash
  • config.patch: безопасное частичное обновление (предпочтительно для большинства правок через RPC); выполняет горячую перезагрузку, когда возможно, и перезапускает, когда требуется
  • config.apply: проверить + заменить всю конфигурацию; выполняет горячую перезагрузку, когда возможно, и перезапускает, когда требуется
  • Агентский runtime-инструмент gateway по-прежнему отказывается перезаписывать tools.exec.ask / tools.exec.security; устаревшие алиасы tools.bash.* нормализуются в те же защищенные пути exec
{
  agents: { defaults: { workspace: "~/.openclaw/workspace" } },
  channels: { whatsapp: { allowFrom: ["+15555550123"] } },
}
Это задает ваш workspace и ограничивает, кто может запускать бота.
Минимальные шаги:
  1. Установите + войдите на VPS
    curl -fsSL https://tailscale.com/install.sh | sh
    sudo tailscale up
    
  2. Установите + войдите на вашем Mac
    • Используйте приложение Tailscale и войдите в тот же tailnet.
  3. Включите MagicDNS (рекомендуется)
    • В консоли администратора Tailscale включите MagicDNS, чтобы у VPS было стабильное имя.
  4. Используйте hostname tailnet
    • SSH: ssh user@your-vps.tailnet-xxxx.ts.net
    • Gateway WS: ws://your-vps.tailnet-xxxx.ts.net:18789
Если вам нужен Control UI без SSH, используйте Tailscale Serve на VPS:
openclaw gateway --tailscale serve
Это оставляет gateway привязанным к loopback и открывает HTTPS через Tailscale. См. Tailscale.
Serve открывает Control UI Gateway + WS. Узлы подключаются через тот же endpoint Gateway WS.Рекомендуемая настройка:
  1. Убедитесь, что VPS + Mac находятся в одном tailnet.
  2. Используйте приложение macOS в удаленном режиме (цель SSH может быть hostname tailnet). Приложение создаст туннель к порту Gateway и подключится как узел.
  3. Одобрите узел на gateway:
    openclaw devices list
    openclaw devices approve <requestId>
    
Документация: Протокол Gateway, Обнаружение, Удаленный режим macOS.
Если на втором ноутбуке вам нужны только локальные инструменты (screen/camera/exec), добавьте его как узел. Так у вас останется один Gateway и не будет дублированной конфигурации. Локальные инструменты узла сейчас доступны только для macOS, но мы планируем расширить их на другие ОС.Устанавливайте второй Gateway только если вам нужна жесткая изоляция или два полностью отдельных бота.Документация: Узлы, CLI узлов, Несколько gateway.

Переменные окружения и загрузка .env

OpenClaw читает переменные окружения из родительского процесса (оболочка, launchd/systemd, CI и т. д.) и дополнительно загружает:
  • .env из текущего рабочего каталога
  • глобальный резервный .env из ~/.openclaw/.env (то есть $OPENCLAW_STATE_DIR/.env)
Ни один файл .env не переопределяет существующие переменные окружения. Переменные учетных данных провайдеров являются исключением для workspace .env: ключи вроде GEMINI_API_KEY, XAI_API_KEY или MISTRAL_API_KEY игнорируются из workspace .env и должны находиться в окружении процесса, ~/.openclaw/.env или env конфигурации.Вы также можете задать встроенные переменные окружения в конфигурации (применяются только если отсутствуют в окружении процесса):
{
  env: {
    OPENROUTER_API_KEY: "sk-or-...",
    vars: { GROQ_API_KEY: "gsk-..." },
  },
}
Полный порядок приоритетов и источники см. в /environment.
Два распространенных исправления:
  1. Поместите отсутствующие ключи в ~/.openclaw/.env, чтобы они подхватывались даже когда сервис не наследует окружение вашей оболочки.
  2. Включите импорт оболочки (удобство по явному выбору):
{
  env: {
    shellEnv: {
      enabled: true,
      timeoutMs: 15000,
    },
  },
}
Это запускает вашу login shell и импортирует только отсутствующие ожидаемые ключи (никогда не переопределяет). Эквиваленты переменных окружения: OPENCLAW_LOAD_SHELL_ENV=1, OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000.
openclaw models status сообщает, включен ли импорт shell env. “Импорт shell env: выключен” не означает, что ваши переменные окружения отсутствуют - это лишь означает, что OpenClaw не будет автоматически загружать вашу login shell.Если Gateway запущен как сервис (launchd/systemd), он не наследует окружение вашей оболочки. Исправьте одним из способов:
  1. Поместите токен в ~/.openclaw/.env:
    COPILOT_GITHUB_TOKEN=...
    
  2. Или включите импорт оболочки (env.shellEnv.enabled: true).
  3. Или добавьте его в блок env вашей конфигурации (применяется только если отсутствует).
Затем перезапустите gateway и проверьте снова:
openclaw models status
Токены Copilot читаются из COPILOT_GITHUB_TOKEN (также GH_TOKEN / GITHUB_TOKEN). См. /concepts/model-providers и /environment.

Сессии и несколько чатов

Отправьте /new или /reset отдельным сообщением. См. Управление сессиями.
Сессии могут истекать после session.idleMinutes, но это отключено по умолчанию (по умолчанию 0). Задайте положительное значение, чтобы включить истечение по бездействию. Когда это включено, следующее сообщение после периода бездействия запускает новый id сессии для этого ключа чата. Это не удаляет транскрипты - просто начинается новая сессия.
{
  session: {
    idleMinutes: 240,
  },
}
Да, через маршрутизацию нескольких агентов и субагентов. Вы можете создать одного координатора и несколько рабочих агентов со своими workspace и моделями.При этом это лучше рассматривать как интересный эксперимент. Он потребляет много токенов и часто менее эффективен, чем один бот с отдельными сессиями. Типичная модель, которую мы предполагаем, - один бот, с которым вы общаетесь, и разные сессии для параллельной работы. Этот бот также может запускать субагентов при необходимости.Документация: Маршрутизация нескольких агентов, Субагенты, CLI агентов.
Контекст сессии ограничен окном модели. Длинные чаты, большие выводы инструментов или множество файлов могут вызвать Compaction или обрезку.Что помогает:
  • Попросите бота суммировать текущее состояние и записать его в файл.
  • Используйте /compact перед длинными задачами и /new при смене темы.
  • Держите важный контекст в workspace и попросите бота прочитать его обратно.
  • Используйте субагентов для долгой или параллельной работы, чтобы основной чат оставался меньше.
  • Выберите модель с большим окном контекста, если это часто происходит.
Используйте команду сброса:
openclaw reset
Полный неинтерактивный сброс:
openclaw reset --scope full --yes --non-interactive
Затем снова запустите настройку:
openclaw onboard --install-daemon
Примечания:
  • Onboarding также предлагает Сброс, если видит существующую конфигурацию. См. Onboarding (CLI).
  • Если вы использовали профили (--profile / OPENCLAW_PROFILE), сбросьте каждый каталог состояния (по умолчанию это ~/.openclaw-<profile>).
  • Сброс для разработки: openclaw gateway --dev --reset (только для разработки; стирает dev-конфигурацию + учетные данные + сессии + workspace).
Используйте один из вариантов:
  • Compaction (сохраняет разговор, но суммирует более старые ходы):
    /compact
    
    или /compact <instructions>, чтобы направить сводку.
  • Сброс (новый ID сессии для того же ключа чата):
    /new
    /reset
    
Если это продолжает происходить:
  • Включите или настройте обрезку сессии (agents.defaults.contextPruning), чтобы сокращать старый вывод инструментов.
  • Используйте модель с большим окном контекста.
Документация: Compaction, Обрезка сессии, Управление сессиями.
Это ошибка валидации провайдера: модель выдала блок tool_use без обязательного input. Обычно это означает, что история сессии устарела или повреждена (часто после длинных тредов или изменения инструмента/схемы).Исправление: начните новую сессию с /new (отдельным сообщением).
Heartbeat по умолчанию выполняются каждые 30m (1h при использовании OAuth-аутентификации). Настройте или отключите их:
{
  agents: {
    defaults: {
      heartbeat: {
        every: "2h", // or "0m" to disable
      },
    },
  },
}
Если HEARTBEAT.md существует, но фактически пуст (только пустые строки, комментарии Markdown/HTML, заголовки Markdown вроде # Heading, маркеры блоков кода или пустые заготовки чек-листов), OpenClaw пропускает запуск Heartbeat, чтобы сэкономить вызовы API. Если файл отсутствует, Heartbeat всё равно запускается, а модель решает, что делать.Переопределения для отдельных агентов используют agents.list[].heartbeat. Документация: Heartbeat.
Нет. OpenClaw работает от имени вашей собственной учётной записи, поэтому если вы состоите в группе, OpenClaw может её видеть. По умолчанию ответы в группах заблокированы, пока вы не разрешите отправителей (groupPolicy: "allowlist").Если вы хотите, чтобы только вы могли запускать ответы в группе:
{
  channels: {
    whatsapp: {
      groupPolicy: "allowlist",
      groupAllowFrom: ["+15551234567"],
    },
  },
}
Вариант 1 (самый быстрый): отслеживайте логи и отправьте тестовое сообщение в группе:
openclaw logs --follow --json
Найдите chatId (или from), заканчивающийся на @g.us, например: 1234567890-1234567890@g.us.Вариант 2 (если уже настроено/добавлено в allowlist): вывести список групп из конфигурации:
openclaw directory groups list --channel whatsapp
Документация: WhatsApp, Directory, Логи.
Две распространённые причины:
  • Фильтрация по упоминанию включена (по умолчанию). Нужно @упомянуть бота (или совпасть с mentionPatterns).
  • Вы настроили channels.whatsapp.groups без "*", и группа не добавлена в allowlist.
См. Группы и Групповые сообщения.
Личные чаты по умолчанию сворачиваются в основную сессию. У групп/каналов собственные ключи сессий, а темы Telegram / треды Discord являются отдельными сессиями. См. Группы и Групповые сообщения.
Жёстких ограничений нет. Десятки (даже сотни) допустимы, но следите за:
  • Ростом диска: сессии и транскрипты находятся в ~/.openclaw/agents/<agentId>/sessions/.
  • Стоимостью токенов: больше агентов означает больше одновременного использования моделей.
  • Операционной нагрузкой: профили авторизации, рабочие пространства и маршрутизация каналов для каждого агента.
Советы:
  • Держите одно активное рабочее пространство на агента (agents.defaults.workspace).
  • Очищайте старые сессии (удаляйте JSONL или записи хранилища), если диск растёт.
  • Используйте openclaw doctor, чтобы находить лишние рабочие пространства и несовпадения профилей.
Да. Используйте маршрутизацию нескольких агентов, чтобы запускать несколько изолированных агентов и маршрутизировать входящие сообщения по каналу/учётной записи/собеседнику. Slack поддерживается как канал и может быть привязан к конкретным агентам.Доступ к браузеру мощный, но это не «делать всё, что может человек» — антибот-защита, CAPTCHA и MFA всё ещё могут блокировать автоматизацию. Для наиболее надёжного управления браузером используйте локальный Chrome MCP на хосте или CDP на машине, где фактически запущен браузер.Рекомендуемая настройка:
  • Постоянно работающий хост Gateway (VPS/Mac mini).
  • Один агент на роль (привязки).
  • Канал(ы) Slack, привязанные к этим агентам.
  • Локальный браузер через Chrome MCP или узел при необходимости.
Документация: Маршрутизация нескольких агентов, Slack, Браузер, Узлы.

Модели, отказоустойчивость и профили авторизации

Вопросы и ответы о моделях — значения по умолчанию, выбор, псевдонимы, переключение, отказоустойчивость, профили авторизации — находятся в FAQ по моделям.

Gateway: порты, «уже запущен» и удалённый режим

gateway.port управляет единым мультиплексированным портом для WebSocket + HTTP (Control UI, хуки и т. д.).Приоритет:
--port > OPENCLAW_GATEWAY_PORT > gateway.port > default 18789
Потому что “running” — это представление супервизора (launchd/systemd/schtasks). Проверка подключения — это фактическое подключение CLI к WebSocket Gateway.Используйте openclaw gateway status и доверяйте этим строкам:
  • Probe target: (URL, который фактически использовала проверка)
  • Listening: (что фактически привязано к порту)
  • Last gateway error: (частая первопричина, когда процесс жив, но порт не слушает)
Вы редактируете один файл конфигурации, тогда как сервис запущен с другим (часто это несовпадение --profile / OPENCLAW_STATE_DIR).Исправление:
openclaw gateway install --force
Запустите это из того же --profile / окружения, которое должен использовать сервис.
OpenClaw обеспечивает блокировку runtime, сразу привязывая WebSocket-слушатель при запуске (по умолчанию ws://127.0.0.1:18789). Если привязка завершается ошибкой EADDRINUSE, он выбрасывает GatewayLockError, указывая, что другой экземпляр уже слушает порт.Исправление: остановите другой экземпляр, освободите порт или запустите с openclaw gateway --port <port>.
Задайте gateway.mode: "remote" и укажите удаленный WebSocket URL, при необходимости с удаленными учетными данными на основе общего секрета:
{
  gateway: {
    mode: "remote",
    remote: {
      url: "ws://gateway.tailnet:18789",
      token: "your-token",
      password: "your-password",
    },
  },
}
Примечания:
  • openclaw gateway запускается только когда gateway.mode равен local (или если передан флаг переопределения).
  • Приложение macOS отслеживает файл конфигурации и переключает режимы на лету при изменении этих значений.
  • gateway.remote.token / .password — это только клиентские удаленные учетные данные; сами по себе они не включают аутентификацию локального gateway.
Путь аутентификации вашего gateway и метод аутентификации UI не совпадают.Факты (из кода):
  • Control UI хранит токен в sessionStorage для текущей сессии вкладки браузера и выбранного URL gateway, поэтому обновления той же вкладки продолжают работать без восстановления долговременного сохранения токена в localStorage.
  • При AUTH_TOKEN_MISMATCH доверенные клиенты могут выполнить одну ограниченную повторную попытку с кэшированным токеном устройства, когда gateway возвращает подсказки для повтора (canRetryWithDeviceToken=true, recommendedNextStep=retry_with_device_token).
  • Эта повторная попытка с кэшированным токеном теперь повторно использует кэшированные одобренные области доступа, сохраненные вместе с токеном устройства. Вызывающие стороны с явным deviceToken / явными scopes по-прежнему сохраняют свой запрошенный набор областей доступа вместо наследования кэшированных областей.
  • Вне этого пути повтора приоритет аутентификации подключения таков: сначала явный общий токен/пароль, затем явный deviceToken, затем сохраненный токен устройства, затем bootstrap-токен.
  • Встроенный bootstrap с кодом настройки предназначен только для узлов. После одобрения он возвращает токен устройства узла с scopes: [] и не возвращает переданный токен оператора.
Исправление:
  • Самое быстрое: openclaw dashboard (печатает и копирует URL панели управления, пытается открыть; показывает подсказку SSH, если среда headless).
  • Если у вас еще нет токена: openclaw doctor --generate-gateway-token.
  • Если удаленно, сначала создайте туннель: ssh -N -L 18789:127.0.0.1:18789 user@host, затем откройте http://127.0.0.1:18789/.
  • Режим общего секрета: задайте gateway.auth.token / OPENCLAW_GATEWAY_TOKEN или gateway.auth.password / OPENCLAW_GATEWAY_PASSWORD, затем вставьте совпадающий секрет в настройках Control UI.
  • Режим Tailscale Serve: убедитесь, что gateway.auth.allowTailscale включен и вы открываете URL Serve, а не сырой loopback/tailnet URL, который обходит заголовки идентификации Tailscale.
  • Режим доверенного прокси: убедитесь, что вы заходите через настроенный identity-aware прокси, а не по сырому URL gateway. Same-host loopback прокси также требуют gateway.auth.trustedProxy.allowLoopback = true.
  • Если несоответствие сохраняется после одной повторной попытки, перевыпустите/повторно одобрите связанный токен устройства:
    • openclaw devices list
    • openclaw devices rotate --device <id> --role operator
  • Если этот вызов rotate сообщает, что он был отклонен, проверьте две вещи:
    • сессии связанных устройств могут перевыпускать только свое собственное устройство, если у них также нет operator.admin
    • явные значения --scope не могут превышать текущие operator scopes вызывающей стороны
  • Все еще не работает? Запустите openclaw status --all и следуйте Устранению неполадок. Подробности об аутентификации см. в Dashboard.
Привязка tailnet выбирает IP Tailscale из сетевых интерфейсов (100.64.0.0/10). Если машина не подключена к Tailscale (или интерфейс отключен), привязываться не к чему.Исправление:
  • Запустите Tailscale на этом хосте (чтобы у него был адрес 100.x), или
  • Переключитесь на gateway.bind: "loopback" / "lan".
Примечание: tailnet задается явно. auto предпочитает loopback; используйте gateway.bind: "tailnet", когда нужна привязка только к tailnet.
Обычно нет — один Gateway может обслуживать несколько каналов сообщений и агентов. Используйте несколько Gateways только когда нужна избыточность (например: rescue bot) или жесткая изоляция.Да, но нужно изолировать:
  • OPENCLAW_CONFIG_PATH (конфигурация для каждого экземпляра)
  • OPENCLAW_STATE_DIR (состояние для каждого экземпляра)
  • agents.defaults.workspace (изоляция рабочей области)
  • gateway.port (уникальные порты)
Быстрая настройка (рекомендуется):
  • Используйте openclaw --profile <name> ... для каждого экземпляра (автоматически создает ~/.openclaw-<name>).
  • Задайте уникальный gateway.port в конфигурации каждого профиля (или передайте --port для ручных запусков).
  • Установите сервис для профиля: openclaw --profile <name> gateway install.
Профили также добавляют суффикс к именам сервисов (ai.openclaw.<profile>; legacy com.openclaw.*, openclaw-gateway-<profile>.service, OpenClaw Gateway (<profile>)). Полное руководство: Несколько gateways.
Gateway — это WebSocket-сервер, и он ожидает, что самым первым сообщением будет кадр connect. Если он получает что-либо другое, он закрывает соединение с кодом 1008 (нарушение политики).Распространенные причины:
  • Вы открыли HTTP URL в браузере (http://...) вместо WS-клиента.
  • Вы использовали неправильный порт или путь.
  • Прокси или туннель удалил заголовки аутентификации или отправил запрос не для Gateway.
Быстрые исправления:
  1. Используйте WS URL: ws://<host>:18789 (или wss://..., если HTTPS).
  2. Не открывайте WS-порт в обычной вкладке браузера.
  3. Если аутентификация включена, включите токен/пароль в кадр connect.
Если вы используете CLI или TUI, URL должен выглядеть так:
openclaw tui --url ws://<host>:18789 --token <token>
Подробности протокола: Протокол Gateway.

Логирование и отладка

Файловые логи (структурированные):
/tmp/openclaw/openclaw-YYYY-MM-DD.log
Вы можете задать стабильный путь через logging.file. Уровень файлового журнала управляется logging.level. Подробность вывода в консоль управляется --verbose и logging.consoleLevel.Самый быстрый просмотр журнала:
openclaw logs --follow
Журналы службы/супервизора (когда Gateway работает через launchd/systemd):
  • stdout macOS launchd: ~/Library/Logs/openclaw/gateway.log (профили используют gateway-<profile>.log; stderr подавляется)
  • Linux: journalctl --user -u openclaw-gateway[-<profile>].service -n 200 --no-pager
  • Windows: schtasks /Query /TN "OpenClaw Gateway (<profile>)" /V /FO LIST
Подробнее см. в разделе Устранение неполадок.
Используйте вспомогательные команды Gateway:
openclaw gateway status
openclaw gateway restart
Если вы запускаете Gateway вручную, openclaw gateway --force может освободить порт. См. Gateway.
Есть три режима установки Windows:1) Локальная настройка Windows Hub: нативное приложение управляет локальным Gateway в WSL, принадлежащим приложению.Откройте OpenClaw Companion из меню «Пуск» или трея, затем используйте Настройка Gateway или вкладку «Подключения».2) Ручной Gateway WSL2: Gateway работает внутри Linux.Откройте PowerShell, войдите в WSL, затем перезапустите:
wsl
openclaw gateway status
openclaw gateway restart
Если вы никогда не устанавливали службу, запустите ее на переднем плане:
openclaw gateway run
3) Нативные Windows CLI/Gateway: Gateway работает напрямую в Windows.Откройте PowerShell и выполните:
openclaw gateway status
openclaw gateway restart
Если вы запускаете его вручную (без службы), используйте:
openclaw gateway run
Документация: Windows, регламент службы Gateway.
Начните с быстрой проверки состояния:
openclaw status
openclaw models status
openclaw channels status
openclaw logs --follow
Частые причины:
  • Авторизация модели не загружена на узле Gateway (проверьте models status).
  • Сопряжение канала или список разрешений блокирует ответы (проверьте конфигурацию канала и журналы).
  • WebChat/Dashboard открыт без правильного токена.
Если вы подключены удаленно, убедитесь, что туннель/соединение Tailscale активно и WebSocket Gateway доступен.Документация: Каналы, Устранение неполадок, Удаленный доступ.
Обычно это означает, что UI потерял соединение WebSocket. Проверьте:
  1. Запущен ли Gateway? openclaw gateway status
  2. Исправен ли Gateway? openclaw status
  3. Есть ли у UI правильный токен? openclaw dashboard
  4. Если подключение удаленное, активна ли ссылка туннеля/Tailscale?
Затем просмотрите журналы:
openclaw logs --follow
Документация: Dashboard, Удаленный доступ, Устранение неполадок.
Начните с журналов и состояния канала:
openclaw channels status
openclaw channels logs --channel telegram
Затем сопоставьте ошибку:
  • BOT_COMMANDS_TOO_MUCH: в меню Telegram слишком много пунктов. OpenClaw уже сокращает список до лимита Telegram и повторяет попытку с меньшим количеством команд, но некоторые пункты меню все равно нужно удалить. Сократите команды плагинов/Skills/пользовательские команды или отключите channels.telegram.commands.native, если меню вам не нужно.
  • TypeError: fetch failed, Network request for 'setMyCommands' failed! или похожие сетевые ошибки: если вы используете VPS или находитесь за прокси, убедитесь, что исходящий HTTPS разрешен и DNS работает для api.telegram.org.
Если Gateway удаленный, убедитесь, что вы смотрите журналы на узле Gateway.Документация: Telegram, Устранение неполадок каналов.
Сначала убедитесь, что Gateway доступен и агент может запускаться:
openclaw status
openclaw models status
openclaw logs --follow
В TUI используйте /status, чтобы увидеть текущее состояние. Если вы ожидаете ответы в чат-канале, убедитесь, что доставка включена (/deliver on).Документация: TUI, слеш-команды.
Если вы установили службу:
openclaw gateway stop
openclaw gateway start
Это останавливает/запускает службу под супервизором (launchd в macOS, systemd в Linux). Используйте это, когда Gateway работает в фоне как демон.Если вы запускаете его на переднем плане, остановите с помощью Ctrl-C, затем:
openclaw gateway run
Документация: регламент службы Gateway.
  • openclaw gateway restart: перезапускает фоновую службу (launchd/systemd).
  • openclaw gateway: запускает Gateway на переднем плане для этого сеанса терминала.
Если вы установили службу, используйте команды Gateway. Используйте openclaw gateway, когда нужен разовый запуск на переднем плане.
Запустите Gateway с --verbose, чтобы получить более подробный вывод в консоль. Затем проверьте файл журнала на ошибки авторизации каналов, маршрутизации моделей и RPC.

Медиа и вложения

Исходящие вложения от агента должны использовать структурированные поля медиа, такие как media, mediaUrl, path или filePath. См. Настройка ассистента OpenClaw и Отправка агентом.Отправка через CLI:
openclaw message send --target +15555550123 --message "Here you go" --media /path/to/file.png
Также проверьте:
  • Целевой канал поддерживает исходящие медиа и не заблокирован списками разрешений.
  • Файл укладывается в ограничения провайдера по размеру (изображения уменьшаются максимум до 2048px).
  • tools.fs.workspaceOnly=true ограничивает отправки по локальным путям рабочей областью, temp/media-store и файлами, проверенными песочницей.
  • tools.fs.workspaceOnly=false позволяет структурированным отправкам локальных медиа использовать локальные файлы хоста, которые агент уже может читать, но только для медиа и безопасных типов документов (изображения, аудио, видео, PDF, документы Office и проверенные текстовые документы, такие как Markdown/MD, TXT, JSON, YAML и YML). Это не сканер секретов: доступный агенту secret.txt или config.json может быть вложен, если расширение и проверка содержимого совпадают. Держите чувствительные файлы вне путей, доступных агенту, или оставьте tools.fs.workspaceOnly=true для более строгих отправок по локальным путям.
См. Изображения.

Безопасность и контроль доступа

Считайте входящие личные сообщения недоверенным вводом. Значения по умолчанию рассчитаны на снижение риска:
  • Поведение по умолчанию на каналах с поддержкой личных сообщений — сопряжение:
    • Неизвестные отправители получают код сопряжения; бот не обрабатывает их сообщение.
    • Подтвердите с помощью: openclaw pairing approve --channel <channel> [--account <id>] <code>
    • Ожидающие запросы ограничены 3 на канал; проверьте openclaw pairing list --channel <channel> [--account <id>], если код не пришел.
  • Публичное открытие личных сообщений требует явного включения (dmPolicy: "open" и список разрешений "*").
Запустите openclaw doctor, чтобы выявить рискованные политики личных сообщений.
Нет. Prompt injection связана с недоверенным содержимым, а не только с тем, кто может писать боту в личные сообщения. Если ваш ассистент читает внешний контент (web search/fetch, страницы браузера, электронные письма, документы, вложения, вставленные журналы), такой контент может включать инструкции, которые пытаются перехватить управление моделью. Это может произойти даже если вы единственный отправитель.Самый большой риск возникает, когда включены инструменты: модель можно обманом заставить раскрыть контекст или вызвать инструменты от вашего имени. Снизьте радиус поражения так:
  • используйте агента-«читателя» только для чтения или без инструментов, чтобы резюмировать недоверенный контент
  • держите web_search / web_fetch / browser выключенными для агентов с включенными инструментами
  • также считайте декодированный текст файлов/документов недоверенным: OpenResponses input_file и извлечение из медиа-вложений оборачивают извлеченный текст явными маркерами границы внешнего содержимого вместо передачи сырого текста файла
  • используйте песочницы и строгие списки разрешенных инструментов
Подробности: Безопасность.
Язык и среда выполнения важны, но для персонального агента это не основной риск. Практические риски OpenClaw — это доступность Gateway, кто может писать боту, prompt injection, область действия инструментов, работа с учетными данными, доступ браузера, доступ exec и доверие к сторонним skill или плагинам.Rust и WASM могут обеспечивать более сильную изоляцию для некоторых классов кода, но они не решают prompt injection, плохие списки разрешений, публичную доступность Gateway, слишком широкие инструменты или профиль браузера, который уже вошел в чувствительные аккаунты. Считайте это основными средствами контроля:
  • держите Gateway приватным или с аутентификацией
  • используйте сопряжение и списки разрешений для личных сообщений и групп
  • запрещайте или помещайте в песочницу рискованные инструменты для недоверенного ввода
  • устанавливайте только доверенные плагины и skills
  • запускайте openclaw security audit --deep после изменений конфигурации
Подробности: Безопасность, Песочница.
Сначала проверьте свое фактическое развертывание:
openclaw security audit --deep
openclaw gateway status
Более безопасная базовая конфигурация:
  • Gateway привязан к loopback или доступен только через аутентифицированный приватный доступ, например tailnet, SSH-туннель, аутентификацию по токену/паролю или корректно настроенный доверенный прокси
  • личные сообщения в режиме pairing или allowlist
  • группы внесены в список разрешений и требуют упоминания, если не все участники доверенные
  • инструменты высокого риска (exec, browser, gateway, cron) запрещены или строго ограничены для агентов, читающих недоверенное содержимое
  • песочница включена там, где выполнению инструментов нужен меньший радиус поражения
Публичные привязки без аутентификации, открытые личные сообщения/группы с инструментами и открытое управление браузером — это проблемы, которые нужно исправить в первую очередь. Подробности: Контрольный список аудита безопасности.
Относитесь к сторонним skills и плагинам как к коду, которому вы решаете доверять. Страницы skills ClawHub показывают состояние сканирования перед установкой, но сканирование не является полноценной границей безопасности. OpenClaw не запускает встроенную локальную блокировку опасного кода во время установки или обновления плагинов и skills; используйте управляемую оператором security.installPolicy для локальных решений разрешить/заблокировать.Более безопасный подход:
  • предпочитайте доверенных авторов и закрепленные версии
  • читайте skill или плагин перед включением
  • держите списки разрешений для плагинов и skills узкими
  • запускайте workflows с недоверенным вводом в песочнице с минимальным набором инструментов
  • избегайте предоставления стороннему коду широкого доступа к файловой системе, exec, браузеру или секретам
Подробнее: Skills, Plugins, Безопасность.
Да, для большинства настроек. Изоляция бота с помощью отдельных аккаунтов и номеров телефона снижает радиус поражения, если что-то пойдет не так. Это также упрощает ротацию учетных данных или отзыв доступа без влияния на ваши личные аккаунты.Начните с малого. Предоставляйте доступ только к тем инструментам и аккаунтам, которые действительно нужны, и расширяйте его позже, если потребуется.Документация: Безопасность, Сопряжение.
Мы не рекомендуем полную автономию над вашими личными сообщениями. Самый безопасный шаблон:
  • Держите личные сообщения в режиме сопряжения или в строгом списке разрешенных.
  • Используйте отдельный номер или аккаунт, если хотите, чтобы он отправлял сообщения от вашего имени.
  • Пусть он подготавливает черновик, а затем подтверждайте перед отправкой.
Если хотите поэкспериментировать, делайте это на выделенном аккаунте и держите его изолированным. См. Безопасность.
Да, если агент работает только как чат и входные данные являются доверенными. Младшие уровни более уязвимы к перехвату инструкций, поэтому избегайте их для агентов с включенными инструментами или при чтении недоверенного содержимого. Если вам необходимо использовать меньшую модель, жестко ограничьте инструменты и запускайте ее внутри песочницы. См. Безопасность.
Коды сопряжения отправляются только, когда неизвестный отправитель пишет боту и включено dmPolicy: "pairing". Сам по себе /start не создает код.Проверьте ожидающие запросы:
openclaw pairing list telegram
Если нужен немедленный доступ, добавьте id отправителя в список разрешенных или задайте dmPolicy: "open" для этого аккаунта.
Нет. Политика личных сообщений WhatsApp по умолчанию — сопряжение. Неизвестные отправители получают только код сопряжения, а их сообщение не обрабатывается. OpenClaw отвечает только в чатах, сообщения из которых он получает, или на явные отправки, которые запускаете вы.Подтвердите сопряжение с помощью:
openclaw pairing approve whatsapp <code>
Список ожидающих запросов:
openclaw pairing list whatsapp
Запрос номера телефона в мастере настройки: он используется, чтобы настроить ваш список разрешенных/владельца, чтобы ваши собственные личные сообщения были разрешены. Он не используется для автоматической отправки. Если вы запускаете это на своем личном номере WhatsApp, используйте этот номер и включите channels.whatsapp.selfChatMode.

Команды чата, прерывание задач и «он не останавливается»

Большинство внутренних сообщений или сообщений инструментов появляются только когда для этого сеанса включены verbose, trace или reasoning.Исправьте это в чате, где вы их видите:
/verbose off
/trace off
/reasoning off
Если шум все еще остается, проверьте настройки сеанса в Control UI и установите verbose в inherit. Также убедитесь, что вы не используете профиль бота, где в конфигурации verboseDefault задано значение on.Документация: Thinking и verbose, Безопасность.
Отправьте любое из этих сообщений как отдельное сообщение (без косой черты):
stop
stop action
stop current action
stop run
stop current run
stop agent
stop the agent
stop openclaw
openclaw stop
stop don't do anything
stop do not do anything
stop doing anything
please stop
stop please
abort
esc
wait
exit
interrupt
Это триггеры прерывания (не slash-команды).Для фоновых процессов (из инструмента exec) можно попросить агента выполнить:
process action:kill sessionId:XXX
Обзор slash-команд: см. Slash-команды.Большинство команд нужно отправлять как отдельное сообщение, начинающееся с /, но некоторые сокращения (например, /status) также работают внутри сообщения для отправителей из списка разрешенных.
OpenClaw по умолчанию блокирует обмен сообщениями между провайдерами. Если вызов инструмента привязан к Telegram, он не отправит сообщение в Discord, если вы явно не разрешите это.Включите обмен сообщениями между провайдерами для агента:
{
  tools: {
    message: {
      crossContext: {
        allowAcrossProviders: true,
        marker: { enabled: true, prefix: "[from {channel}] " },
      },
    },
  },
}
Перезапустите Gateway после редактирования конфигурации.
По умолчанию подсказки во время выполнения направляются в активный запуск. Используйте /queue, чтобы выбрать поведение активного запуска:
  • steer — направлять активный запуск на следующей границе модели
  • followup — ставить сообщения в очередь и запускать их по одному после завершения текущего запуска
  • collect — ставить совместимые сообщения в очередь и ответить один раз после завершения текущего запуска
  • interrupt — прервать текущий запуск и начать заново
Режим по умолчанию — steer. Для режимов с очередью можно добавить параметры вроде debounce:0.5s cap:25 drop:summarize. См. Очередь команд и Очередь управления.

Разное

В OpenClaw учетные данные и выбор модели разделены. Установка ANTHROPIC_API_KEY (или сохранение API-ключа Anthropic в профилях auth) включает аутентификацию, но фактическая модель по умолчанию — та, которую вы настроите в agents.defaults.model.primary (например, anthropic/claude-sonnet-4-6 или anthropic/claude-opus-4-6). Если вы видите No credentials found for profile "anthropic:default", это означает, что Gateway не смог найти учетные данные Anthropic в ожидаемом auth-profiles.json для запущенного агента.

Все еще не получается? Спросите в Discord или откройте обсуждение GitHub.

Связанные материалы