Advanced setup
Робочий процес середовища виконання агента OpenClaw
Робочий процес розробника для середовища виконання агента (src/agents/) у репозиторії OpenClaw.
Перевірка типів і лінтинг
- Стандартна локальна перевірка:
pnpm check(перевірка типів, лінтинг, перевірки дотримання політик) - Перевірка збірки:
pnpm build, коли зміна може вплинути на результат збірки, пакування або межі відкладеного завантаження чи модулів - Повна перевірка перед надсиланням:
pnpm build && pnpm check && pnpm check:test-types && pnpm test
Запуск тестів середовища виконання агента
Запустіть набори модульних тестів середовища виконання агента:
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 і потребує облікових даних провайдера):
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.