Fundamentals

Рабочее пространство агента

Рабочая область — это дом агента: рабочий каталог, используемый файловыми инструментами и контекстом рабочей области. Храните её в тайне и относитесь к ней как к памяти.

Она отделена от ~/.openclaw/, где хранятся конфигурация, учётные данные и сеансы.

Расположение по умолчанию

  • По умолчанию: ~/.openclaw/workspace
  • Если задано OPENCLAW_PROFILE и его значение не равно "default", расположением по умолчанию становится ~/.openclaw/workspace-<profile>.
  • Если задано OPENCLAW_WORKSPACE_DIR, оно переопределяет оба указанных выше значения.
  • Для агентов не по умолчанию (agents.list[]) без явно заданной рабочей области используется <state-dir>/workspace-<agentId>, а не общая рабочая область по умолчанию.

Переопределение в ~/.openclaw/openclaw.json:

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

Переопределение для отдельного агента: agents.list[].workspace.

openclaw onboard, openclaw configure или openclaw setup создают рабочую область и добавляют начальные файлы, если они отсутствуют.

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

json5
{ agents: { defaults: { skipBootstrap: true } } }

Дополнительные каталоги рабочих областей

В старых установках мог быть создан ~/openclaw. Наличие нескольких каталогов рабочих областей может привести к путанице с аутентификацией или рассинхронизации состояния, поскольку одновременно активна только одна рабочая область.

Карта файлов рабочей области

Стандартные файлы, которые OpenClaw ожидает найти в рабочей области:

AGENTS.md — рабочие инструкции

Рабочие инструкции для агента и правила использования памяти. Загружаются в начале каждого сеанса. Подходящее место для правил, приоритетов и сведений о том, «как себя вести».

SOUL.md — личность и тон

Личность, тон и границы. Загружается в каждом сеансе. Руководство: руководство по личности SOUL.md.

USER.md — сведения о пользователе

Сведения о пользователе и о том, как к нему обращаться. Загружается в каждом сеансе.

IDENTITY.md — имя, характер, эмодзи

Имя, характер и эмодзи агента. Создаётся или обновляется во время ритуала начальной настройки.

TOOLS.md — соглашения для локальных инструментов

Заметки о локальных инструментах и соглашениях. Не управляет доступностью инструментов, а служит только руководством.

HEARTBEAT.md — контрольный список Heartbeat

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

BOOT.md — контрольный список запуска

Необязательный контрольный список запуска, автоматически выполняемый после перезапуска Gateway (если включены внутренние обработчики). Делайте его кратким; для исходящих отправок используйте инструмент сообщений.

BOOTSTRAP.md — ритуал первого запуска

Однократный ритуал первого запуска. Создаётся только для совершенно новой рабочей области. Удалите его после завершения ритуала.

memory/YYYY-MM-DD.md — ежедневный журнал памяти

Ежедневный журнал памяти (один файл на день). При запуске сеанса рекомендуется читать записи за сегодня и вчера.

MEMORY.md — курируемая долговременная память (необязательно)

Курируемая долговременная память: устойчивые факты, предпочтения, решения и краткие сводки. Храните подробные журналы в memory/YYYY-MM-DD.md, чтобы инструменты памяти могли получать их по запросу без добавления в каждый промпт. Загружайте MEMORY.md только в основном приватном сеансе (не в общих или групповых контекстах). Рабочий процесс и автоматическая выгрузка памяти описаны в разделе Память.

skills/ — Skills рабочей области (необязательно)

Skills, относящиеся к рабочей области. Это расположение Skills имеет наивысший приоритет для данной рабочей области — выше Skills агента проекта, личных Skills агента, управляемых Skills, встроенных Skills и skills.load.extraDirs при совпадении имён.

canvas/ — файлы интерфейса Canvas (необязательно)

Файлы интерфейса Canvas для отображения узлов (например, canvas/index.html).

Что НЕ находится в рабочей области

