Advanced setup
OpenClaw-agentruntimeworkflow
Een verstandige workflow voor werken aan de OpenClaw-agentruntime in OpenClaw.
Typecontrole en linting
- Standaard lokale gate:
pnpm check - Build-gate:
pnpm buildwanneer de wijziging build-uitvoer, packaging of lazy-loading-/modulegrenzen kan beïnvloeden - Volledige landingsgate voor wijzigingen aan de agentruntime:
pnpm check && pnpm test
Agentruntimetests uitvoeren
Voer de agentruntime-testset direct uit met Vitest:
pnpm test \ "src/agents/agent-*.test.ts" \ "src/agents/embedded-agent-*.test.ts" \ "src/agents/agent-tools*.test.ts" \ "src/agents/agent-settings.test.ts" \ "src/agents/agent-tool-definition-adapter*.test.ts" \ "src/agents/agent-hooks/**/*.test.ts"Om de live provider-oefening op te nemen:
OPENCLAW_LIVE_TEST=1 pnpm test src/agents/embedded-agent-runner-extraparams.live.test.tsDit dekt de belangrijkste unit-suites voor de agentruntime:
src/agents/agent-*.test.tssrc/agents/embedded-agent-*.test.tssrc/agents/agent-tools*.test.tssrc/agents/agent-settings.test.tssrc/agents/agent-tool-definition-adapter.test.tssrc/agents/agent-hooks/*.test.ts
Handmatig testen
Aanbevolen flow:
- Voer de Gateway uit in dev-modus:
pnpm gateway:dev
- Activeer de agent direct:
pnpm openclaw agent --message "Hello" --thinking low
- Gebruik de TUI voor interactief debuggen:
pnpm tui
Voor gedrag van tool-calls vraag je om een read- of exec-actie, zodat je toolstreaming en payloadverwerking kunt zien.
Reset met schone lei
State staat onder de OpenClaw-state-directory. Standaard is dit ~/.openclaw. Als OPENCLAW_STATE_DIR is ingesteld, gebruik dan in plaats daarvan die directory.
Alles resetten:
openclaw.jsonvoor configuratieagents/<agentId>/agent/auth-profiles.jsonvoor model-auth-profielen (API-sleutels + OAuth)credentials/voor provider-/channel-state die nog buiten de auth-profielstore staatagents/<agentId>/sessions/voor agentsessiegeschiedenisagents/<agentId>/sessions/sessions.jsonvoor de sessie-indexsessions/als legacy-paden bestaanworkspace/als je een lege workspace wilt
Als je alleen sessies wilt resetten, verwijder dan agents/<agentId>/sessions/ voor die agent. Als je auth wilt behouden, laat dan agents/<agentId>/agent/auth-profiles.json en eventuele provider-state onder credentials/ staan.