Перейти к основному содержанию
OpenClaw запускает единую встроенную среду выполнения агента - один процесс агента на Gateway, с собственным рабочим пространством, файлами начальной загрузки и хранилищем сеансов. Эта страница описывает контракт этой среды выполнения: что должно содержать рабочее пространство, какие файлы внедряются и как сеансы выполняют начальную загрузку относительно него.

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

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

Файлы начальной загрузки (внедряются)

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

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

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

Skills

OpenClaw загружает Skills из этих расположений (сначала наивысший приоритет):
  • Рабочее пространство: <workspace>/skills
  • Skills агента проекта: <workspace>/.agents/skills
  • Личные Skills агента: ~/.agents/skills
  • Управляемые/локальные: ~/.openclaw/skills
  • Встроенные (поставляются с установкой)
  • Дополнительные папки Skills: skills.load.extraDirs
Корни Skills могут содержать сгруппированные папки, такие как <workspace>/skills/personal/foo/SKILL.md; Skill по-прежнему предоставляется по своему плоскому имени из frontmatter, например foo. Skills могут ограничиваться конфигурацией/env (см. skills в Конфигурации Gateway).

Границы среды выполнения

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

Сеансы

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

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

Входящие промпты, поступающие в середине выполнения, по умолчанию направляются в текущий запуск. Направление доставляется после того, как текущий ход ассистента завершит выполнение своих вызовов инструментов, перед следующим вызовом LLM, и больше не пропускает оставшиеся вызовы инструментов из текущего сообщения ассистента. /queue steer является поведением активного запуска по умолчанию. /queue followup и /queue collect заставляют сообщения ждать более позднего хода вместо направления. /queue interrupt вместо этого прерывает активный запуск. См. Очередь и Очередь направления, чтобы узнать о поведении очереди и границ. Потоковая передача блоков отправляет завершенные блоки ассистента сразу после их завершения; она выключена по умолчанию (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 при настройке моделей.
  • Если сам ID модели содержит / (в стиле OpenRouter), включите префикс провайдера (пример: openrouter/moonshotai/kimi-k2).
  • Если вы опускаете провайдера, OpenClaw сначала пробует псевдоним, затем уникальное совпадение настроенного провайдера для этого точного ID модели и только после этого возвращается к настроенному провайдеру по умолчанию. Если этот провайдер больше не предоставляет настроенную модель по умолчанию, OpenClaw возвращается к первой настроенной паре провайдер/модель вместо того, чтобы показывать устаревшее значение по умолчанию удаленного провайдера.

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

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

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

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