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

Рабочий процесс разработчика для среды выполнения агента (`src/agents/`) в репозитории OpenClaw.

## Проверка типов и линтинг

* Стандартная локальная проверка: `pnpm check` (проверка типов, линтинг, проверки политик)
* Проверка сборки: `pnpm build`, если изменение может повлиять на результат сборки, упаковку или границы отложенной загрузки/модулей
* Полная проверка перед отправкой изменений: `pnpm build && pnpm check && pnpm check:test-types && pnpm test`

## Запуск тестов среды выполнения агента

Запустите наборы модульных тестов среды выполнения агента:

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
pnpm test \
  "src/agents/agent-*.test.ts" \
  "src/agents/embedded-agent-*.test.ts" \
  "src/agents/agent-hooks/**/*.test.ts"
```

Первый шаблон также охватывает наборы `agent-tools*`, `agent-settings` и
`agent-tool-definition-adapter*`.

Интерактивные тесты исключены из конфигурации модульных тестов; запускайте их через
обёртку для интерактивных тестов (она задаёт `OPENCLAW_LIVE_TEST=1` и требует учётные данные провайдера):

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
pnpm test:live src/agents/embedded-agent-runner-extraparams.live.test.ts
```

## Ручное тестирование

* Запустите Gateway в режиме разработки (подключения к каналам пропускаются с помощью `OPENCLAW_SKIP_CHANNELS=1`): `pnpm gateway:dev`
* Запустите один ход агента через Gateway: `pnpm openclaw agent --message "Hello" --thinking low`
* Используйте TUI для интерактивной отладки: `pnpm tui`

Чтобы проверить поведение вызовов инструментов, запросите действие `read` или `exec`, чтобы наблюдать
за потоковой передачей данных инструмента и обработкой полезной нагрузки.

## Сброс до исходного состояния

Состояние хранится в каталоге состояния OpenClaw: по умолчанию `~/.openclaw` или
`$OPENCLAW_STATE_DIR`, если эта переменная задана. Пути относительно этого каталога:

| Путь | Содержимое |
| - | - |
| `openclaw.json` | Конфигурация |
| `state/openclaw.sqlite` | Общая база данных состояния среды выполнения |
| `agents/<agentId>/agent/openclaw-agent.sqlite` | Профили аутентификации моделей для каждого агента (ключи API + OAuth) и состояние среды выполнения |
| `credentials/` | Учётные данные провайдеров/каналов вне хранилища профилей аутентификации |
| `agents/<agentId>/sessions/` | История расшифровок и источники миграции устаревших сеансов |
| `sessions/` | Устаревшее хранилище сеансов одного агента (только старые установки) |
| `workspace/` | Рабочая область агента по умолчанию (дополнительные агенты используют `workspace-<agentId>`) |

Для полного сброса удалите эти пути. Более избирательные варианты сброса:

* Только сеансы: не удаляйте `agents/<agentId>/agent/openclaw-agent.sqlite`; строки сеансов хранятся там вместе с другим состоянием конкретного агента. Используйте `/new` или `/reset`, чтобы начать новый сеанс для одного чата, и `openclaw sessions cleanup` для обслуживания сеансов.
* Сохранить аутентификацию: не удаляйте `agents/<agentId>/agent/openclaw-agent.sqlite` и `credentials/`.

Устаревшие файлы `auth-profiles.json` больше не считываются во время выполнения;
`openclaw doctor --fix` импортирует их в хранилище SQLite.

## Справочные материалы

* [Тестирование](https://docs2.openclaw.ai/ru/help/testing.md)
* [Начало работы](https://docs2.openclaw.ai/ru/start/getting-started.md)

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

* [Архитектура среды выполнения агента OpenClaw](https://docs2.openclaw.ai/ru/agent-runtime-architecture.md)
