跳到主內容

Theme / 0.9.130

Pstack

用可驗證的工作流程協作,從單一入口學會工程技能

Skills

babysit | 在授權範圍內照看單一 PR

持續檢查單一 PR 的衝突、CI 與審查回饋,設定輪詢及停止條件,整理到可供合併審查的狀態。

babysit | 在授權範圍內照看單一 PR

本頁以 pstack-claude 0.9.126 移植版為準。babysit 不在此次核對的 Cursor 原版 pstack 技能目錄中。這是移植版獨立撰寫、參考 Cursor 內建 /babysit 公開行為的實作,不是取得閉源實作後移植。本次未監看任何外部 PR。

定位與適用情境

此獨立技能照看已開啟的拉取請求 (pull request, PR),按衝突、CI、回饋的優先順序處理,直到可準備合併或達停止條件。開 PR 不會自動啟動 babysit,必須由使用者明確要求。

情境是你提交匯出功能 PR 後,需要代理追蹤檢查並整理審查意見。只允許修正範圍內的機械性問題;若涉及匯出格式的產品選擇,就停下交回決定。

先分清入口。 已在 poteto-mode 流程內時,其 Babysit 工作手冊 (playbook) 取代此獨立技能,負責模式宣告與堆疊安全。本頁教的是 poteto-mode 之外的單一 PR 入口,不把它當成堆疊合併或 shipping 流程。

準備

  • 指定 PR、目標分支、允許修改的範圍,以及 stage、commit、push 各自是否獲准。
  • 確認 gh、託管平台存取權與執行檢查所需環境。約定代理離線或排程不可用時如何交接。
  • Claude Code 的獨立流程使用 loop 控制節奏。Codex 沒有相同 loop 技能,需自行按節奏重新執行,或使用可用的排程能力,不能承諾不存在的永久背景監看。

Claude Code 使用 /pstack:babysit。Codex 插件選單插入 $pstack:babysit,skills-only 使用 $babysit。以下自然語言需求也能表達範圍,但不會賦予平台尚未提供的工具。

操作步驟

  1. 讀取 PR 狀態。 原文以 gh pr view <number> --json number,title,state,mergeable,reviewDecision,statusCheckRollup,mergeStateStatus,comments,reviews 取得狀態,先確認對象與目前阻礙。
  2. 依序分類處理。 衝突交給 fix-merge-conflicts,失敗檢查交給 fix-ci,留言先用 get-pr-comments 彙整。只處理經判斷同意的建議。機器人意見要分成 fix、dismiss、ask,安全、資料與高嚴重度問題預設先詢問,不能盲改。
  3. 在核准範圍內修正並重查。 單純更名或明確格式問題可依授權修正,原文要求提交訊息引用所處理留言。涉及判斷的建議不猜測。需要回覆外部留言時,也應先確認寫入權限。
  4. 選擇可實現的節奏。 CI 執行中可用 gh pr checks --watch 等待完成。等審查者時原文建議每 20 至 30 分鐘,閒置追蹤新留言則每小時。不具排程能力就明說目前只能單輪檢查。
  5. 依條件停止。 檢查全綠、留言皆處理且無衝突時回報 ready。三輪「修正、推送、重查」仍未全綠,或下一步需要設計決策,就停止交接。報告已修、已處理與延後事項、原因及實際提交 SHA。

可直接使用的提示詞

用 pstack:babysit 照看我指定的單一 PR,不處理其他 PR。
若目前已在 poteto-mode,先改走其 Babysit 工作手冊並說明模式。
先列出衝突、CI、回饋及你能提供的輪詢能力。
本輪只允許讀取與提出修正計畫,不允許改檔、stage、commit、push 或回覆留言。
將機器人意見分類為 fix、dismiss、ask,產品與設計判斷交回給我。
不要跳過 hooks、停用檢查、強推、改寫歷史、merge 或部署。
若之後獲准修正,仍以三輪修正推送重查為停止上限。
回報目前是否 ready、仍有的阻礙,以及因權限尚未執行的動作。

預期結果與驗收

  • 每輪狀態可追溯至 PR 檢查與留言。修正若有提交,列出真實 SHA,沒有提交就不編造。
  • ready 不等於已合併。原文只在全綠且沒有未解決審查留言時才允許 gh pr ready,實際執行仍需授權。
  • 代理能說明剩餘阻礙、延後理由與停止原因。工具不足時,不宣稱正在背景持續追蹤。

限制與權限

讀取、編輯、暫存 (stage)、提交 (commit)、推送 (push)、改寫歷史及合併 (merge) 分別界定。原文提到自有分支的強推情境,但這不構成強推授權。共享分支不能自行改寫歷史;即使是自有分支,rebase 或 force-push 也須先確認。

不得用改測試預期值掩蓋故障、使用 --no-verify 跳過 hooks,或把失敗檢查改成非必要。此技能不授權部署、資料刪除或客戶訊息。開 PR 的子代理也不應自行接管 babysit,應先回報協調者。

延伸閱讀與來源