Skip to content

Pi 开发工作流

本指南总结了在 OpenClaw 中处理 pi 集成的合理工作流程。

类型检查与代码检查

  • 类型检查与构建:pnpm build
  • 代码检查:pnpm lint
  • 格式检查:pnpm format
  • 推送前完整检查:pnpm lint && pnpm build && pnpm test

运行 Pi 测试

直接用 Vitest 运行 Pi 专项测试集:

bash
pnpm test -- \
  "src/agents/pi-*.test.ts" \
  "src/agents/pi-embedded-*.test.ts" \
  "src/agents/pi-tools*.test.ts" \
  "src/agents/pi-settings.test.ts" \
  "src/agents/pi-tool-definition-adapter*.test.ts" \
  "src/agents/pi-extensions/**/*.test.ts"

包含实时 provider 验证:

bash
OPENCLAW_LIVE_TEST=1 pnpm test -- src/agents/pi-embedded-runner-extraparams.live.test.ts

涵盖主要 Pi 单元测试套件:

  • src/agents/pi-*.test.ts
  • src/agents/pi-embedded-*.test.ts
  • src/agents/pi-tools*.test.ts
  • src/agents/pi-settings.test.ts
  • src/agents/pi-tool-definition-adapter.test.ts
  • src/agents/pi-extensions/*.test.ts

手动测试

推荐流程:

  • 以开发模式运行 gateway:
    • pnpm gateway:dev
  • 直接触发 agent:
    • pnpm openclaw agent --message "Hello" --thinking low
  • 使用 TUI 进行交互式调试:
    • pnpm tui

测试工具调用行为时,请求执行 readexec 操作,以便观察工具流式传输和载荷处理。

状态重置

状态保存在 OpenClaw 状态目录下,默认为 ~/.openclaw。若设置了 OPENCLAW_STATE_DIR,则使用该目录。

完全重置:

  • openclaw.json(配置)
  • credentials/(认证档案和 token)
  • agents/<agentId>/sessions/(agent 会话历史)
  • agents/<agentId>/sessions.json(会话索引)
  • sessions/(若存在旧版路径)
  • workspace/(需要全新工作空间时)

仅重置会话:删除对应 agent 的 agents/<agentId>/sessions/agents/<agentId>/sessions.json,保留 credentials/ 避免重新认证。

参考文档