Community程式設計與開發github.com

103kaz/claude-code-loops - 審閱循環

在推送或開啟拉取請求前,審閱並修復當前分支的差異 — 驗證、審閱、修復、重複,直到一輪檢查無任何發現。當被要求進行審閱循環,或在開啟拉取請求前使用。

claude-code-loops - 審閱循環 是什麼?

這項技能實現了一個自動化的開發循環,專注於當前分支的差異(diff),而非整個程式碼庫。它透過執行 verify.sh 指令碼、進行程式碼審閱、修復發現的問題,並重複此流程,直到某一輪檢查完全沒有任何發現。此外,它還提供可選的獨立審閱環節,能啟動一個唯讀的子代理來尋找可能遺漏的邊界案例。該技能支援多種基礎分支(如 origin/HEAD、origin/main、origin/master),並能處理已提交、未提交及未追蹤的變更。它會生成一份簡潔的報告,總結結果、指出跳過的發現並說明原因、驗證狀態以及審閱次數。此技能適用於 Claude Code 等支援 subagent 的 AI 編碼助手平台。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/103kaz/claude-code-loops/tree/HEAD/skills/review-loop

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

review-loop

在當前分支上執行開發循環:驗證、審閱差異、修復,並重複直到某一輪檢查無任何發現。範圍僅限於差異,而非整個程式碼庫。此技能不會推送或開啟拉取請求;這些操作留給使用者自行處理。

步驟

  1. 執行 .claude/verify.sh。如果失敗,先修復它。如果該檔案不存在,告知使用者並指向 /code-loops:init-verify,然後在不進行驗證的情況下繼續進行,並在報告中說明此事。
  2. 決定差異範圍。第一輪:分支與其基礎分支的差異(git diff origin/HEAD...HEAD,加上 git diff HEAD 以包含未提交的變更,再加上 git status --short 中的未追蹤檔案,直接讀取其內容)。如果 origin/HEAD 未設定,請嘗試 origin/main 或 origin/master;如果兩者都不存在,請詢問使用者基礎分支為何。如果差異為空(例如你正位於基礎分支本身),報告無需審閱的內容並停止。如果未提交的變更看起來與分支的工作無關,不要修復它們;在報告中提及它們。後續輪次:僅考慮你在前一輪中修改的內容。
  3. 審閱差異。
    • 如果它變更了程式碼,使用 code-review 技能以中等努力度進行。如果該技能不可用,自行閱讀差異以尋找錯誤:錯誤結果、遺漏的錯誤路徑以及變更所破壞的呼叫端。
    • 如果它只變更了文件(.md 及類似檔案),改為對差異執行 /code-loops:doc-code-consistency。
  4. 修復發現的問題。不要提交;將其留給使用者。每次修復後,回到步驟 1。重複直到某一輪沒有發現任何問題。你決定不修復的發現,需附上一行說明原因。如果連續三輪仍出現發現(verify.sh 失敗也算),則停止並報告剩餘內容,而不是繼續。
  5. 如果差異變更了文件所描述的程式碼,在最後對差異執行 /code-loops:doc-code-consistency 一次,並修復其發現的問題。
  6. 提供一次獨立審閱,除非差異僅包含文件。詢問使用者(使用 AskUserQuestion)是否執行它,並附上一行簡短說明此差異是否值得審閱(大小、風險區域);預設為否。如果是,啟動一個僅能看到差異(而非其建構過程)的子代理。如果存在唯讀代理類型(例如 Explore),請使用它;否則告知它不要編輯檔案。讓它尋找會破壞變更的輸入、狀態和順序,並針對每一項提供檔案:行號證據;如果 .claude/review/checklist.md 存在,也讓它根據該檢查清單進行檢查。修復其發現的問題,然後僅對這些修復執行步驟 1 和 3。如果子代理不可用,跳過此步驟並在報告中說明。
  7. 用幾行報告:「結果:無發現」,或「結果:保留發現」並附上每個發現及其原因。新增 verify.sh 是否通過、總共進行了多少輪,以及是否執行了獨立審閱。

保持每輪低調:閱讀差異,而非整個儲存庫,並且不要重複早期輪次的發現。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相關技能