---
read_when:
    - Ответы на распространённые вопросы о настройке, установке, первоначальной настройке или поддержке среды выполнения
    - Первичный анализ проблем, о которых сообщили пользователи, перед углублённой отладкой
summary: Часто задаваемые вопросы об установке, настройке и использовании OpenClaw
title: Часто задаваемые вопросы
x-i18n:
    generated_at: "2026-07-13T18:11:53Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 24
    provider: openai
    source_hash: 80b94b9d403d04cde5c734927502393417d5f1bfd50c2505b6b4fdcfcdc9f524
    source_path: help/faq.md
    workflow: 16
---

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

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

<Steps>
  <Step title="Быстрая проверка состояния">
    ```bash
    openclaw status
    ```
    Краткая локальная сводка: ОС и обновление, доступность Gateway/службы, агенты/сеансы, конфигурация провайдера и проблемы среды выполнения (если Gateway доступен).
  </Step>
  <Step title="Отчёт для отправки (им можно безопасно делиться)">
    ```bash
    openclaw status --all
    ```
    Диагностика только для чтения с последними строками журнала (токены скрыты).
  </Step>
  <Step title="Состояние демона и порта">
    ```bash
    openclaw gateway status
    ```
    Показывает состояние среды выполнения супервизора и доступность RPC, целевой URL проверки и конфигурацию, которую, вероятно, использовала служба.
  </Step>
  <Step title="Углублённые проверки">
    ```bash
    openclaw status --deep
    ```
    Проверка работоспособности Gateway в реальном времени, включая проверки каналов, если они поддерживаются (требуется доступный Gateway). См. раздел [Работоспособность](/ru/gateway/health).
  </Step>
  <Step title="Просмотр последних записей журнала">
    ```bash
    openclaw logs --follow
    ```
    Если RPC недоступен, используйте:
    ```bash
    tail -f "$(ls -t /tmp/openclaw/openclaw-*.log | head -1)"
    ```
    Файловые журналы отделены от журналов службы; см. разделы [Ведение журналов](/ru/logging) и [Устранение неполадок](/ru/gateway/troubleshooting).
  </Step>
  <Step title="Запуск doctor (исправление)">
    ```bash
    openclaw doctor
    ```
    Исправляет/переносит конфигурацию и состояние, затем выполняет проверки работоспособности. См. раздел [Doctor](/ru/gateway/doctor).
  </Step>
  <Step title="Снимок Gateway (только WS)">
    ```bash
    openclaw health --json
    openclaw health --verbose   # при ошибках показывает целевой URL и путь к конфигурации
    ```
    Запрашивает полный снимок у работающего Gateway. См. раздел [Работоспособность](/ru/gateway/health).
  </Step>
</Steps>

## Быстрый старт и первоначальная настройка

Вопросы и ответы о первом запуске — установка, первоначальная настройка, маршруты аутентификации, подписки, первоначальные сбои — находятся в разделе [Частые вопросы о первом запуске](/ru/help/faq-first-run).

## Что такое OpenClaw?

