Перейти к основному содержанию

Среда выполнения агента 🤖

OpenClaw запускает единую встроенную среду выполнения агента, производную от pi-mono.

Рабочее пространство (обязательно)

OpenClaw использует единый каталог рабочего пространства агента (agents.defaults.workspace) как единственный рабочий каталог агента (cwd) для инструментов и контекста. Рекомендуется: использовать openclaw setup для создания ~/.openclaw/openclaw.json при отсутствии и инициализации файлов рабочего пространства. Полная структура рабочего пространства + руководство по резервному копированию: Рабочее пространство агента Если включено agents.defaults.sandbox, немейн-сессии могут переопределять это, используя рабочие пространства для каждого сеанса в agents.defaults.sandbox.workspaceRoot (см. Конфигурация Gateway (шлюза)).

Bootstrap файлы (впрыскиваемые)

Внутри agents.defaults.workspace OpenClaw ожидает следующие редактируемые пользователем файлы:
  • AGENTS.md — операционные инструкции + «память»
  • SOUL.md — персона, границы, тон
  • TOOLS.md — пользовательские заметки по инструментам (например, imsg, sag, соглашения)
  • BOOTSTRAP.md — одноразовый ритуал первого запуска (удаляется после завершения)
  • IDENTITY.md — имя/настроение/эмодзи агента
  • USER.md — профиль пользователя + предпочитаемое обращение
На первом ходе нового сеанса OpenClaw напрямую внедряет содержимое этих файлов в контекст агента. Пустые файлы пропускаются. Крупные файлы обрезаются и усекатся с маркером, чтобы подсказки оставались компактными (прочитайте файл для полного содержимого). Если файл отсутствует, OpenClaw внедряет одну строку-маркер «отсутствующий файл» (и openclaw setup создаст безопасный шаблон по умолчанию). BOOTSTRAP.md создаётся только для совершенно нового рабочего пространства (когда отсутствуют другие файлы инициализации). Если удалить его после завершения ритуала, при последующих перезапусках он не должен пересоздаваться. Чтобы полностью отключить создание файлов инициализации (для предварительно подготовленных рабочих пространств), установите:
{ agent: { skipBootstrap: true } }

Встроенные инструменты

Базовые инструменты (read/exec/edit/write и связанные системные инструменты) всегда доступны, в соответствии с политикой инструментов. apply_patch является необязательным и доступен при tools.exec.applyPatch. TOOLS.md не управляет тем, какие инструменты существуют; это рекомендации по тому, как вы хотите, чтобы они использовались.

Skills

OpenClaw загружает Skills из трёх расположений (при конфликте имён приоритет у рабочего пространства):
  • Bundled (поставляемые с установкой)
  • Управляемые/локальные: ~/.openclaw/skills
  • Рабочая область: <workspace>/skills
Skills могут быть ограничены конфигом/переменными окружения (см. skills в Конфигурация Gateway (шлюза)).

Интеграция pi-mono

OpenClaw повторно использует части кодовой базы pi-mono (модели/инструменты), однако управление сеансами, discovery и связывание инструментов принадлежат OpenClaw.
  • Нет среды выполнения агента pi-coding.
  • Параметры ~/.pi/agent или <workspace>/.pi не учитываются.

Сеансы

Транскрипты сеансов хранятся в формате JSONL по адресу:
  • ~/.openclaw/agents/<agentId>/sessions/<SessionId>.jsonl
Идентификатор сеанса стабилен и выбирается OpenClaw. Устаревшие папки сеансов Pi/Tau не читаются.

Управление во время потоковой передачи

Когда режим очереди — steer, входящие сообщения внедряются в текущий запуск. Очередь проверяется после каждого вызова инструмента; если в очереди есть сообщение, оставшиеся вызовы инструментов из текущего сообщения ассистента пропускаются (результаты инструментов с ошибкой «Skipped due to queued user message.»), затем сообщение пользователя из очереди внедряется перед следующим ответом ассистента. Когда режим очереди — followup или collect, входящие сообщения удерживаются до завершения текущего хода, после чего начинается новый ход агента с накопленными полезными нагрузками. См. Смотрите Queue для режима + громкости/колпак. Потоковая передача блоками отправляет завершённые блоки ассистента сразу после их завершения; по умолчанию она выключена (agents.defaults.blockStreamingDefault: "off"). Границу настраивайте через agents.defaults.blockStreamingBreak (text_end против message_end; по умолчанию text_end). Мягкую нарезку блоков контролируйте с помощью agents.defaults.blockStreamingChunk (по умолчанию 800–1200 символов; предпочтение разрывам абзацев, затем переводам строки; предложения — в последнюю очередь). Объединяйте потоковые фрагменты с помощью agents.defaults.blockStreamingCoalesce, чтобы уменьшить спам из одиночных строк (слияние по простою перед отправкой). Для каналов, отличных от Telegram, требуется явное *.blockStreaming: true для включения ответов блоками. Подробные сводки инструментов отправляются при старте инструмента (без debounce); Control UI передаёт вывод инструментов через события агента, когда это доступно. Подробнее: Потоковая передача + нарезка.

Ссылки на модели

Ссылки на модели в конфиге (например, agents.defaults.model и agents.defaults.models) разбираются путём разделения по первому /.
  • Используйте provider/model при настройке моделей.
  • Если идентификатор модели сам содержит / (в стиле OpenRouter), включайте префикс провайдера (пример: openrouter/moonshotai/kimi-k2).
  • Если провайдер опущен, OpenClaw рассматривает ввод как алиас или модель провайдера по умолчанию (работает только когда в идентификаторе модели нет /).

Конфигурация (минимальная)

Как минимум, задайте:
  • agents.defaults.workspace
  • channels.whatsapp.allowFrom (настоятельно рекомендуется)

Далее: Групповые чаты 🦞