Следующие данные находятся в ~/.openclaw/, и их НЕ следует фиксировать в репозитории рабочей области:

  • ~/.openclaw/openclaw.json (конфигурация)
  • ~/.openclaw/agents/<agentId>/agent/auth-profiles.json (профили аутентификации моделей: OAuth и ключи API)
  • ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite (строки сеансов, расшифровки и состояние среды выполнения отдельных агентов)
  • ~/.openclaw/agents/<agentId>/agent/codex-home/ (учётная запись, конфигурация, Skills, плагины и собственное состояние потоков среды выполнения Codex для отдельного агента)
  • ~/.openclaw/credentials/ (состояние каналов и провайдеров, а также устаревшие данные импорта OAuth)
  • ~/.openclaw/agents/<agentId>/sessions/ (источники устаревших миграций и архивные или вспомогательные артефакты)
  • ~/.openclaw/skills/ (управляемые Skills)

Если необходимо перенести сеансы или конфигурацию, скопируйте их отдельно и не добавляйте в систему контроля версий.

Резервное копирование с помощью Git (рекомендуется, приватно)

Относитесь к рабочей области как к приватной памяти. Поместите её в приватный репозиторий Git, чтобы обеспечить резервное копирование и возможность восстановления.

Выполните следующие действия на компьютере, где работает Gateway (именно там находится рабочая область).

  • Инициализируйте репозиторий

    Если Git установлен, совершенно новые рабочие области инициализируются автоматически. Если эта рабочая область ещё не является репозиторием, выполните:

    bash
    cd ~/.openclaw/workspacegit initgit add AGENTS.md SOUL.md TOOLS.md IDENTITY.md USER.md HEARTBEAT.md memory/git commit -m "Add agent workspace"
  • Добавьте приватный удалённый репозиторий

    Веб-интерфейс GitHub

    1. Создайте новый приватный репозиторий на GitHub.
    2. Не инициализируйте его с помощью README, чтобы избежать конфликтов слияния.
    3. Скопируйте HTTPS-адрес удалённого репозитория.
    4. Добавьте удалённый репозиторий и отправьте изменения:
    bash
    git branch -M maingit remote add origin <https-url>git push -u origin main

    GitHub CLI (gh)

    bash
    gh auth logingh repo create openclaw-workspace --private --source . --remote origin --push

    Веб-интерфейс GitLab

    1. Создайте новый приватный репозиторий на GitLab.
    2. Не инициализируйте его с помощью README, чтобы избежать конфликтов слияния.
    3. Скопируйте HTTPS-адрес удалённого репозитория.
    4. Добавьте удалённый репозиторий и отправьте изменения:
    bash
    git branch -M maingit remote add origin <https-url>git push -u origin main
  • Последующие обновления

    bash
    git statusgit add .git commit -m "Update memory"git push
  • Не фиксируйте секреты

    Рекомендуемое начальное содержимое .gitignore:

    gitignore
    .DS_Store.env**/*.key**/*.pem**/secrets*

    Перенос рабочей области на новый компьютер

  • Клонируйте репозиторий

    Клонируйте репозиторий по нужному пути (по умолчанию ~/.openclaw/workspace).

  • Обновите конфигурацию

    Задайте для agents.defaults.workspace этот путь в ~/.openclaw/openclaw.json.

  • Добавьте отсутствующие файлы

    Выполните openclaw setup --workspace <path>, чтобы добавить все отсутствующие файлы.

  • Скопируйте сеансы (необязательно)

    Если нужны сеансы, отдельно скопируйте ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite со старого компьютера. Копируйте ~/.openclaw/agents/<agentId>/sessions/ только в том случае, если также нужны входные данные устаревших миграций или архивные и вспомогательные артефакты.

  • Дополнительные примечания

    • При маршрутизации между несколькими агентами можно назначить каждому агенту отдельную рабочую область с помощью agents.list[].workspace. Конфигурация маршрутизации описана в разделе Маршрутизация каналов.
    • Если включено agents.defaults.sandbox, сеансы, не являющиеся основными, могут использовать отдельные рабочие области песочницы для каждого сеанса в agents.defaults.sandbox.workspaceRoot.

    Связанные разделы

    Was this useful?
    On this page

    On this page