<AccordionGroup>
  <Accordion title="Что такое OpenClaw в одном абзаце?">
    OpenClaw — персональный ИИ-ассистент, работающий на ваших устройствах. Он отвечает в уже используемых вами системах обмена сообщениями (Discord, Google Chat, iMessage, Mattermost, Signal, Slack, Telegram, WebChat, WhatsApp и комплектных плагинах каналов, таких как QQ Bot), а на поддерживаемых платформах также предоставляет голосовые функции и интерактивный Canvas. **Gateway** — постоянно работающий уровень управления; сам ассистент и есть продукт.
  </Accordion>

  <Accordion title="Ценность">
    OpenClaw — не «просто оболочка для Claude». Это **локальный уровень управления**, запускающий функционального ассистента на **вашем собственном оборудовании** и предоставляющий к нему доступ из уже используемых вами приложений для общения, с сохраняющими состояние сеансами, памятью и инструментами — без передачи ваших рабочих процессов облачному SaaS.

    - **Ваши устройства, ваши данные**: запускайте Gateway где угодно (Mac, Linux, VPS), сохраняя рабочее пространство и историю сеансов локально.
    - **Настоящие каналы, а не веб-песочница**: Discord/iMessage/Signal/Slack/Telegram/WhatsApp и другие, а также голосовые функции на мобильных устройствах и Canvas на поддерживаемых платформах.
    - **Независимость от моделей**: используйте Anthropic, MiniMax, OpenAI, OpenRouter и другие сервисы с маршрутизацией и переключением при сбое для каждого агента.
    - **Полностью локальный вариант**: запускайте локальные модели, чтобы все данные оставались на вашем устройстве.
    - **Маршрутизация нескольких агентов**: отдельные агенты для каждого канала, аккаунта или задачи, каждый со своим рабочим пространством и настройками по умолчанию.
    - **Открытый исходный код и широкие возможности настройки**: изучайте, расширяйте и размещайте самостоятельно без привязки к поставщику.

    Документация: [Gateway](/ru/gateway), [Каналы](/ru/channels), [Несколько агентов](/ru/concepts/multi-agent), [Память](/ru/concepts/memory).

  </Accordion>

  <Accordion title="Я только что всё настроил — с чего начать?">
    Хорошие первые проекты: создать веб-сайт (WordPress, Shopify или статический сайт); разработать прототип мобильного приложения (структура, экраны, план API); упорядочить файлы и папки; подключить Gmail и автоматизировать создание сводок или последующие действия.

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

  </Accordion>

  <Accordion title="Каковы пять основных повседневных сценариев использования OpenClaw?">
    - **Персональные сводки**: сводки по входящим сообщениям, календарю и интересующим вас новостям.
    - **Исследование и подготовка текстов**: быстрый поиск информации, сводки и первые варианты писем или документов.
    - **Напоминания и последующие действия**: подсказки и контрольные списки, запускаемые через Cron или Heartbeat.
    - **Автоматизация браузера**: заполнение форм, сбор данных, выполнение повторяющихся веб-задач.
    - **Координация между устройствами**: отправьте задачу с телефона, позвольте Gateway выполнить её на сервере и получите результат обратно в чате.

  </Accordion>

  <Accordion title="Может ли OpenClaw помочь с привлечением потенциальных клиентов, рассылками, рекламой и блогами для SaaS?">
    Да, в части **исследования, квалификации и подготовки текстов**: сканирования сайтов, составления коротких списков, обобщения информации о потенциальных клиентах, подготовки черновиков рассылок или рекламных текстов.

    При **проведении рассылок или рекламных кампаний** сохраняйте участие человека. Избегайте спама, соблюдайте местное законодательство и правила платформ, проверяйте всё до отправки. Пусть OpenClaw готовит черновики, а вы их утверждаете.

    Документация: [Безопасность](/ru/gateway/security).

  </Accordion>

  <Accordion title="Каковы преимущества перед Claude Code при веб-разработке?">
    OpenClaw — это **персональный ассистент** и уровень координации, а не замена IDE. Используйте Claude Code или Codex для максимально быстрого непосредственного написания кода внутри репозитория. Используйте OpenClaw для долговременной памяти, доступа с разных устройств и оркестрации инструментов.

    - Постоянная память и рабочее пространство между сеансами.
    - Доступ с разных платформ (Telegram, WhatsApp, TUI, WebChat).
    - Оркестрация инструментов (браузер, файлы, планирование, хуки).
    - Постоянно работающий Gateway (запускайте на VPS и взаимодействуйте откуда угодно).
    - Узлы для локального браузера, экрана, камеры и выполнения команд.

    Примеры: [https://openclaw.ai/showcase](https://openclaw.ai/showcase).

  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Как настраивать навыки, не оставляя незакоммиченных изменений в репозитории?">
    Используйте управляемые переопределения вместо редактирования копии в репозитории. Поместите изменения в `~/.openclaw/skills/<name>/SKILL.md` (или добавьте папку через `skills.load.extraDirs` в `~/.openclaw/openclaw.json`). Приоритет: `<workspace>/skills` -> `<workspace>/.agents/skills` -> `~/.agents/skills` -> `~/.openclaw/skills` -> комплектные -> `skills.load.extraDirs`, поэтому управляемые переопределения имеют приоритет над комплектными навыками без изменения git. Чтобы установить глобально, но ограничить видимость некоторыми агентами, храните общую копию в `~/.openclaw/skills` и управляйте видимостью с помощью `agents.defaults.skills` / `agents.list[].skills`. В виде PR для копии в репозитории следует отправлять только изменения, достойные включения в основной проект.
  </Accordion>

  <Accordion title="Можно ли загружать навыки из пользовательской папки?">
    Да: добавьте каталоги через `skills.load.extraDirs` в `~/.openclaw/openclaw.json` (самый низкий приоритет в приведённом выше порядке). `clawhub` по умолчанию устанавливает в `./skills`, который OpenClaw при следующем сеансе рассматривает как `<workspace>/skills`. Чтобы ограничить видимость определёнными агентами, используйте это вместе с `agents.defaults.skills` или `agents.list[].skills`.
  </Accordion>

  <Accordion title="Как использовать разные модели или настройки для разных задач?">
    Поддерживаемые варианты:

    - **Задания Cron**: изолированные задания могут задавать переопределение `model` для каждого задания.
    - **Агенты**: направляйте задачи отдельным агентам с разными моделями по умолчанию, уровнями рассуждения и параметрами потоковой передачи.
    - **Переключение по запросу**: `/model` в любое время переключает модель текущего сеанса.

    Пример — одна и та же модель с разными настройками для каждого агента:

    ```json5
    {
      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`; этот путь предназначен для каталога моделей и переопределений среды выполнения конкретного агента.

    См. разделы [Задания Cron](/ru/automation/cron-jobs), [Маршрутизация нескольких агентов](/ru/concepts/multi-agent), [Конфигурация](/ru/gateway/config-agents), [Команды с косой чертой](/ru/tools/slash-commands).

  </Accordion>

  <Accordion title="Бот зависает при выполнении ресурсоёмкой работы. Как вынести её выполнение?">
    Используйте **субагентов** для длительных или параллельных задач: они работают в собственных сеансах, возвращают сводку и не блокируют основной чат. Попросите бота «создать субагента для этой задачи» или используйте `/subagents`. Используйте `/status`, чтобы проверить, занят ли сейчас Gateway.

    И длительные задачи, и субагенты расходуют токены; если важна стоимость, задайте для субагентов более дешёвую модель через `agents.defaults.subagents.model`.

    Документация: [Субагенты](/ru/tools/subagents), [Фоновые задачи](/ru/automation/tasks).

  </Accordion>

  <Accordion title="Как работают привязанные к веткам обсуждений сеансы субагентов в Discord?">
    Привяжите ветку обсуждения 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` (по умолчанию `24`, `0` отключает), `session.threadBindings.maxAgeHours` (по умолчанию `0` = без жёсткого ограничения) и переопределения для отдельных каналов `channels.discord.threadBindings.{enabled,idleHours,maxAgeHours}`. `channels.discord.threadBindings.spawnSessions` управляет автоматической привязкой при создании (по умолчанию `true`).

    Документация: [Субагенты](/ru/tools/subagents), [Discord](/ru/channels/discord), [Справочник по конфигурации](/ru/gateway/configuration-reference), [Команды с косой чертой](/ru/tools/slash-commands).

  </Accordion>

  <Accordion title="Субагент завершил работу, но уведомление о завершении отправилось не туда или вообще не было опубликовано. Что проверить?">
    Проверьте определённый маршрут инициатора запроса:

    - При доставке результата субагента в режиме завершения предпочтение отдаётся привязанной ветке обсуждения или маршруту беседы, если они существуют.
    - Если источник завершения содержит только канал, OpenClaw использует сохранённый маршрут сеанса инициатора запроса (`lastChannel` / `lastTo` / `lastAccountId`), чтобы прямая доставка всё ещё могла выполниться.
    - Если нет ни привязанного, ни пригодного сохранённого маршрута, прямая доставка может завершиться сбоем, и вместо немедленной публикации результат будет поставлен в очередь доставки сеанса.
    - Недействительные или устаревшие целевые объекты также могут привести к резервной доставке через очередь или окончательному сбою доставки.
    - Если последний видимый ответ дочернего ассистента в точности равен `NO_REPLY` / `no_reply` или `ANNOUNCE_SKIP`, OpenClaw намеренно подавляет уведомление, а не публикует устаревший предыдущий прогресс.

    Отладка: `openclaw tasks show <lookup>`, где `<lookup>` — идентификатор задачи, идентификатор запуска или ключ сеанса.

    Документация: [Субагенты](/ru/tools/subagents), [Фоновые задачи](/ru/automation/tasks), [Инструменты сеанса](/ru/concepts/session-tool).

  </Accordion>

  <Accordion title="Cron или напоминания не срабатывают. Что проверить?">
    Cron выполняется внутри процесса Gateway; он не срабатывает, если Gateway не работает непрерывно.

    - Убедитесь, что Cron включён (`cron.enabled`), а `OPENCLAW_SKIP_CRON` не задан.
    - Убедитесь, что Gateway работает круглосуточно (без перехода в спящий режим и перезапусков).
    - Проверьте часовой пояс задания (`--tz` и часовой пояс хоста).

    Отладка:
    ```bash
    openclaw cron run <jobId>
    openclaw cron runs --id <jobId> --limit 50
    ```

    Документация: [Задания Cron](/ru/automation/cron-jobs), [Автоматизация](/ru/automation).

  </Accordion>

  <Accordion title="Cron сработал, но в канал ничего не было отправлено. Почему?">
    Проверьте режим доставки:

    - `--no-deliver` / `delivery.mode: "none"`: резервная отправка исполнителем не предполагается.
    - Отсутствует или недействительна цель объявления (`channel` / `to`): исполнитель пропустил исходящую доставку.
    - Ошибки аутентификации канала (`unauthorized`, `Forbidden`): исполнитель попытался выполнить доставку, но учётные данные не позволили это сделать.
    - Безмолвный изолированный результат (только `NO_REPLY` / `no_reply`) считается намеренно не предназначенным для доставки, поэтому резервная доставка из очереди также подавляется.

    Для изолированных заданий Cron агент всё равно может отправлять сообщения напрямую с помощью инструмента `message`, если доступен маршрут чата. `--announce` управляет только резервной доставкой исполнителем итогового текста, который агент ещё не отправил самостоятельно.

    Отладка:
    ```bash
    openclaw cron runs --id <jobId> --limit 50
    openclaw tasks show <lookup>
    ```

    Документация: [Задания Cron](/ru/automation/cron-jobs), [Фоновые задачи](/ru/automation/tasks).

  </Accordion>

  <Accordion title="Почему изолированный запуск Cron переключил модель или один раз повторил попытку?">
    Это рабочий механизм переключения модели, а не повторное планирование. Изолированный Cron сохраняет передачу управления другой модели во время выполнения и повторяет попытку, когда активный запуск выдаёт `LiveSessionModelSwitchError`, сохраняя переключённые провайдера и модель (а также переопределение профиля аутентификации, если оно было переключено) перед повторной попыткой.

    Приоритет выбора модели: сначала переопределение модели обработчиком Gmail (`hooks.gmail.model`), затем `model` для отдельного задания, после него сохранённое переопределение модели сеанса Cron и, наконец, обычный выбор модели агента или модели по умолчанию.

    Цикл повторных попыток ограничен первоначальной попыткой и 2 повторными попытками с переключением; после этого Cron прерывает выполнение, а не повторяет его бесконечно.

    Отладка:
    ```bash
    openclaw cron runs --id <jobId> --limit 50
    ```

    Документация: [Задания Cron](/ru/automation/cron-jobs), [CLI Cron](/ru/cli/cron).

  </Accordion>

  <Accordion title="Как установить Skills в Linux?">
    Используйте встроенные команды `openclaw skills` или поместите Skills в рабочее пространство; интерфейс Skills для macOS недоступен в Linux. Найти Skills можно на сайте [https://clawhub.ai](https://clawhub.ai).

    ```bash
    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.

  </Accordion>

  <Accordion title="Может ли OpenClaw запускать задачи по расписанию или непрерывно в фоновом режиме?">
    Да, с помощью планировщика Gateway:

    - **Задания Cron** для запланированных или повторяющихся задач (сохраняются после перезапусков).
    - **Heartbeat** для периодических проверок основного сеанса.
    - **Изолированные задания** для автономных агентов, которые публикуют сводки или доставляют сообщения в чаты.

    Документация: [Задания Cron](/ru/automation/cron-jobs), [Автоматизация](/ru/automation), [Heartbeat](/ru/gateway/heartbeat).

  </Accordion>

  <Accordion title="Можно ли запускать предназначенные только для Apple macOS Skills из Linux?">
    Не напрямую. Доступность Skills для macOS ограничивается `metadata.openclaw.os` и наличием необходимых исполняемых файлов; они загружаются только при соответствии требованиям на **хосте Gateway**. В Linux Skills, предназначенные только для `darwin` (`apple-notes`, `apple-reminders`, `things-mac`), не загрузятся, если не переопределить это ограничение.

    Поддерживаются три варианта:

    **Вариант A — запуск Gateway на Mac (самый простой)**. Запустите Gateway там, где доступны исполняемые файлы macOS, а затем подключитесь из Linux в [удалённом режиме](#gateway-ports-already-running-and-remote-mode) или через Tailscale. Skills загрузятся обычным образом, поскольку хост Gateway работает под управлением macOS.

    **Вариант B — использование узла macOS (без SSH)**. Запустите Gateway в Linux, подключите узел macOS (приложение в строке меню) и задайте для параметра **Команды запуска узла** на Mac значение «Всегда спрашивать» или «Всегда разрешать». OpenClaw считает предназначенные только для macOS Skills соответствующими требованиям, если необходимые исполняемые файлы доступны на узле; агент запускает их с помощью инструмента `nodes`. При выборе «Всегда спрашивать» подтверждение «Всегда разрешать» в запросе добавляет эту команду в список разрешённых.

    **Вариант C — проксирование исполняемых файлов macOS через SSH (для опытных пользователей)**. Оставьте Gateway в Linux, но настройте необходимые исполняемые файлы CLI так, чтобы они разрешались в обёртки SSH, выполняющие команды на Mac, а затем переопределите Skill, разрешив Linux, чтобы он продолжал соответствовать требованиям.

    1. Создайте обёртку SSH для исполняемого файла (пример: `memo` для Apple Notes):
       ```bash
       #!/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:
       ```markdown
       ---
       name: apple-notes
       description: Управление Apple Notes с помощью CLI memo в macOS.
       metadata: { "openclaw": { "os": ["darwin", "linux"], "requires": { "bins": ["memo"] } } }
       ---
       ```
    4. Запустите новый сеанс, чтобы обновился снимок Skills.

  </Accordion>

  <Accordion title="Есть ли интеграция с Notion или HeyGen?">
    Сейчас встроенной интеграции нет. Возможные варианты:

    - **Пользовательский Skill или плагин**: оптимальный вариант для надёжного доступа к API (API есть у обоих сервисов).
    - **Автоматизация браузера**: работает без написания кода, но медленнее и менее надёжна.

    Для работы агентства с отдельным контекстом каждого клиента создайте по одной странице Notion на клиента (контекст, предпочтения и текущая работа) и попросите агента получать эту страницу в начале сеанса.

    Для нативной интеграции создайте запрос функции или разработайте Skill на основе этих API.

    ```bash
    openclaw skills install @owner/<skill-slug>
    openclaw skills update --all
    ```

    При нативной установке файлы помещаются в каталог `skills/` активного рабочего пространства; используйте `--global` для всех локальных агентов или настройте `agents.defaults.skills` / `agents.list[].skills`, чтобы ограничить видимость. Некоторым Skills требуются исполняемые файлы, установленные через Homebrew; в Linux для этого используется Linuxbrew.

    См. [Skills](/ru/tools/skills), [Конфигурация Skills](/ru/tools/skills-config), [ClawHub](/tools/clawhub).

  </Accordion>

  <Accordion title="Как использовать с OpenClaw существующий профиль Chrome, в котором уже выполнен вход?">
    Используйте встроенный профиль браузера `user`, который подключается через Chrome DevTools MCP:

    ```bash
    openclaw browser --browser-profile user tabs
    openclaw browser --browser-profile user snapshot
    ```

    Чтобы использовать собственное имя, создайте явный профиль MCP:

    ```bash
    openclaw browser create-profile --name chrome-live --driver existing-session
    openclaw browser --browser-profile chrome-live tabs
    ```

    Можно использовать браузер локального хоста или подключённый браузерный узел. Если Gateway работает на другом компьютере, запустите хост узла на компьютере с браузером или используйте удалённый CDP.

    Текущие ограничения профилей `existing-session` / `user` по сравнению с управляемым профилем `openclaw`:

    - `click`, `type`, `hover`, `scrollIntoView`, `drag` и `select` требуют ссылок на снимки, а не селекторов CSS.
    - Обработчикам загрузки требуются `ref` или `inputRef`, по одному файлу за раз, без CSS `element`.
    - `responsebody`, экспорт PDF, перехват загрузок и пакетные действия по-прежнему требуют использования управляемого браузера.

    Полное сравнение см. в разделе [Браузер](/ru/tools/browser#existing-session-via-chrome-devtools-mcp).

  </Accordion>
</AccordionGroup>

## Изоляция и память

<AccordionGroup>
  <Accordion title="Есть ли отдельная документация по изоляции?">
    Да: [Изоляция](/ru/gateway/sandboxing). Настройка для Docker (полный Gateway в Docker или образы изолированной среды) описана в разделе [Docker](/ru/install/docker).
  </Accordion>

  <Accordion title="Возможности 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](/ru/install/docker), [Браузер](/ru/tools/browser).

  </Accordion>

  <Accordion title="Можно ли оставить личные сообщения приватными, а группы сделать общедоступными и изолированными, используя одного агента?">
    Да, если приватный трафик — это **личные сообщения**, а общедоступный — **группы**. Задайте `agents.defaults.sandbox.mode: "non-main"`, чтобы сеансы групп и каналов (с неосновными ключами) выполнялись в настроенной изолированной среде, а основной сеанс личных сообщений оставался на хосте. После включения изоляции по умолчанию используется среда Docker. Ограничьте инструменты, доступные в изолированных сеансах, с помощью `tools.sandbox.tools`.

    Пошаговая настройка: [Группы: личные сообщения для личного общения и общедоступные группы](/ru/channels/groups#pattern-personal-dms-public-groups-single-agent). Справочник по ключам: [Конфигурация Gateway](/ru/gateway/config-agents#agentsdefaultssandbox).

  </Accordion>

  <Accordion title="Как подключить папку хоста к изолированной среде?">
    Задайте для `agents.defaults.sandbox.docker.binds` значение `["host:container:mode"]` (например, `"/home/user/src:/src:ro"`). Глобальные привязки и привязки отдельных агентов объединяются; привязки отдельных агентов игнорируются, когда `scope: "shared"`. Для конфиденциальных данных используйте `:ro`; привязки обходят ограничения файловой системы изолированной среды.

    OpenClaw проверяет источники привязок как по нормализованному пути, так и по каноническому пути, разрешённому через самый глубокий существующий родительский каталог, поэтому попытки выхода через родительский каталог с символической ссылкой блокируются даже тогда, когда последний сегмент пути ещё не существует.

    См. [Изоляция](/ru/gateway/sandboxing#custom-bind-mounts) и [Изоляция, политика инструментов и повышенные права](/ru/gateway/sandbox-vs-tool-policy-vs-elevated#bind-mounts-security-quick-check).

  </Accordion>

  <Accordion title="Как работает память?">
    Память OpenClaw представляет собой файлы Markdown в рабочем пространстве агента: ежедневные заметки хранятся в `memory/YYYY-MM-DD.md`, а отобранные долгосрочные заметки — в `MEMORY.md` (только для основных и приватных сеансов).

    OpenClaw также выполняет без уведомления **сброс памяти перед Compaction**, прежде чем Compaction создаст сводку разговора, напоминая модели сначала записать долговечные заметки. Он выполняется только тогда, когда рабочее пространство доступно для записи (в изолированных средах только для чтения он пропускается); отключить его можно с помощью `agents.defaults.compaction.memoryFlush.enabled: false`. См. [Память](/ru/concepts/memory).

  </Accordion>

  <Accordion title="Память постоянно забывает информацию. Как сделать так, чтобы она сохранялась?">
    Попросите бота **записать факт в память**: долгосрочные заметки помещаются в `MEMORY.md`, а краткосрочный контекст — в `memory/YYYY-MM-DD.md`. Обычно достаточно напомнить модели сохранять воспоминания. Если она продолжает забывать, убедитесь, что Gateway при каждом запуске использует одно и то же рабочее пространство.

    Документация: [Память](/ru/concepts/memory), [Рабочее пространство агента](/ru/concepts/agent-workspace).

  </Accordion>

  <Accordion title="Сохраняется ли память навсегда? Каковы ограничения?">
    Файлы памяти хранятся на диске и сохраняются до удаления; ограничением служит объём хранилища, а не модель. **Контекст сеанса** по-прежнему ограничен окном контекста модели, поэтому длинные разговоры могут подвергаться сжатию или усечению — именно поэтому существует поиск по памяти, который возвращает в контекст только релевантные фрагменты.

    Документация: [Память](/ru/concepts/memory), [Контекст](/ru/concepts/context).

  </Accordion>

  <Accordion title="Требуется ли для семантического поиска по памяти ключ API OpenAI?">
    Только если вы используете **эмбеддинги OpenAI**, которые являются провайдером по умолчанию. Codex OAuth обеспечивает доступ к чату и генерации завершений, но **не** предоставляет доступ к эмбеддингам, поэтому вход через Codex (с помощью OAuth или входа через Codex CLI) не включает семантический поиск по памяти. Для эмбеддингов OpenAI всё равно требуется настоящий ключ API (`OPENAI_API_KEY` или `models.providers.openai.apiKey`).

    Чтобы всё выполнялось локально, задайте `agents.defaults.memorySearch.provider: "local"` (GGUF/llama.cpp). Другие поддерживаемые провайдеры: Bedrock, DeepInfra, Gemini (`GEMINI_API_KEY` или `memorySearch.remote.apiKey`), GitHub Copilot, LM Studio, Mistral, Ollama, OpenAI-compatible и Voyage. Подробности настройки см. в разделах [Память](/ru/concepts/memory) и [Поиск по памяти](/ru/concepts/memory-search).

  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Все ли данные, используемые с OpenClaw, сохраняются локально?">
    Нет: **собственное состояние OpenClaw хранится локально**, но **внешние сервисы всё равно видят отправляемые им данные**.

    - **Локально по умолчанию**: сеансы, файлы памяти, конфигурация и рабочее пространство находятся на хосте Gateway (`~/.openclaw` и каталог вашего рабочего пространства).
    - **Удалённо по необходимости**: сообщения, отправляемые провайдерам моделей (Anthropic/OpenAI и т. д.), поступают в их API, а платформы обмена сообщениями (Slack/Telegram/WhatsApp и т. д.) хранят данные сообщений на своих серверах.
    - **Вы контролируете объём передаваемых данных**: локальные модели сохраняют запросы на вашем компьютере, но трафик каналов всё равно проходит через серверы соответствующих каналов.

    См. также: [Рабочее пространство агента](/ru/concepts/agent-workspace), [Память](/ru/concepts/memory).

  </Accordion>

  <Accordion title="Где OpenClaw хранит свои данные?">
    Всё находится в `$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>/agent/openclaw-agent.sqlite`  | Состояние SQLite каждого агента, включая строки сеансов и расшифровки |
    | `$OPENCLAW_STATE_DIR/agents/<agentId>/sessions/`                    | Источники миграции устаревших сеансов и архивные/вспомогательные артефакты |

    Устаревший путь для одного агента `~/.openclaw/agent/*` мигрируется командой `openclaw doctor`.

    Ваше **рабочее пространство** (AGENTS.md, файлы памяти, Skills и т. д.) хранится отдельно и настраивается с помощью `agents.defaults.workspace` (по умолчанию: `~/.openclaw/workspace`).

  </Accordion>

  <Accordion title="Где должны находиться AGENTS.md / SOUL.md / USER.md / MEMORY.md?">
    Эти файлы находятся в **рабочем пространстве агента**, а не в `~/.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`; его можно настроить:

    ```json5
    {
      agents: { defaults: { workspace: "~/.openclaw/workspace" } },
    }
    ```

    Если бот «забывает» информацию после перезапуска, убедитесь, что Gateway при каждом запуске использует одно и то же рабочее пространство (в удалённом режиме используется рабочее пространство **хоста Gateway**, а не вашего локального ноутбука).

    Совет: чтобы поведение или предпочтение сохранялось надолго, попросите бота **записать его в AGENTS.md или MEMORY.md**, а не полагаться на историю чата.

    См. [Рабочее пространство агента](/ru/concepts/agent-workspace) и [Память](/ru/concepts/memory).

  </Accordion>

  <Accordion title="Можно ли увеличить SOUL.md?">
    Да. `SOUL.md` — один из файлов начальной загрузки рабочего пространства, внедряемых в контекст агента. Ограничение внедрения по умолчанию для каждого файла составляет `20000` символов; общий бюджет начальной загрузки для всех файлов составляет `60000` символов.

    Измените общие значения по умолчанию:

    ```json5
    {
      agents: {
        defaults: {
          bootstrapMaxChars: 50000,
          bootstrapTotalMaxChars: 300000,
        },
      },
    }
    ```

    Или переопределите настройки одного агента в `agents.list[].bootstrapMaxChars` / `bootstrapTotalMaxChars`.

    Используйте `/context`, чтобы проверить исходные и внедрённые размеры, а также выяснить, произошло ли усечение. Сосредоточьте `SOUL.md` на манере речи, позиции и личности; рабочие правила поместите в `AGENTS.md`, а долговременные факты — в память.

    См. [Контекст](/ru/concepts/context) и [Конфигурация агента](/ru/gateway/config-agents).

  </Accordion>

  <Accordion title="Рекомендуемая стратегия резервного копирования">
    Поместите **рабочее пространство агента** в **приватный** репозиторий git и создавайте его резервные копии в приватном хранилище (например, в приватном репозитории GitHub). Это сохранит память вместе с файлами AGENTS/SOUL/USER и позволит позднее восстановить «разум» помощника.

    **Не** добавляйте в коммиты ничего из `~/.openclaw` (учётные данные, сеансы, токены, зашифрованные полезные нагрузки секретов). Для полного восстановления создавайте отдельные резервные копии рабочего пространства и каталога состояния.

    Документация: [Рабочее пространство агента](/ru/concepts/agent-workspace).

  </Accordion>

  <Accordion title="Как полностью удалить OpenClaw?">
    См. [Удаление](/ru/install/uninstall).
  </Accordion>

  <Accordion title="Могут ли агенты работать за пределами рабочего пространства?">
    Да. Рабочее пространство — это **рабочий каталог по умолчанию** и основа памяти, а не строгая песочница. Относительные пути разрешаются внутри рабочего пространства; абсолютные пути могут обращаться к другим расположениям на хосте, если не включена песочница. Для изоляции используйте [`agents.defaults.sandbox`](/ru/gateway/sandboxing) или настройки песочницы для отдельных агентов. Чтобы репозиторий стал рабочим каталогом по умолчанию, укажите корень репозитория в `workspace` этого агента — сам репозиторий OpenClaw содержит только исходный код, поэтому храните рабочее пространство отдельно, если только вы намеренно не хотите, чтобы агент работал внутри него.

    ```json5
    {
      agents: {
        defaults: {
          workspace: "~/Projects/my-repo",
        },
      },
    }
    ```

  </Accordion>

  <Accordion title="Удалённый режим: где находится хранилище сеансов?">
    Состоянием сеансов управляет **хост Gateway**. В удалённом режиме нужное вам хранилище сеансов находится на удалённом компьютере, а не на вашем локальном ноутбуке. См. [Управление сеансами](/ru/concepts/session).
  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Каков формат конфигурации? Где она находится?">
    OpenClaw считывает необязательную конфигурацию в формате **JSON5** из `$OPENCLAW_CONFIG_PATH` (по умолчанию: `~/.openclaw/openclaw.json`). Если файл отсутствует, используются относительно безопасные значения по умолчанию, включая рабочее пространство по умолчанию `~/.openclaw/workspace`.
  </Accordion>

  <Accordion title='Я задал gateway.bind: "lan" (или "tailnet"), и теперь ничего не прослушивается / интерфейс сообщает об отсутствии авторизации'>
    Привязки не к loopback-интерфейсу **требуют корректного способа аутентификации Gateway**: аутентификации с общим секретом (токеном или паролем) либо `gateway.auth.mode: "trusted-proxy"` за правильно настроенным обратным прокси-сервером с учётом идентификации.

    ```json5
    {
      gateway: {
        bind: "lan",
        auth: {
          mode: "token",
          token: "replace-me",
        },
      },
    }
    ```

    - `gateway.remote.token` / `.password` сами по себе **не** включают локальную аутентификацию Gateway; локальные пути вызова могут использовать `gateway.remote.*` как резервный вариант, только если `gateway.auth.*` не задан.
    - Для аутентификации по паролю задайте `gateway.auth.mode: "password"` вместе с `gateway.auth.password` (или `OPENCLAW_GATEWAY_PASSWORD`).
    - Если `gateway.auth.token` / `.password` явно настроен через SecretRef, но не разрешается, разрешение завершается отказом без небезопасного продолжения (удалённый резервный вариант не маскирует ошибку).
    - Конфигурации Control UI с общим секретом проходят аутентификацию через `connect.params.auth.token` или `connect.params.auth.password` (хранятся в настройках приложения/интерфейса). Режимы с передачей идентификационных данных, такие как Tailscale Serve или `trusted-proxy`, вместо этого используют заголовки запросов — не помещайте общие секреты в URL-адреса.
    - При использовании `gateway.auth.mode: "trusted-proxy"` обратным прокси-серверам loopback на том же хосте требуются явно заданный `gateway.auth.trustedProxy.allowLoopback = true` и запись loopback в `gateway.trustedProxies`.

  </Accordion>

  <Accordion title="Почему теперь на localhost требуется токен?">
    OpenClaw по умолчанию требует аутентификацию Gateway, в том числе для loopback. Если явный способ аутентификации не настроен, при запуске выбирается режим токена и создаётся токен только для этого запуска, поэтому локальные клиенты WS должны проходить аутентификацию. Это не позволяет другим локальным процессам обращаться к Gateway.

    Явно настройте `gateway.auth.token`, `gateway.auth.password`, `OPENCLAW_GATEWAY_TOKEN` или `OPENCLAW_GATEWAY_PASSWORD`, если клиентам нужен постоянный секрет между перезапусками. Также можно выбрать режим пароля или `trusted-proxy` для обратных прокси-серверов с учётом идентификации. Чтобы открыть доступ через loopback, явно задайте `gateway.auth.mode: "none"`. `openclaw doctor --generate-gateway-token` создаёт токен в любое время.

  </Accordion>

  <Accordion title="Нужно ли перезапускать систему после изменения конфигурации?">
    Gateway отслеживает конфигурацию и поддерживает горячую перезагрузку: `gateway.reload.mode: "hybrid"` (по умолчанию) применяет безопасные изменения без перезапуска и перезапускает систему при критических изменениях. Также поддерживаются `hot`, `restart` и `off`. Большинство изменений `tools.*`, политики `agents.*`, `session.*` и `messages.*` применяются немедленно без каких-либо действий по перезагрузке; изменения привязки/порта `gateway.*` требуют перезапуска.
  </Accordion>

  <Accordion title="Как отключить забавные слоганы CLI?">
    Задайте `cli.banner.taglineMode`:

    ```json5
    {
      cli: {
        banner: {
          taglineMode: "off", // случайный | по умолчанию | выключен
        },
      },
    }
    ```

    - `off`: скрывает текст слогана, но сохраняет строку заголовка/версии баннера.
    - `default`: всегда использует `All your chats, one OpenClaw.`.
    - `random`: чередующиеся забавные/сезонные слоганы (поведение по умолчанию).
    - Чтобы полностью отключить баннер, задайте переменную окружения `OPENCLAW_HIDE_BANNER=1`.

  </Accordion>

  <Accordion title="Как включить веб-поиск (и получение веб-страниц)?">
    `web_fetch` работает без ключа API. `web_search` зависит от выбранного провайдера:

    | Провайдер | Без ключа | Переменная(-ые) окружения |
    | --- | --- | --- |
    | Brave | Нет | `BRAVE_API_KEY` |
    | DuckDuckGo | Да (неофициальный вариант на основе HTML) | - |
    | Exa | Нет | `EXA_API_KEY` |
    | Firecrawl | Нет | `FIRECRAWL_API_KEY` |
    | Gemini | Нет | `GEMINI_API_KEY` |
    | Grok | Нет (OAuth xAI или ключ) | `XAI_API_KEY` |
    | Kimi | Нет | `KIMI_API_KEY` или `MOONSHOT_API_KEY` |
    | MiniMax Search | Нет | `MINIMAX_CODE_PLAN_KEY`, `MINIMAX_CODING_API_KEY` или `MINIMAX_API_KEY` |
    | Ollama Web Search | Да (требуется `ollama signin`) | - |
    | Perplexity | Нет | `PERPLEXITY_API_KEY` или `OPENROUTER_API_KEY` |
    | SearXNG | Да (самостоятельное размещение) | `SEARXNG_BASE_URL` |
    | Tavily | Нет | `TAVILY_API_KEY` |

    Grok также может повторно использовать OAuth xAI из аутентификации модели (`openclaw onboard --auth-choice xai-oauth`).

    **Рекомендуется**: `openclaw configure --section web` и выберите провайдера.

    ```json5
    {
      plugins: {
        entries: {
          brave: {
            config: {
              webSearch: {
                apiKey: "BRAVE_API_KEY_HERE",
              },
            },
          },
        },
      },
      tools: {
        web: {
          search: {
            enabled: true,
            provider: "brave",
            maxResults: 5,
          },
          fetch: {
            enabled: true,
            provider: "firecrawl", // необязательно; опустите для автоматического определения
          },
        },
      },
    }
    ```

    Конфигурация веб-поиска для конкретного провайдера находится в `plugins.entries.<plugin>.config.webSearch.*`. Устаревшие пути провайдеров `tools.web.search.*` по-прежнему загружаются для совместимости, но не должны использоваться в новых конфигурациях. Конфигурация резервного веб-получения Firecrawl находится в `plugins.entries.firecrawl.config.webFetch.*`.

    - Списки разрешений: добавьте `web_search`/`web_fetch`/`x_search` или `group:web` для всех трёх.
    - `web_fetch` включён по умолчанию.
    - Если `tools.web.fetch.provider` не указан, OpenClaw автоматически определяет первого готового резервного провайдера получения данных по доступным учётным данным; официальный плагин Firecrawl предоставляет этот резервный вариант.
    - Демоны считывают переменные окружения из `~/.openclaw/.env` (или из окружения службы).

    Документация: [Веб-инструменты](/ru/tools/web).

  </Accordion>

  <Accordion title="config.apply стёр мою конфигурацию. Как её восстановить и избежать этого в будущем?">
    `config.apply` заменяет **всю конфигурацию**; частичный объект удаляет всё остальное.

    Текущая версия OpenClaw предотвращает большинство случайных перезаписей:

    - Операции записи конфигурации, выполняемые OpenClaw, перед записью проверяют полную конфигурацию после изменения.
    - Недопустимые или разрушительные операции записи, выполняемые OpenClaw, отклоняются и сохраняются как `openclaw.json.rejected.*`.
    - Если прямое редактирование нарушает запуск или горячую перезагрузку, 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.*`.

    Документация: [Конфигурация](/ru/cli/config), [Настройка](/ru/cli/configure), [Устранение неполадок Gateway](/ru/gateway/troubleshooting#gateway-rejected-invalid-config), [Doctor](/ru/gateway/doctor).

  </Accordion>

  <Accordion title="Как запустить центральный Gateway со специализированными рабочими процессами на разных устройствах?">
    Распространённая схема: **один Gateway** (например, Raspberry Pi), а также **узлы** и **агенты**.

    - **Gateway (центральный)**: управляет каналами (Signal/WhatsApp), маршрутизацией и сеансами.
    - **Узлы (устройства)**: компьютеры Mac и устройства iOS/Android подключаются как периферийные устройства и предоставляют локальные инструменты (`system.run`, `canvas`, `camera`).
    - **Агенты (рабочие процессы)**: отдельные среды рассуждений и рабочие пространства для специальных ролей (например, эксплуатационных задач и личных данных).
    - **Субагенты**: запускают фоновую работу из основного агента для параллельного выполнения.
    - **TUI**: подключается к Gateway и позволяет переключать агентов и сеансы.

    Документация: [Узлы](/ru/nodes), [Удалённый доступ](/ru/gateway/remote), [Маршрутизация между несколькими агентами](/ru/concepts/multi-agent), [Субагенты](/ru/tools/subagents), [TUI](/ru/web/tui).

  </Accordion>

  <Accordion title="Может ли браузер OpenClaw работать без графического интерфейса?">
    Да:

    ```json5
    {
      browser: { headless: true },
      agents: {
        defaults: {
          sandbox: { browser: { headless: true } },
        },
      },
    }
    ```

    Значение по умолчанию — `false` (с графическим интерфейсом). Режим без графического интерфейса чаще вызывает срабатывание защиты от ботов на некоторых сайтах (X/Twitter часто блокирует такие сеансы). Он использует тот же движок Chromium и подходит для большинства задач автоматизации; основное отличие — отсутствие видимого окна браузера (для визуального контроля используйте снимки экрана). См. [Браузер](/ru/tools/browser).

  </Accordion>

  <Accordion title="Как использовать Brave для управления браузером?">
    Укажите путь к исполняемому файлу Brave (или любого браузера на основе Chromium) в `browser.executablePath` и перезапустите Gateway. См. [Браузер](/ru/tools/browser#use-brave-or-another-chromium-based-browser).
  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Как команды передаются между Telegram, Gateway и узлами?">
    Сообщения Telegram обрабатываются **Gateway**, который запускает агента и только затем обращается к узлам через **WebSocket Gateway**, когда требуется инструмент узла:

    Telegram -> Gateway -> Агент -> `node.*` -> Узел -> Gateway -> Telegram

    Узлы не видят входящий трафик провайдера; они получают только вызовы RPC узлов.

  </Accordion>

  <Accordion title="Как агент может получить доступ к моему компьютеру, если Gateway размещён удалённо?">
    Подключите компьютер как **узел**. Gateway работает в другом месте, но может вызывать инструменты `node.*` (экран, камера, система) на вашем локальном компьютере через WebSocket Gateway.

    1. Запустите Gateway на постоянно работающем хосте (VPS или домашнем сервере).
    2. Подключите хост Gateway и свой компьютер к одной сети tailnet.
    3. Убедитесь, что WebSocket Gateway доступен (привязка к tailnet или туннель SSH).
    4. Откройте локальное приложение macOS и подключитесь в режиме **Remote over SSH** (или напрямую через tailnet), чтобы оно зарегистрировалось как узел.
    5. Подтвердите узел:
       ```bash
       openclaw devices list
       openclaw devices approve <requestId>
       ```

    Отдельный мост TCP не требуется; узлы подключаются через WebSocket Gateway.

    Напоминание о безопасности: сопряжение узла macOS разрешает `system.run` на этом компьютере. Подключайте только доверенные устройства; ознакомьтесь с разделом [Безопасность](/ru/gateway/security).

    Документация: [Узлы](/ru/nodes), [Протокол Gateway](/ru/gateway/protocol), [Удалённый режим macOS](/ru/platforms/mac/remote), [Безопасность](/ru/gateway/security).

  </Accordion>

  <Accordion title="Tailscale подключён, но я не получаю ответов. Что делать?">
    Сначала проверьте основное:

    ```bash
    openclaw gateway status
    openclaw status
    openclaw channels status
    ```

    Затем проверьте аутентификацию и маршрутизацию: если вы используете Tailscale Serve, убедитесь, что `gateway.auth.allowTailscale` задан правильно; если вы подключаетесь через туннель SSH, убедитесь, что туннель работает и направлен на правильный порт; также убедитесь, что списки разрешений для личных сообщений и групп включают вашу учётную запись.

    Документация: [Tailscale](/ru/gateway/tailscale), [Удалённый доступ](/ru/gateway/remote), [Каналы](/ru/channels).

  </Accordion>

  <Accordion title="Могут ли два экземпляра OpenClaw взаимодействовать друг с другом (локальный + VPS)?">
    Да, хотя встроенного моста между ботами нет.

    **Самый простой способ**: используйте обычный канал чата, доступный обоим ботам (Slack/Telegram/WhatsApp). Пусть бот A отправит сообщение боту B, после чего бот B ответит обычным образом.

    **Мост CLI (универсальный)**: запустите сценарий, который вызывает другой Gateway через `openclaw agent --message ... --deliver`, указав чат, прослушиваемый другим ботом. Если один из ботов находится на удалённом VPS, направьте CLI на этот удалённый Gateway через SSH/Tailscale (см. [Удалённый доступ](/ru/gateway/remote)):

    ```bash
    openclaw agent --message "Привет от локального бота" --deliver --channel telegram --reply-to <chat-id>
    ```

    Добавьте защитное ограничение, чтобы два бота не образовали бесконечный цикл (ответы только на упоминания, списки разрешённых каналов или правило «не отвечать на сообщения ботов»).

    Документация: [Удалённый доступ](/ru/gateway/remote), [CLI агента](/ru/cli/agent), [Отправка сообщений агентом](/ru/tools/agent-send).

  </Accordion>

  <Accordion title="Нужны ли отдельные VPS для нескольких агентов?">
    Нет. Один Gateway размещает несколько агентов, каждый со своим рабочим пространством, настройками моделей по умолчанию и маршрутизацией. Это стандартная схема, которая намного дешевле и проще, чем отдельный VPS для каждого агента. Используйте отдельные VPS только для строгой изоляции (границ безопасности) или существенно различающихся конфигураций, которые не должны быть общими.
  </Accordion>

  <Accordion title="Есть ли преимущества у использования узла на личном ноутбуке вместо SSH с VPS?">
    Да: узлы — основной способ получить доступ к ноутбуку из удалённого Gateway, предоставляющий больше возможностей, чем доступ к оболочке. Gateway работает на macOS/Linux (в Windows — через WSL2) и потребляет мало ресурсов (достаточно небольшого VPS или устройства класса Raspberry Pi; 4 ГБ ОЗУ вполне хватает), поэтому распространённая схема включает постоянно работающий хост и ноутбук в качестве узла.

    - **Входящий SSH не требуется** — узлы сами подключаются к WebSocket Gateway через сопряжение устройств.
    - **Более безопасное управление выполнением** — `system.run` ограничивается списками разрешений и подтверждениями узла на этом ноутбуке.
    - **Больше инструментов устройства** — помимо `system.run`, узлы предоставляют `canvas`, `camera` и `screen`.
    - **Локальная автоматизация браузера** — оставьте Gateway на VPS, а Chrome запускайте локально через хост узла либо подключитесь к локальному Chrome через Chrome MCP.

    SSH подходит для эпизодического доступа к оболочке; узлы удобнее для постоянных рабочих процессов агентов и автоматизации устройств.

    Документация: [Узлы](/ru/nodes), [CLI узлов](/ru/cli/nodes), [Браузер](/ru/tools/browser).

  </Accordion>

  <Accordion title="Запускают ли узлы службу Gateway?">
    Нет. На одном хосте должен работать только **один Gateway**, если вы намеренно не используете изолированные профили (см. [Несколько Gateway](/ru/gateway/multiple-gateways)). Узлы — это периферийные устройства, подключающиеся к Gateway (узлы iOS/Android или «режим узла» macOS в приложении строки меню). Сведения о хостах узлов без графического интерфейса и управлении через CLI см. в разделе [CLI хоста узла](/ru/cli/node).

    Полный перезапуск требуется для изменений `gateway`, `discovery` и предоставляемых размещёнными плагинами поверхностей.

  </Accordion>

  <Accordion title="Можно ли применять конфигурацию через API / RPC?">
    Да:

    - `config.schema.lookup`: проверить одно поддерево конфигурации вместе с его неглубоким узлом схемы, соответствующей подсказкой интерфейса и сводками непосредственных дочерних элементов перед записью.
    - `config.get`: получить текущий снимок и хеш.
    - `config.patch`: безопасное частичное обновление (предпочтительно для большинства изменений через RPC); выполняет горячую перезагрузку, когда это возможно, и перезапуск, когда это необходимо.
    - `config.apply`: проверить и полностью заменить конфигурацию; выполняет горячую перезагрузку, когда это возможно, и перезапуск, когда это необходимо.
    - Доступный агенту инструмент среды выполнения `gateway` по-прежнему отказывается перезаписывать `tools.exec.ask` / `tools.exec.security`; устаревшие псевдонимы `tools.bash.*` нормализуются в те же защищённые пути.

  </Accordion>

  <Accordion title="Минимальная разумная конфигурация для первой установки">
    ```json5
    {
      agents: { defaults: { workspace: "~/.openclaw/workspace" } },
      channels: { whatsapp: { allowFrom: ["+15555550123"] } },
    }
    ```

    Задаёт рабочее пространство и ограничивает круг пользователей, которые могут активировать бота.

  </Accordion>

  <Accordion title="Как настроить Tailscale на VPS и подключиться с Mac?">
    1. **Установите и выполните вход на VPS**:
       ```bash
       curl -fsSL https://tailscale.com/install.sh | sh
       sudo tailscale up
       ```
    2. **Установите приложение Tailscale на Mac и выполните вход**, используя ту же сеть tailnet.
    3. **Включите MagicDNS** в консоли администрирования Tailscale, чтобы у VPS было постоянное имя.
    4. **Используйте имя хоста в tailnet**: SSH `ssh user@your-vps.tailnet-xxxx.ts.net`; WebSocket Gateway `ws://your-vps.tailnet-xxxx.ts.net:18789`.

    Чтобы использовать интерфейс управления без SSH, включите Tailscale Serve на VPS:

    ```bash
    openclaw gateway --tailscale serve
    ```

    Gateway останется привязанным к loopback-интерфейсу, а HTTPS будет доступен через Tailscale. См. [Tailscale](/ru/gateway/tailscale).

  </Accordion>

  <Accordion title="Как подключить узел Mac к удалённому Gateway (Tailscale Serve)?">
    Serve предоставляет доступ к **интерфейсу управления и WebSocket Gateway**; узлы подключаются через ту же конечную точку WebSocket Gateway.

    1. Убедитесь, что VPS и Mac находятся в одной сети tailnet.
    2. Используйте приложение macOS в удалённом режиме (в качестве цели SSH можно указать имя хоста в tailnet) — оно создаёт туннель к порту Gateway и подключается как узел.
    3. Подтвердите узел:
       ```bash
       openclaw devices list
       openclaw devices approve <requestId>
       ```

    Документация: [Протокол Gateway](/ru/gateway/protocol), [Обнаружение](/ru/gateway/discovery), [удалённый режим macOS](/ru/platforms/mac/remote).

  </Accordion>

  <Accordion title="Следует ли установить OpenClaw на второй ноутбук или просто добавить узел?">
    Если на втором ноутбуке нужны **только локальные инструменты** (экран, камера, выполнение команд), добавьте его как **узел** — один Gateway без дублирования конфигурации. Локальные инструменты узла сейчас доступны только в macOS. Устанавливайте второй Gateway только для **строгой изоляции** или двух полностью независимых ботов.

    Документация: [Узлы](/ru/nodes), [CLI узлов](/ru/cli/nodes), [Несколько экземпляров Gateway](/ru/gateway/multiple-gateways).

  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Как OpenClaw загружает переменные окружения?">
    OpenClaw считывает переменные окружения из родительского процесса (оболочки, launchd/systemd, CI и т. д.), а также загружает:

    - `.env` из текущего рабочего каталога.
    - глобальный резервный файл `.env` из `~/.openclaw/.env` (`$OPENCLAW_STATE_DIR/.env`).

    Ни один из файлов `.env` не переопределяет существующие переменные окружения. Исключение составляют ключи учётных данных провайдера в файле `.env` рабочего пространства: такие ключи, как `GEMINI_API_KEY`, `XAI_API_KEY` или `MISTRAL_API_KEY` (а также другие переменные окружения аутентификации встроенных провайдеров), игнорируются в файле `.env` рабочего пространства и должны находиться в окружении процесса, `~/.openclaw/.env` или конфигурации `env`.

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

    ```json5
    {
      env: {
        OPENROUTER_API_KEY: "sk-or-...",
        vars: { GROQ_API_KEY: "gsk-..." },
      },
    }
    ```

    Полный порядок приоритетов и список источников см. в разделе [/environment](/ru/help/environment).

  </Accordion>

  <Accordion title="Я запустил Gateway как службу, и мои переменные окружения исчезли. Что делать?">
    Есть два способа исправить это:

    1. Поместите отсутствующие ключи в `~/.openclaw/.env`, чтобы они загружались, даже если служба не наследует окружение оболочки.
    2. Включите импорт из оболочки (необязательная функция для удобства):
       ```json5
       {
         env: {
           shellEnv: {
             enabled: true,
             timeoutMs: 15000,
           },
         },
       }
       ```
       При этом запускается ваша оболочка входа и импортируются только отсутствующие ожидаемые ключи без переопределения существующих. Эквивалентные переменные окружения: `OPENCLAW_LOAD_SHELL_ENV=1`, `OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000`.

  </Accordion>

  <Accordion title='Я задал COPILOT_GITHUB_TOKEN, но состояние моделей показывает "Shell env: off." Почему?'>
    `openclaw models status` сообщает, включён ли **импорт окружения оболочки**. «Shell env: off» **не** означает, что ваши переменные окружения отсутствуют, — это означает лишь, что OpenClaw не будет автоматически загружать вашу оболочку входа.

    Если Gateway работает как служба (launchd/systemd), он не наследует окружение оболочки. Чтобы исправить это, поместите токен в `~/.openclaw/.env`, включите `env.shellEnv.enabled: true` или добавьте его в конфигурацию `env` (применяется только при отсутствии значения), затем перезапустите Gateway и снова проверьте состояние:

    ```bash
    openclaw models status
    ```

    Токены Copilot разрешаются в следующем порядке: `OPENCLAW_GITHUB_TOKEN`, затем `COPILOT_GITHUB_TOKEN`, затем `GH_TOKEN`, затем `GITHUB_TOKEN`.

    См. [/concepts/model-providers](/ru/concepts/model-providers) и [/environment](/ru/help/environment).

  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Как начать новый разговор?">
    Отправьте `/new` или `/reset` отдельным сообщением. См. [Управление сеансами](/ru/concepts/session).
  </Accordion>

  <Accordion title="Сбрасываются ли сеансы автоматически, если я никогда не отправляю /new?">
    Да. По умолчанию используется **ежедневная** политика сброса: сеанс сменяется в настроенный локальный час на хосте Gateway (`session.reset.atHour`, значение по умолчанию — `4`, 0-23) с учётом времени начала текущего сеанса. Чтобы вместо этого использовать сброс по бездействию, задайте `mode: "idle"` и `session.reset.idleMinutes`: сеанс завершится после периода бездействия, отсчитываемого от последнего реального взаимодействия, а не от системных событий Heartbeat/Cron/выполнения команд.

    ```json5
    {
      session: {
        reset: { mode: "daily", atHour: 4 },
        resetByType: {
          group: { mode: "idle", idleMinutes: 120 },
          thread: { mode: "daily", atHour: 6 },
        },
        resetByChannel: {
          discord: { mode: "idle", idleMinutes: 10080 },
        },
      },
    }
    ```

    `resetByType` поддерживает `direct` (устаревший псевдоним `dm`), `group` и `thread`. Устаревший параметр верхнего уровня `session.idleMinutes` по-прежнему работает как псевдоним для совместимости, задающий сброс по умолчанию в режиме бездействия, если блок `session.reset`/`resetByType` не задан. Сеансы с активным CLI-сеансом, принадлежащим провайдеру, не прерываются неявным ежедневным сбросом по умолчанию. Полное описание жизненного цикла см. в разделе [Управление сеансами](/ru/concepts/session).

  </Accordion>

  <Accordion title="Можно ли создать команду экземпляров OpenClaw с одним генеральным директором и множеством агентов?">
    Да, с помощью **маршрутизации между несколькими агентами** и **субагентов**: один агент-координатор и несколько рабочих агентов с собственными рабочими пространствами и моделями.

    Это лучше воспринимать как интересный эксперимент: он требует много токенов и зачастую менее эффективен, чем один бот с отдельными сеансами. Типичная схема — один бот, с которым вы общаетесь, разные сеансы для параллельной работы и запуск субагентов по мере необходимости.

    Документация: [Маршрутизация между несколькими агентами](/ru/concepts/multi-agent), [Субагенты](/ru/tools/subagents), [CLI агентов](/ru/cli/agents).

  </Accordion>

  <Accordion title="Почему контекст был обрезан в середине задачи? Как это предотвратить?">
    Контекст сеанса ограничен размером контекстного окна модели. Длинные чаты, большой объём вывода инструментов или множество файлов могут привести к Compaction или обрезке.

    - Попросите бота обобщить текущее состояние и записать его в файл.
    - Используйте `/compact` перед длительными задачами и `/new` при смене темы.
    - Храните важный контекст в рабочем пространстве и просите бота повторно читать его.
    - Используйте субагентов для длительной или параллельной работы, чтобы основной чат оставался компактным.
    - Если это происходит часто, выберите модель с более широким контекстным окном.

  </Accordion>

  <Accordion title="Как полностью сбросить OpenClaw, сохранив его установленным?">
    ```bash
    openclaw reset
    ```

    Полный сброс без интерактивного взаимодействия:

    ```bash
    openclaw reset --scope full --yes --non-interactive
    ```

    Затем снова запустите настройку:

    ```bash
    openclaw onboard --install-daemon
    ```

    Если мастер первоначальной настройки обнаружит существующую конфигурацию, он также предложит **сброс**; см. [Первоначальная настройка (CLI)](/ru/start/wizard). Если вы использовали профили (`--profile` / `OPENCLAW_PROFILE`), сбросьте каждый каталог состояния (по умолчанию `~/.openclaw-<profile>`). Сброс только для разработки: `openclaw gateway --dev --reset` удаляет конфигурацию разработки, учётные данные, сеансы и рабочее пространство.

  </Accordion>

  <Accordion title='Я получаю ошибки "context too large" — как выполнить сброс или Compaction?'>
    - **Compaction** (сохраняет разговор, обобщая старые реплики): `/compact` или `/compact <instructions>`, чтобы задать указания для сводки.
    - **Сброс** (новый идентификатор сеанса для того же ключа чата): `/new` или `/reset`.

    Если проблема повторяется, настройте **очистку сеанса** (`agents.defaults.contextPruning`), чтобы удалять старый вывод инструментов, или используйте модель с более широким контекстным окном.

    Документация: [Compaction](/ru/concepts/compaction), [Очистка сеанса](/ru/concepts/session-pruning), [Управление сеансами](/ru/concepts/session).

  </Accordion>

  <Accordion title='Почему я вижу ошибку "LLM request rejected: messages.content.tool_use.input field required"?'>
    Ошибка проверки на стороне провайдера: модель создала блок `tool_use` без обязательного поля `input`. Обычно это означает, что история сеанса устарела или повреждена, что часто происходит после длинных веток обсуждения или изменения инструмента либо схемы.

    Решение: начните новый сеанс, отправив `/new` отдельным сообщением.

  </Accordion>

  <Accordion title="Почему я получаю сообщения Heartbeat каждые 30 минут?">
    По умолчанию Heartbeat запускается каждые **30m** или каждые **1h**, если разрешённый режим аутентификации — OAuth/аутентификация по токену Anthropic, включая повторное использование Claude CLI, а `heartbeat.every` не задан. Настройка или отключение:

    ```json5
    {
      agents: {
        defaults: {
          heartbeat: {
            every: "2h", // или "0m" для отключения
          },
        },
      },
    }
    ```

    Если `HEARTBEAT.md` существует, но фактически пуст (содержит только пустые строки, комментарии Markdown/HTML, заголовки ATX, маркеры ограждений или пустые заготовки элементов списка), OpenClaw пропускает запуск Heartbeat для экономии вызовов API. Если файл отсутствует, Heartbeat всё равно запускается, а модель решает, что делать.

    Переопределения для отдельных агентов задаются через `agents.list[].heartbeat`. Документация: [Heartbeat](/ru/gateway/heartbeat).

  </Accordion>

  <Accordion title='Нужно ли добавлять "учётную запись бота" в группу WhatsApp?'>
    Нет. OpenClaw работает с **вашей собственной учётной записью**: если вы состоите в группе, OpenClaw может её видеть. По умолчанию ответы в группах заблокированы, пока вы не разрешите отправителей (`groupPolicy: "allowlist"`).

    Чтобы разрешить ответы в группе только вам:

    ```json5
    {
      channels: {
        whatsapp: {
          groupPolicy: "allowlist",
          groupAllowFrom: ["+15551234567"],
        },
      },
    }
    ```

  </Accordion>

  <Accordion title="Как получить JID группы WhatsApp?">
    Самый быстрый способ — отслеживать журналы и отправить тестовое сообщение в группу.

    ```bash
    openclaw logs --follow --json
    ```

    Найдите `chatId` (или `from`), оканчивающийся на `@g.us`, например `1234567890-1234567890@g.us`.

    Если группа уже настроена или добавлена в список разрешённых, выведите список групп из конфигурации:

    ```bash
    openclaw directory groups list --channel whatsapp
    ```

    Документация: [WhatsApp](/ru/channels/whatsapp), [Каталог](/ru/cli/directory), [Журналы](/ru/cli/logs).

  </Accordion>

  <Accordion title="Почему OpenClaw не отвечает в группе?">
    Две распространённые причины: по умолчанию включено требование упоминания (необходимо упомянуть бота через @ или обеспечить соответствие `mentionPatterns`) либо вы настроили `channels.whatsapp.groups` без `"*"`, а группа не включена в список разрешённых.

    См. [Группы](/ru/channels/groups) и [Групповые сообщения](/ru/channels/group-messages).

  </Accordion>

  <Accordion title="Используют ли группы и ветки общий контекст с личными сообщениями?">
    По умолчанию личные чаты объединяются в основной сеанс. У групп и каналов есть собственные ключи сеансов, а темы Telegram и ветки Discord являются отдельными сеансами. См. [Группы](/ru/channels/groups) и [Групповые сообщения](/ru/channels/group-messages).
  </Accordion>

  <Accordion title="Сколько рабочих пространств и агентов можно создать?">
    Жёстких ограничений нет — можно создать десятки и даже сотни, но учитывайте следующее:

    - **Рост объёма данных на диске**: активные сеансы и расшифровки хранятся в базе данных SQLite каждого агента; устаревшие и архивные артефакты по-прежнему могут накапливаться в `~/.openclaw/agents/<agentId>/sessions/`.
    - **Расход токенов**: большее число агентов означает больше одновременных обращений к моделям.
    - **Операционные затраты**: профили аутентификации, рабочие пространства и маршрутизация каналов для каждого агента.

    Оставляйте одно **активное** рабочее пространство на агента (`agents.defaults.workspace`), удаляйте старые сеансы с помощью `openclaw sessions cleanup`, если объём данных на диске растёт (не изменяйте активное состояние SQLite вручную), и используйте `openclaw doctor` для обнаружения лишних рабочих пространств и несоответствий профилей.

  </Accordion>

  <Accordion title="Можно ли одновременно запускать несколько ботов или чатов (Slack) и как это настроить?">
    Да, с помощью **маршрутизации между несколькими агентами**: запустите несколько изолированных агентов и маршрутизируйте входящие сообщения по каналу, учётной записи или собеседнику. Slack поддерживается в качестве канала и может быть привязан к определённым агентам.

    Доступ к браузеру предоставляет широкие возможности, но не позволяет «делать всё, что может человек»: защита от ботов, CAPTCHA и MFA всё ещё могут блокировать автоматизацию. Для наиболее надёжного управления используйте локальный Chrome MCP на хосте или CDP на компьютере, где фактически запущен браузер.

    Рекомендуемая конфигурация: постоянно работающий хост Gateway (VPS/Mac mini), по одному агенту на каждую роль (с привязками), каналы Slack, привязанные к этим агентам, и локальный браузер через Chrome MCP или Node при необходимости.

    Документация: [Маршрутизация между несколькими агентами](/ru/concepts/multi-agent), [Slack](/ru/channels/slack), [Браузер](/ru/tools/browser), [Узлы](/ru/nodes).

  </Accordion>
</AccordionGroup>

## Модели, переключение при сбое и профили аутентификации

Вопросы и ответы о моделях — значения по умолчанию, выбор, псевдонимы, переключение, переключение при сбое и профили аутентификации — находятся в разделе [Часто задаваемые вопросы о моделях](/ru/help/faq-models).

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

<AccordionGroup>
  <Accordion title="Какой порт использует Gateway?">
    `gateway.port` управляет единым мультиплексированным портом для WebSocket и HTTP (Control UI, обработчики и т. д.). Приоритет:

    ```text
    --port > OPENCLAW_GATEWAY_PORT > gateway.port > значение по умолчанию 18789
    ```

  </Accordion>

  <Accordion title='Почему openclaw gateway status сообщает "Runtime: running", но "Connectivity probe: failed"?'>
    «Running» — это представление **диспетчера процессов** (launchd/systemd/schtasks), а проверка подключения означает, что CLI фактически подключается к WebSocket Gateway. Ориентируйтесь на следующие строки из `openclaw gateway status`: `Probe target:` (URL, использованный проверкой), `Listening:` (что фактически привязано к порту), `Last gateway error:` (распространённая первопричина, когда процесс работает, но порт не прослушивается).
  </Accordion>

  <Accordion title='Почему openclaw gateway status показывает разные значения для "Config (cli)" и "Config (service)"?'>
    Вы редактируете один файл конфигурации, а служба использует другой (часто из-за несоответствия `--profile` / `OPENCLAW_STATE_DIR`).

    Чтобы исправить это, выполните следующую команду из той же среды `--profile`, которую должна использовать служба:

    ```bash
    openclaw gateway install --force
    ```

  </Accordion>

  <Accordion title='Что означает "another gateway instance is already listening"?'>
    OpenClaw применяет блокировку среды выполнения, сразу привязывая прослушиватель WebSocket при запуске (по умолчанию `ws://127.0.0.1:18789`). Если привязка завершается ошибкой `EADDRINUSE`, возникает исключение `GatewayLockError` («другой экземпляр Gateway уже прослушивает порт»).

    Решение: остановите другой экземпляр, освободите порт или запустите с `openclaw gateway --port <port>`.

  </Accordion>

  <Accordion title="Как запустить OpenClaw в удалённом режиме, когда клиент подключается к Gateway на другом компьютере?">
    Задайте `gateway.mode: "remote"` и укажите удалённый URL WebSocket, при необходимости добавив удалённые учётные данные с общим секретом:

    ```json5
    {
      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.

  </Accordion>

  <Accordion title='Control UI сообщает "unauthorized" или постоянно переподключается. Что делать?'>
    Способ аутентификации Gateway не соответствует способу аутентификации пользовательского интерфейса.

    Факты (из кода):

    - Control UI хранит токен в `sessionStorage` с областью действия, ограниченной текущей вкладкой браузера и выбранным URL Gateway, поэтому обновление страницы в той же вкладке продолжает работать без долговременного хранения токена в localStorage.
    - При `AUTH_TOKEN_MISMATCH` доверенные клиенты могут выполнить одну ограниченную повторную попытку с кешированным токеном устройства, если Gateway возвращает указания для повторной попытки (`canRetryWithDeviceToken=true`, `recommendedNextStep=retry_with_device_token`).
    - При этой повторной попытке с кешированным токеном повторно используются кешированные утверждённые области доступа, сохранённые вместе с токеном устройства; вызывающие стороны с явным `deviceToken` / явным `scopes` сохраняют запрошенный набор областей доступа, а не наследуют кешированные области.
    - Вне этого пути повторной попытки приоритет аутентификации подключения следующий: сначала явно заданный общий токен или пароль, затем явно заданный `deviceToken`, после этого сохранённый токен устройства и затем загрузочный токен.
    - Встроенная начальная настройка с помощью кода настройки возвращает токен устройства Node с `scopes: []`, а также ограниченный токен передачи оператору для доверенной настройки с мобильного устройства. Передача оператору позволяет читать нативную конфигурацию этапа настройки, но не предоставляет областей доступа для изменения сопряжения или `operator.admin`.

    Решение:

    - Самый быстрый способ: `openclaw dashboard` (выводит и копирует URL панели управления, пытается открыть её; в среде без графического интерфейса показывает подсказку по SSH).
    - Если токена ещё нет: `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, а не прямой URL loopback или tailnet, который обходит заголовки идентификации Tailscale.
    - В режиме доверенного прокси убедитесь, что подключение проходит через настроенный прокси с поддержкой идентификации. Для loopback-прокси на том же хосте также требуется `gateway.auth.trustedProxy.allowLoopback = true`.
    - Если после одной повторной попытки несоответствие сохраняется, замените или повторно утвердите токен сопряжённого устройства:
      ```bash
      openclaw devices list
      openclaw devices rotate --device <id> --role operator
      ```
    - Если замена отклонена: сеансы сопряжённых устройств могут заменять токен только **собственного** устройства, если у них также нет `operator.admin`, а явно заданные значения `--scope` не могут превышать текущие операторские области доступа вызывающей стороны.
    - Если проблема сохраняется: `openclaw status --all` и [Устранение неполадок](/ru/gateway/troubleshooting). Подробности об аутентификации см. в разделе [Панель управления](/ru/web/dashboard).

  </Accordion>

  <Accordion title="Я задал gateway.bind tailnet, но он прослушивает только loopback">
    При привязке `tailnet` выбирается IP-адрес Tailscale из сетевых интерфейсов (100.64.0.0/10). Если компьютер не подключён к Tailscale или интерфейс отключён, Gateway переключается на loopback вместо предоставления доступа через другой сетевой интерфейс.

    Решение: запустите Tailscale на этом хосте и перезапустите Gateway либо явно переключитесь на `gateway.bind: "loopback"` / `"lan"`.

    `tailnet` задаётся явно; `auto` предпочитает loopback. Используйте `gateway.bind: "tailnet"`, чтобы ограничить доступ не через loopback сетью Tailnet, сохранив обязательный прослушиватель `127.0.0.1` на том же хосте.

  </Accordion>

  <Accordion title="Можно ли запустить несколько экземпляров Gateway на одном хосте?">
    Обычно нет: один Gateway может обслуживать несколько каналов обмена сообщениями и агентов. Используйте несколько экземпляров Gateway только для резервирования (например, для аварийного бота) или строгой изоляции и изолируйте каждый из них с помощью собственных `OPENCLAW_CONFIG_PATH`, `OPENCLAW_STATE_DIR`, `agents.defaults.workspace` и уникального `gateway.port`.

    Рекомендуется: `openclaw --profile <name> ...` для каждого экземпляра (автоматически создаёт `~/.openclaw-<name>`), уникальный `gateway.port` для конфигурации каждого профиля (или `--port` при ручном запуске) и отдельная служба для каждого профиля с `openclaw --profile <name> gateway install`.

    Профили также добавляют суффиксы к именам служб: launchd `ai.openclaw.<profile>`, systemd `openclaw-gateway-<profile>.service`, Windows `OpenClaw Gateway (<profile>)`. Модуль systemd без уточнения `openclaw-gateway` существует только для профиля по умолчанию; устаревшее имя модуля systemd до переименования `clawdbot-gateway` переносится автоматически.

    Полное руководство: [Несколько экземпляров Gateway](/ru/gateway/multiple-gateways).

  </Accordion>

  <Accordion title='Что означает "invalid handshake" / код 1008?'>
    Gateway — это **сервер WebSocket**, который ожидает, что первым сообщением будет кадр `connect`. Любое другое сообщение приводит к закрытию подключения с **кодом 1008** (нарушение политики).

    Распространённые причины: вы открыли URL **HTTP** в браузере вместо использования клиента WS, указали неправильный порт или путь либо прокси или туннель удалил заголовки аутентификации или отправил запрос, не предназначенный для Gateway.

    Решение: используйте URL WS (`ws://<host>:18789` или `wss://...` поверх HTTPS), не открывайте порт WS в обычной вкладке браузера и передавайте токен или пароль в кадре `connect`, когда аутентификация включена. Пример для CLI/TUI:

    ```bash
    openclaw tui --url ws://<host>:18789 --token <token>
    ```

    Подробности протокола: [Протокол Gateway](/ru/gateway/protocol).

  </Accordion>
</AccordionGroup>

## Ведение журналов и отладка

<AccordionGroup>
  <Accordion title="Где находятся журналы?">
    Файловые журналы (структурированные): `/tmp/openclaw/openclaw-YYYY-MM-DD.log`. Задайте постоянный путь с помощью `logging.file`, уровень файлового журнала — с помощью `logging.level`, а детализацию вывода в консоль — с помощью `--verbose` и `logging.consoleLevel`.

    Самый быстрый способ отслеживания:

    ```bash
    openclaw logs --follow
    ```

    Журналы службы или диспетчера процессов (когда Gateway запускается через launchd/systemd):

    - Стандартный вывод launchd в macOS: `~/Library/Logs/openclaw/gateway.log` (профили используют `gateway-<profile>.log`; стандартный поток ошибок отключён).
    - Linux: `journalctl --user -u openclaw-gateway[-<profile>].service -n 200 --no-pager`.
    - Windows: `schtasks /Query /TN "OpenClaw Gateway (<profile>)" /V /FO LIST`.

    Дополнительные сведения см. в разделе [Устранение неполадок](/ru/gateway/troubleshooting).

  </Accordion>

  <Accordion title="Как запустить, остановить или перезапустить службу Gateway?">
    ```bash
    openclaw gateway status
    openclaw gateway restart
    ```

    Если вы запускаете Gateway вручную, `openclaw gateway --force` может освободить порт. См. [Gateway](/ru/gateway).

  </Accordion>

  <Accordion title="Я закрыл терминал в Windows. Как перезапустить OpenClaw?">
    Три режима установки в Windows:

    **1) Локальная настройка Windows Hub**: нативное приложение управляет локальным Gateway в WSL, принадлежащим приложению. Откройте **OpenClaw Companion** из меню «Пуск» или области уведомлений, затем используйте **Gateway Setup** или вкладку Connections.

    **2) Настроенный вручную Gateway в WSL2**: Gateway работает внутри Linux.
    ```powershell
    wsl
    openclaw gateway status
    openclaw gateway restart
    ```
    Если вы не устанавливали службу, запустите её на переднем плане: `openclaw gateway run`.

    **3) Нативные Windows CLI/Gateway**: работают непосредственно в Windows.
    ```powershell
    openclaw gateway status
    openclaw gateway restart
    ```
    Если вы запускаете его вручную (без службы): `openclaw gateway run`.

    Документация: [Windows](/ru/platforms/windows), [Руководство по эксплуатации службы Gateway](/ru/gateway).

  </Accordion>

  <Accordion title="Gateway запущен, но ответы не приходят. Что проверить?">
    Быстрая проверка состояния:

    ```bash
    openclaw status
    openclaw models status
    openclaw channels status
    openclaw logs --follow
    ```

    Распространённые причины: данные аутентификации модели не загружены на **хосте Gateway** (проверьте `models status`), сопряжение канала или список разрешённых блокирует ответы (проверьте конфигурацию и журналы канала) либо WebChat/Dashboard открыт без правильного токена. При удалённом подключении убедитесь, что туннель или соединение Tailscale установлено и WebSocket Gateway доступен.

    Документация: [Каналы](/ru/channels), [Устранение неполадок](/ru/gateway/troubleshooting), [Удалённый доступ](/ru/gateway/remote).

  </Accordion>

  <Accordion title='"Отключено от Gateway: причина не указана" — что делать?'>
    Обычно это означает, что UI потерял соединение WebSocket. Проверьте: запущен ли Gateway (`openclaw gateway status`)? Исправно ли он работает (`openclaw status`)? Есть ли у UI правильный токен (`openclaw dashboard`)? При удалённом подключении работает ли туннель или соединение Tailscale?

    Затем просматривайте журналы в реальном времени:

    ```bash
    openclaw logs --follow
    ```

    Документация: [Dashboard](/ru/web/dashboard), [Удалённый доступ](/ru/gateway/remote), [Устранение неполадок](/ru/gateway/troubleshooting).

  </Accordion>

  <Accordion title="В Telegram не выполняется setMyCommands. Что проверить?">
    ```bash
    openclaw channels status
    openclaw channels logs --channel telegram
    ```

    Затем сопоставьте сообщение об ошибке:

    - `BOT_COMMANDS_TOO_MUCH`: в меню Telegram слишком много пунктов. OpenClaw уже сокращает его до ограничения Telegram и повторяет попытку с меньшим количеством команд, но некоторые пункты меню всё равно могут быть отброшены. Сократите количество команд плагинов, навыков или пользовательских команд либо отключите `channels.telegram.commands.native`, если меню вам не нужно.
    - `TypeError: fetch failed`, `Network request for 'setMyCommands' failed!` или аналогичные сетевые ошибки: на VPS или при работе через прокси убедитесь, что исходящие HTTPS-соединения разрешены и DNS работает для `api.telegram.org`.

    Если Gateway находится на удалённом хосте, проверьте журналы на хосте Gateway.

    Документация: [Telegram](/ru/channels/telegram), [Устранение неполадок каналов](/ru/channels/troubleshooting).

  </Accordion>

  <Accordion title="TUI не выводит данные. Что проверить?">
    ```bash
    openclaw status
    openclaw models status
    openclaw logs --follow
    ```

    В TUI используйте `/status`, чтобы увидеть текущее состояние. Если вы ожидаете ответы в канале чата, убедитесь, что доставка включена (`/deliver on`).

    Документация: [TUI](/ru/web/tui), [Команды с косой чертой](/ru/tools/slash-commands).

  </Accordion>

  <Accordion title="Как полностью остановить, а затем запустить Gateway?">
    Если вы установили службу (launchd в macOS, systemd в Linux):

    ```bash
    openclaw gateway stop
    openclaw gateway start
    ```

    При запуске на переднем плане остановите её с помощью Ctrl-C, затем выполните `openclaw gateway run`.

    Документация: [Руководство по эксплуатации службы Gateway](/ru/gateway).

  </Accordion>

  <Accordion title="Простыми словами: openclaw gateway restart и openclaw gateway">
    `openclaw gateway restart` перезапускает **фоновую службу** (launchd/systemd). `openclaw gateway` запускает Gateway **на переднем плане** для текущего сеанса терминала. Используйте подкоманды Gateway, если вы установили службу; для однократного запуска используйте обычный запуск на переднем плане.
  </Accordion>

  <Accordion title="Как быстрее всего получить больше сведений при сбое">
    Запустите Gateway с параметром `--verbose`, чтобы получить более подробный вывод в консоли, затем изучите файл журнала на предмет ошибок аутентификации каналов, маршрутизации моделей и RPC.
  </Accordion>
</AccordionGroup>

## Медиафайлы и вложения

<AccordionGroup>
  <Accordion title="Мой навык создал изображение или PDF, но ничего не было отправлено">
    Исходящие вложения от агента должны использовать структурированные поля медиафайлов, например `media`, `mediaUrl`, `path` или `filePath`. См. [Настройка ассистента OpenClaw](/ru/start/openclaw) и [Отправка агентом](/ru/tools/agent-send).

    ```bash
    openclaw message send --target +15555550123 --message "Вот файл" --media /path/to/file.png
    ```

    Также проверьте следующее: целевой канал поддерживает исходящие медиафайлы и не заблокирован списками разрешённых; размер файла не превышает ограничений провайдера (изображения масштабируются так, чтобы максимальная сторона составляла 2048px); `tools.fs.workspaceOnly=true` ограничивает отправку по локальным путям файлами из рабочей области, временного каталога или хранилища медиафайлов, а также файлами, проверенными песочницей; `tools.fs.workspaceOnly=false` (по умолчанию) позволяет при структурированной отправке локальных медиафайлов использовать локальные файлы хоста, которые агент уже может читать, для медиафайлов и безопасных типов документов (изображения, аудио, видео, PDF, документы Office и проверенные текстовые документы, например Markdown/MD, TXT, JSON, YAML/YML). Это не сканер секретов: доступный агенту файл `secret.txt` или `config.json` можно прикрепить, если расширение и проверка содержимого соответствуют требованиям. Храните конфиденциальные файлы вне доступных агенту путей или используйте `tools.fs.workspaceOnly=true` для более строгой отправки по локальным путям.

    См. [Изображения](/ru/nodes/images).

  </Accordion>
</AccordionGroup>

## Безопасность и управление доступом

<AccordionGroup>
  <Accordion title="Безопасно ли разрешать входящие личные сообщения в OpenClaw?">
    Считайте входящие личные сообщения недоверенными данными. Настройки по умолчанию снижают риск:

    - По умолчанию в каналах с поддержкой личных сообщений используется **сопряжение**: неизвестные отправители получают код сопряжения, а их сообщение не обрабатывается. Подтвердите доступ с помощью `openclaw pairing approve --channel <channel> [--account <id>] <code>`. Количество ожидающих запросов ограничено **3 на канал**; если код не пришёл, проверьте `openclaw pairing list --channel <channel> [--account <id>]`.
    - Для публичного открытия личных сообщений требуется явное согласие (`dmPolicy: "open"` и список разрешённых `"*"`).

    Выполните `openclaw doctor`, чтобы выявить рискованные политики личных сообщений.

  </Accordion>

  <Accordion title="Представляет ли внедрение подсказок угрозу только для публичных ботов?">
    Нет. Внедрение подсказок связано с **недоверенным содержимым**, а не только с тем, кто может отправлять боту личные сообщения. Если ваш ассистент читает внешнее содержимое (результаты веб-поиска или загрузки, страницы браузера, электронные письма, документы, вложения, вставленные журналы), оно может содержать инструкции, пытающиеся перехватить управление моделью, даже если отправитель только вы.

    Наибольший риск возникает при включённых инструментах: модель могут обманом заставить вывести контекст или вызвать инструменты от вашего имени. Сократите потенциальный ущерб:

    - используйте агента-«читателя» только для чтения или без инструментов, чтобы суммировать недоверенное содержимое
    - не включайте `web_search` / `web_fetch` / `browser` для агентов с доступом к инструментам
    - также считайте декодированный текст файлов и документов недоверенным: OpenResponses `input_file` и извлечение текста из медиа-вложений помещают извлечённый текст в явные маркеры границ внешнего содержимого, а не передают необработанный текст файла
    - используйте песочницу и строгие списки разрешённых инструментов

    Подробнее: [Безопасность](/ru/gateway/security).

  </Accordion>

  <Accordion title="Менее ли безопасен OpenClaw из-за использования TypeScript/Node вместо Rust/WASM?">
    Язык и среда выполнения имеют значение, но для персонального агента это не основной риск. Практические риски связаны с доступностью Gateway, кругом лиц, которые могут отправлять сообщения боту, внедрением подсказок, областью действия инструментов, обращением с учётными данными, доступом к браузеру, доступом к выполнению команд и доверием к сторонним навыкам и плагинам.

    Rust и WASM могут обеспечить более строгую изоляцию для некоторых классов кода, но не решают проблемы внедрения подсказок, некорректных списков разрешённых, публичной доступности Gateway, чрезмерно широких полномочий инструментов или уже выполненного входа в конфиденциальные учётные записи в профиле браузера. Считайте основными следующие меры: обеспечьте приватность или аутентификацию Gateway, используйте сопряжение и списки разрешённых для личных сообщений и групп, запрещайте рискованные инструменты или запускайте их в песочнице при работе с недоверенными данными, устанавливайте только доверенные плагины и навыки и выполняйте `openclaw security audit --deep` после изменений конфигурации.

    Подробнее: [Безопасность](/ru/gateway/security), [Песочница](/ru/gateway/sandboxing).

  </Accordion>

  <Accordion title="Я видел сообщения об открытых экземплярах OpenClaw. Что проверить?">
    ```bash
    openclaw security audit --deep
    openclaw gateway status
    ```

    Более безопасная базовая конфигурация: Gateway привязан к `loopback` или доступен только через аутентифицированный приватный доступ (tailnet, туннель SSH, аутентификация по токену или паролю либо правильно настроенный доверенный прокси); личные сообщения работают в режиме `pairing` или `allowlist`; группы внесены в список разрешённых, а обработка сообщений требует упоминания, если только все участники не являются доверенными; инструменты высокого риска (`exec`, `browser`, `gateway`, `cron`) запрещены или строго ограничены для агентов, читающих недоверенное содержимое; песочница включена там, где при выполнении инструментов необходимо сократить потенциальный ущерб.

    В первую очередь исправьте публичную привязку без аутентификации, открытые личные сообщения или группы с доступом к инструментам и открытый доступ к управлению браузером. Подробнее: [openclaw security audit](/ru/gateway/security#openclaw-security-audit).

  </Accordion>

  <Accordion title="Безопасно ли устанавливать навыки ClawHub и сторонние плагины?">
    Относитесь к сторонним навыкам и плагинам как к коду, которому вы решили доверять. Страницы навыков ClawHub показывают состояние проверки перед установкой, но проверки не являются исчерпывающей границей безопасности. OpenClaw не выполняет встроенную локальную блокировку опасного кода при установке или обновлении плагинов и навыков; используйте управляемый оператором `security.installPolicy` для локальных решений о разрешении или блокировке.

    Более безопасный подход: отдавайте предпочтение доверенным авторам и закреплённым версиям, изучайте навык или плагин перед включением, используйте узкие списки разрешённых плагинов и навыков, запускайте процессы с недоверенными входными данными в песочнице с минимальным набором инструментов и не предоставляйте стороннему коду широкий доступ к файловой системе, выполнению команд, браузеру или секретам.

    Подробнее: [Skills](/ru/tools/skills), [Плагины](/ru/tools/plugin), [Безопасность](/ru/gateway/security).

  </Accordion>

  <Accordion title="Нужны ли моему боту отдельный адрес электронной почты, учётная запись GitHub или номер телефона?">
    Да, для большинства конфигураций. Изоляция бота с помощью отдельных учётных записей и номеров телефона сокращает потенциальный ущерб в случае сбоя и упрощает смену учётных данных или отзыв доступа без воздействия на ваши личные учётные записи.

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

    Документация: [Безопасность](/ru/gateway/security), [Сопряжение](/ru/channels/pairing).

  </Accordion>

  <Accordion title="Можно ли предоставить ему автономный доступ к моим текстовым сообщениям и безопасно ли это?">
    Мы **не** рекомендуем предоставлять полную автономию при работе с личными сообщениями. Самый безопасный подход: оставьте личные сообщения в **режиме сопряжения** или используйте строгий список разрешённых, выделите **отдельный номер или учётную запись**, если бот должен отправлять сообщения от вашего имени, и позвольте ему подготавливать черновики, которые вы будете **подтверждать перед отправкой**.

    Для экспериментов используйте отдельную изолированную учётную запись. См. [Безопасность](/ru/gateway/security).

  </Accordion>

  <Accordion title="Можно ли использовать более дешёвые модели для задач персонального ассистента?">
    Да, **если** агент работает только в чате, а входные данные являются доверенными. Модели меньшего уровня более уязвимы для перехвата инструкций, поэтому не используйте их для агентов с доступом к инструментам или при чтении недоверенного содержимого. Если вам необходимо использовать модель меньшего размера, строго ограничьте инструменты и запускайте её в песочнице. См. [Безопасность](/ru/gateway/security).
  </Accordion>

  <Accordion title="Я выполнил /start в Telegram, но не получил код сопряжения">
    Коды сопряжения отправляются **только**, когда неизвестный отправитель пишет боту и включён параметр `dmPolicy: "pairing"`; сам по себе `/start` код не создаёт.

    Проверьте ожидающие запросы:

    ```bash
    openclaw pairing list telegram
    ```

    Для немедленного доступа добавьте идентификатор отправителя в список разрешённых или задайте `dmPolicy: "open"` для этой учётной записи.

  </Accordion>

  <Accordion title="WhatsApp: будет ли он писать моим контактам? Как работает сопряжение?">
    Нет. По умолчанию для личных сообщений WhatsApp используется политика **сопряжения**. Неизвестные отправители получают только код сопряжения; их сообщение **не обрабатывается**. OpenClaw отвечает только в чатах, из которых получает сообщения, или при явной отправке, инициированной вами.

    ```bash
    openclaw pairing approve whatsapp <code>
    openclaw pairing list whatsapp
    ```

    Запрос номера телефона в мастере задаёт ваш **список разрешённых/владельца**, чтобы разрешить ваши собственные личные сообщения, — он не используется для автоматической отправки. При использовании личного номера WhatsApp укажите этот номер и включите `channels.whatsapp.selfChatMode`.

  </Accordion>
</AccordionGroup>

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

<AccordionGroup>
  <Accordion title="Как скрыть внутренние системные сообщения в чате?">
    Большинство внутренних сообщений и сообщений инструментов отображаются, только если для этого сеанса включён режим **подробного вывода**, **трассировки** или **рассуждений**.

    Исправьте это в том чате, где они отображаются:

    ```text
    /verbose off
    /trace off
    /reasoning off
    ```

    Если лишние сообщения по-прежнему отображаются, проверьте настройки сеанса в интерфейсе управления и задайте для подробного вывода значение **наследовать**; убедитесь, что вы не используете профиль бота с `verboseDefault: "on"` в конфигурации.

    Документация: [Рассуждения и подробный вывод](/ru/tools/thinking), [Безопасность](/ru/gateway/security/index#reasoning-and-verbose-output-in-groups).

  </Accordion>

  <Accordion title="Как остановить или отменить выполняющуюся задачу?">
    Отправьте любое из следующих значений **отдельным сообщением** (без косой черты), чтобы инициировать прерывание: `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`, `do not do that`, `please stop`, `stop please`, `abort`, `esc`, `exit`, `interrupt`, `halt`. Также работают распространённые команды прерывания на других языках (французском, немецком, испанском, китайском, японском, хинди, арабском и русском).

    Для фоновых процессов, запущенных инструментом exec, попросите агента выполнить:

    ```text
    process action:kill sessionId:XXX
    ```

    Большинство команд с косой чертой необходимо отправлять **отдельным** сообщением, начинающимся с `/`, но некоторые сокращённые команды (например, `/status`) также можно использовать внутри сообщения отправителям из списка разрешённых. См. [Команды с косой чертой](/ru/tools/slash-commands).

  </Accordion>

  <Accordion title='Как отправить сообщение Discord из Telegram? («Межконтекстная отправка сообщений запрещена»)'>
    По умолчанию OpenClaw блокирует обмен сообщениями **между провайдерами**. Если вызов инструмента привязан к Telegram, он не сможет отправить сообщение в Discord, пока вы явно не разрешите это. Изменение вступает в силу немедленно, перезапуск Gateway не требуется:

    ```json5
    {
      tools: {
        message: {
          crossContext: {
            allowAcrossProviders: true,
            marker: { enabled: true, prefix: "[из {channel}] " },
          },
        },
      },
    }
    ```

  </Accordion>

  <Accordion title='Почему кажется, что бот «игнорирует» быстро отправляемые сообщения?'>
    По умолчанию запросы, поступающие во время выполнения, направляются в активный запуск. Используйте `/queue`, чтобы выбрать поведение активного запуска:

    - `steer` (по умолчанию) — направить активный запуск на следующей границе модели.
    - `followup` — поставить сообщения в очередь и выполнять их по одному после завершения текущего запуска.
    - `collect` — поставить совместимые сообщения в очередь и ответить один раз после завершения текущего запуска.
    - `interrupt` — прервать текущий запуск и начать заново.

    Для режимов очереди можно добавить параметры, например `debounce:0.5s cap:25 drop:summarize`. См. [Очередь команд](/ru/concepts/queue) и [Очередь управления](/ru/concepts/queue-steering).

  </Accordion>
</AccordionGroup>

## Прочее

<AccordionGroup>
  <Accordion title='Какая модель по умолчанию используется для Anthropic с ключом API?'>
    Учётные данные и выбор модели не связаны между собой. Задание `ANTHROPIC_API_KEY` (или сохранение ключа API Anthropic в профилях аутентификации) включает аутентификацию, но фактической моделью по умолчанию будет та, которую вы укажете в `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` для запущенного агента.
  </Accordion>
</AccordionGroup>

---

Всё ещё не получается? Спросите в [Discord](https://discord.com/invite/clawd) или откройте [обсуждение на GitHub](https://github.com/openclaw/openclaw/discussions).

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

- [Частые вопросы о первом запуске](/ru/help/faq-first-run) — установка, первоначальная настройка, аутентификация, подписки, ранние сбои
- [Частые вопросы о моделях](/ru/help/faq-models) — выбор модели, переключение при сбое, профили аутентификации
- [Устранение неполадок](/ru/help/troubleshooting) — диагностика по симптомам
