Pi 開發工作流程

本指南彙整在 OpenClaw 中進行 Pi 整合開發時的合理工作流程。

型別檢查與 Lint

  • 型別檢查與建置:pnpm build
  • Lint: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/ — 驗證設定檔與 token
  • agents/<agentId>/sessions/ — Agent 工作階段歷史
  • agents/<agentId>/sessions.json — 工作階段索引
  • sessions/ — 若有舊版路徑
  • workspace/ — 若需要全新的工作區

如果只想重設工作階段,刪除該 Agent 的 agents/<agentId>/sessions/agents/<agentId>/sessions.json 即可。保留 credentials/ 就不用重新驗證。

參考資料