> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

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

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

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

> [!WARNING]
>
> Рабочая область — это **cwd по умолчанию**, а не жёсткая песочница. Инструменты разрешают относительные пути относительно рабочей области, но абсолютные пути по-прежнему могут обращаться к другим местам на хосте, если песочница не включена. Если вам нужна изоляция, используйте [`agents.defaults.sandbox`](https://docs2.openclaw.ai/ru/gateway/sandboxing) (и/или конфигурацию песочницы для отдельного агента).
>
> Когда песочница включена и `workspaceAccess` не равно `"rw"`, инструменты работают внутри рабочей области песочницы в `~/.openclaw/sandboxes`, а не в рабочей области на вашем хосте.

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

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

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

```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  agents: {
    defaults: {
      workspace: "~/.openclaw/workspace",
    },
  },
}
```

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

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

> [!NOTE]
>
> При заполнении песочницы копируются только обычные файлы внутри рабочей области; псевдонимы на основе символических и жёстких ссылок, которые разрешаются за пределами исходной рабочей области, игнорируются.

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

```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{ agents: { defaults: { skipBootstrap: true } } }
```

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

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

> [!NOTE]
>
> **Рекомендация:** используйте одну активную рабочую область. Если дополнительные каталоги больше не нужны, архивируйте их или переместите в корзину (например, `trash ~/openclaw`). Если вы намеренно используете несколько рабочих областей, убедитесь, что `agents.defaults.workspace` (или ключ `workspace` для отдельного агента) указывает на активную рабочую область.

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

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

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

> [accordion] SOUL.md — личность и тон
>
> Личность, тон и границы. Загружается в каждом сеансе. Руководство: [руководство по личности SOUL.md](https://docs2.openclaw.ai/ru/concepts/soul.md).

> [accordion] USER.md — сведения о пользователе
>
> Сведения о пользователе и о том, как к нему обращаться. Загружается в каждом сеансе.

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

> [accordion] TOOLS.md — соглашения для локальных инструментов
>
> Заметки о локальных инструментах и соглашениях. Не управляет доступностью инструментов, а служит только руководством.

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

> [accordion] BOOT.md — контрольный список запуска
>
> Необязательный контрольный список запуска, автоматически выполняемый после перезапуска Gateway (если включены [внутренние обработчики](https://docs2.openclaw.ai/ru/automation/hooks.md)). Делайте его кратким; для исходящих отправок используйте инструмент сообщений.

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

> [accordion] memory/YYYY-MM-DD.md — ежедневный журнал памяти
>
> Ежедневный журнал памяти (один файл на день). При запуске сеанса рекомендуется читать записи за сегодня и вчера.

> [accordion] MEMORY.md — курируемая долговременная память (необязательно)
>
> Курируемая долговременная память: устойчивые факты, предпочтения, решения и краткие сводки. Храните подробные журналы в `memory/YYYY-MM-DD.md`, чтобы инструменты памяти могли получать их по запросу без добавления в каждый промпт. Загружайте `MEMORY.md` только в основном приватном сеансе (не в общих или групповых контекстах). Рабочий процесс и автоматическая выгрузка памяти описаны в разделе [Память](https://docs2.openclaw.ai/ru/concepts/memory.md).

> [accordion] skills/ — Skills рабочей области (необязательно)
>
> Skills, относящиеся к рабочей области. Это расположение Skills имеет наивысший приоритет для данной рабочей области — выше Skills агента проекта, личных Skills агента, управляемых Skills, встроенных Skills и `skills.load.extraDirs` при совпадении имён.

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

> [!NOTE]
>
> Если начальный файл отсутствует, OpenClaw добавляет в сеанс маркер «файл отсутствует» и продолжает работу. Большие начальные файлы при добавлении обрезаются; настройте ограничения с помощью `agents.defaults.bootstrapMaxChars` (по умолчанию: `20000`) и `agents.defaults.bootstrapTotalMaxChars` (по умолчанию: `60000`). `openclaw setup` может повторно создать отсутствующие файлы по умолчанию, не перезаписывая существующие.

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

Следующие данные находятся в `~/.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 (именно там находится рабочая область).

**1. Инициализируйте репозиторий**

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

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
cd ~/.openclaw/workspace
git init
git add AGENTS.md SOUL.md TOOLS.md IDENTITY.md USER.md HEARTBEAT.md memory/
git commit -m "Add agent workspace"
```

**2. Добавьте приватный удалённый репозиторий**

> [tab] Веб-интерфейс GitHub
>
> 1. Создайте новый **приватный** репозиторий на GitHub.
> 2. Не инициализируйте его с помощью README, чтобы избежать конфликтов слияния.
> 3. Скопируйте HTTPS-адрес удалённого репозитория.
> 4. Добавьте удалённый репозиторий и отправьте изменения:
>
> ```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
> git branch -M main
> git remote add origin <https-url>
> git push -u origin main
> ```

> [tab] GitHub CLI (gh)
>
> ```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
> gh auth login
> gh repo create openclaw-workspace --private --source . --remote origin --push
> ```

> [tab] Веб-интерфейс GitLab
>
> 1. Создайте новый **приватный** репозиторий на GitLab.
> 2. Не инициализируйте его с помощью README, чтобы избежать конфликтов слияния.
> 3. Скопируйте HTTPS-адрес удалённого репозитория.
> 4. Добавьте удалённый репозиторий и отправьте изменения:
>
> ```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
> git branch -M main
> git remote add origin <https-url>
> git push -u origin main
> ```

**3. Последующие обновления**

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
git status
git add .
git commit -m "Update memory"
git push
```

## Не фиксируйте секреты

> [!WARNING]
>
> Даже в приватном репозитории не храните секреты в рабочей области:
>
> * Ключи API, токены OAuth, пароли или приватные учётные данные.
> * Что-либо из `~/.openclaw/`.
> * Необработанные выгрузки чатов или конфиденциальные вложения.
>
> Если необходимо хранить ссылки на конфиденциальные данные, используйте заполнители, а настоящий секрет храните в другом месте: в менеджере паролей, переменных среды или `~/.openclaw/`.

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

```gitignore theme={"theme":{"light":"min-light","dark":"min-dark"}}
.DS_Store
.env
**/*.key
**/*.pem
**/secrets*
```

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

**1. Клонируйте репозиторий**

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

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

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

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

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

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

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

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

* При маршрутизации между несколькими агентами можно назначить каждому агенту отдельную рабочую область с помощью `agents.list[].workspace`. Конфигурация маршрутизации описана в разделе [Маршрутизация каналов](https://docs2.openclaw.ai/ru/channels/channel-routing.md).
* Если включено `agents.defaults.sandbox`, сеансы, не являющиеся основными, могут использовать отдельные рабочие области песочницы для каждого сеанса в `agents.defaults.sandbox.workspaceRoot`.

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

* [Heartbeat](https://docs2.openclaw.ai/ru/gateway/heartbeat.md) — файл рабочей области HEARTBEAT.md
* [Песочница](https://docs2.openclaw.ai/ru/gateway/sandboxing.md) — доступ к рабочей области в изолированных средах
* [Сеанс](https://docs2.openclaw.ai/ru/concepts/session.md) — пути хранения сеансов
* [Постоянные указания](https://docs2.openclaw.ai/ru/automation/standing-orders.md) — постоянные инструкции в файлах рабочей области
