开发者设置

Pi 开发工作流

本指南总结了在 OpenClaw 中进行 Pi 集成开发的合理工作流程。

类型检查与代码检查

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

运行 Pi 测试

使用 Vitest 直接运行 Pi 相关的测试集:

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"

要包含实时提供商测试:

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/ 用于认证配置文件和令牌
  • agents/<agentId>/sessions/ 用于智能体会话历史
  • agents/<agentId>/sessions.json 用于会话索引
  • sessions/(如果存在旧版路径)
  • workspace/(如果你想要一个空白工作区)

如果只想重置会话,删除该智能体对应的 agents/<agentId>/sessions/agents/<agentId>/sessions.json。如果不想重新认证,请保留 credentials/

参考资料

安装设置CI 流水线