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

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

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

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

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

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

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

* По умолчанию: `~/.openclaw/workspace`
* Если `OPENCLAW_PROFILE` задано и не равно `"default"`, значением по умолчанию
  становится `~/.openclaw/workspace-<profile>`.
* Переопределение в `~/.openclaw/openclaw.json`:

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

`openclaw onboard`, `openclaw configure` или `openclaw setup` создадут рабочее пространство
и инициализируют bootstrap‑файлы, если их нет.

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

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

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

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

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

`openclaw doctor` выводит предупреждение при обнаружении дополнительных каталогов
рабочих пространств.

## Карта файлов рабочего пространства (что означает каждый файл)

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

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

* `SOUL.md`
  * Персона, тон и границы.
  * Загружается в каждом сеансе.

* `USER.md`
  * Кто пользователь и как к нему обращаться.
  * Загружается в каждом сеансе.

* `IDENTITY.md`
  * Имя агента, вайб и эмодзи.
  * Создаётся/обновляется во время bootstrap‑ритуала.

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

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

* `BOOT.md`
  * Необязательный стартовый чек‑лист, выполняемый при перезапуске Gateway,
    когда включены внутренние хуки.
  * Держите его коротким; для исходящих отправок используйте message tool.

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

* `memory/YYYY-MM-DD.md`
  * Ежедневный журнал памяти (один файл в день).
  * Рекомендуется читать сегодняшний и вчерашний файлы при старте сеанса.

* `MEMORY.md` (необязательно)
  * Курируемая долговременная память.
  * Загружайте только в основном приватном сеансе (не в общих/групповых
    контекстах).

[Memory](/concepts/memory) для описания рабочего процесса и автоматической
очистки памяти.

* `skills/` (необязательно)
  * Skills, специфичные для рабочего пространства.
  * Переопределяют управляемые/встроенные skills при совпадении имён.

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

Если какой‑либо bootstrap‑файл отсутствует, OpenClaw внедряет маркер «missing file»
в сеанс и продолжает работу. Крупные bootstrap‑файлы усекаются при внедрении;
измените лимит с помощью `agents.defaults.bootstrapMaxChars` (по умолчанию: 20000).
`openclaw setup` может пересоздать отсутствующие значения по умолчанию, не
перезаписывая существующие файлы.

## Чего НЕТ в рабочем пространстве

Эти данные находятся под `~/.openclaw/` и **НЕ** должны коммититься в репозиторий
рабочего пространства:

* `~/.openclaw/openclaw.json` (конфиг)
* `~/.openclaw/credentials/` (OAuth‑токены, ключи API)
* `~/.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. Добавление приватного удалённого репозитория (варианты для начинающих)

Вариант A: веб‑интерфейс GitHub

1. Создайте новый **приватный** репозиторий на GitHub.
2. Не инициализируйте его README (чтобы избежать конфликтов слияния).
3. Скопируйте HTTPS‑URL удалённого репозитория.
4. Добавьте remote и выполните push:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
git branch -M main
git remote add origin <https-url>
git push -u origin main
```

Вариант B: 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
```

Вариант C: веб‑интерфейс GitLab

1. Создайте новый **приватный** репозиторий на GitLab.
2. Не инициализируйте его README (чтобы избежать конфликтов слияния).
3. Скопируйте HTTPS‑URL удалённого репозитория.
4. Добавьте remote и выполните push:

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

## Не коммитьте секреты

Даже в приватном репозитории избегайте хранения секретов в рабочем пространстве:

* Ключи 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>/sessions/` со старой машины.

## Расширенные примечания

* Маршрутизация для нескольких агентов может использовать разные рабочие
  пространства для каждого агента. См. [Channel routing](/channels/channel-routing) для настройки маршрутизации.
* Если включён `agents.defaults.sandbox`, неосновные сеансы могут использовать sandbox‑рабочие
  пространства для каждого сеанса под `agents.defaults.sandbox.workspaceRoot`.
