Claude Code CLIで実装計画レビューの改善ループを回す。実装計画ファイルと要件ファイルを指定し、Claude Codeにレビューさせ、指摘をトリアージして計画を修正し、再レビューする。
中文简介正在准备中。当前显示原文说明。
Claude Code CLIでGitHub PRのコードレビューループを回す。PRのURLを指定し、Claude Codeにレビューさせ、指摘をトリアージしてコードを修正し、再レビューする。PRにリンクされたIssue等は必読として機械的に検証する。
中文简介正在准备中。当前显示原文说明。
查看安装方法安装前可以查看交给 AI 代理的指令内容。
Claude Code CLI(claude -p)をレビュアーとして、GitHub Pull Requestのコードに対する「指摘 → 修正 → 再レビュー」の改善ループを回します。AIが作成したコードを、人間の検収前に独立したレビュアーで検証するためのスキルです。
PRメタデータの取得・必読リンクの収集・プロンプト生成・Claude Code実行・結果解析・waiver適用・停滞検出・エビデンス検証は、すべて同梱スクリプトが行います。あなた(このスキルを実行するエージェント)の担当は次のとおりです。
指摘の生成はレビュアー側の役割なので、スクリプトを迂回した手動レビューには切り替えません(waiver・停滞検出・エビデンス検証が失われるため)。
スクリプト: このSKILL.mdがあるディレクトリ配下の scripts/pr_review.py(例: ~/.codex/skills/claude-pr-review-loop/scripts/pr_review.py。python3 標準ライブラリのみで動作。git / gh を外部コマンドとして使用)
claude コマンドがインストール済み・認証済みgh コマンドがインストール済み・認証済み(対象リポジトリへのアクセス権があること)gh pr checkout <PRのURL>
python3 <スキルディレクトリ>/scripts/pr_review.py start --backend claude --pr "<PRのURL>"
runDir を控え、以後のコマンドで使うrequiredLinks に、PR本文とGitHubの「Development」欄から収集した必読リンク(Issue等)が列挙される。ユーザーが指定した関連Issueがここに含まれていない場合は、レビュー前にユーザーに報告するwarnings が空でない場合は内容をユーザーに伝えるpython3 <スキルディレクトリ>/scripts/pr_review.py review --run "<runDir>"
2回目以降(コード修正後)は、修正サマリーのファイルを渡す。
python3 <スキルディレクトリ>/scripts/pr_review.py review --run "<runDir>" --changes-file "<runDir>/changes-round<N>.md"
review / feedback コマンドは1回に数分〜数十分かかることがある(スクリプト内部のタイムアウトは3600秒)。実行環境のコマンドタイムアウト上限がそれより短い場合は、バックグラウンド実行にして完了を待つ。途中でコマンドが打ち切られた場合は、同じコマンドをそのまま再実行してよい(状態はラウンド完了時にのみ保存されるため、途中終了で壊れない)。
出力末尾の ===PR_REVIEW_STATE=== の次の行にJSONがある。その nextAction で分岐する。
| nextAction | やること |
|---|---|
triage | レビュー報告を省略せずそのままユーザーに提示し、フィードバックを待つ(手順5へ) |
fix_code | コードを修正する(手順6へ) |
done / stagnated / max_rounds | スクリプトが出力した完了サマリーをユーザーに提示して終了する(未pushコミットが残る場合の報告は手順6の5のとおり) |
requiredEvidenceMet が false の場合(requiredLinksUnread が1以上の場合を含む)は、レビュアーが必読リンクかFigma等の必須情報源を確認しないままレビューしたということなので、このラウンドの結果をそのまま採用しない。報告内の検証警告(何が未確認か)をユーザーに伝え、レビューをやり直すか、この結果のまま続行するかを確認する。やり直す場合、ランが継続中なら feedback コマンドで「未確認の必読リンク・情報源を確認したうえで再レビューしてください」と伝え、終了済み(done 等)なら start から新しいランを作る(waiver は新しいランに引き継がれない)。
feedback コマンドに渡すのは、指摘の取捨・調整に関するフィードバック(waive指定・修正方針・却下理由など)と、手順4で指示する再レビュー依頼だけである。それ以外(中止・質問など)を渡してもレビュアーは活用できず、1ラウンド分の時間を浪費する。
<runDir>/feedback.txt)に保存して次を実行するpython3 <スキルディレクトリ>/scripts/pr_review.py feedback --run "<runDir>" --file "<runDir>/feedback.txt"
<runDir>/changes-round<N>.md に書き出すgit push はユーザーの指示があるまで行わない。ループを終了するとき(完了・中止のいずれも)、未pushのコミットが残っていれば、その旨(コミット数と内容の要約)とpushするかの確認を最終報告に含める(黙って終えると、PRが未更新のまま完了したと誤解されるため)--changes-file 付きで review を実行するセッションを跨いで再開する場合は、status --run "<runDir>" で状態を確認し、上から順に最初に当てはまる分岐に従う。
endReason がある: 終了済みのラン。実績(rounds・waivers)をユーザーに報告するrounds が空: 1回目のレビューが完了していない。手順3の review からやり直すrounds の最終ラウンドに対応する <runDir>/changes-round<N>.md がある: 修正まで済んでいる。手順3の --changes-file 付き review から続ける<runDir>/state.json の lastFindings)をユーザーに再提示し、トリアージ(手順5)から続ける#123・owner/repo#123)と、GitHubの「Development」欄にリンクされたIssue。未確認だった場合の扱いは手順4のとおりrequiredEvidenceMet が false になる)requiredEvidenceMet は false にならない)。セッションの再開に失敗して新規セッションになったラウンドでは、レビュアーに前回の記憶が無いため引き継がれず、改めて確認が必要になるユーザーが worktree の利用を指示した場合は、現在のチェックアウトを汚さないよう、専用の worktree でループ全体を実行する。
git worktree add --detach <リポジトリ外のパス(例: ../<repo>-pr<N>)>
cd <worktreeのパス>
gh pr checkout <PRのURL>
gh pr checkout が失敗する。その場合はユーザーに報告して指示を仰ぐgit worktree remove <パス> を案内するstart の引数 --max-rounds N / --stagnation-rounds N / --config <path> / --allow-dirty.agents/pr-review.json(存在すれば自動で読み込む)
DEFAULT_CONFIG を参照(maxRounds, blockingCategories, blockingSeverities, perspectives, additionalInstructions, claudeExtraArgs など){"maxRounds": 4, "additionalInstructions": "認可まわりの変更を重点的に見る"}| 症状 | 対応 |
|---|---|
claude が見つからない | Claude Codeの公式インストール手順の確認をユーザーに案内する |
| 認証エラー(401等) | claude auth status / gh auth status で状態を確認し、必要なら再ログインを案内する |
| start が「ブランチが一致しません」で失敗 | gh pr checkout <PRのURL> を実行してから再度 start する |
| start が「未コミットの変更があります」で失敗 | ユーザーに扱いを確認する。意図的に残す場合のみ --allow-dirty を付ける |
is_error: true で失敗 | スクリプトが result と permission_denials を表示する。内容をそのままユーザーに報告する |
| resume失敗 | スクリプトが新規セッションに自動フォールバックするため対応不要 |
| スクリプトがエラー終了 | まずエラーメッセージに書かれた解消手順に従い、自分の呼び出し方(引数・パス・実行ディレクトリ)に原因があれば直して再実行する。自力で解消できないエラーのみ、stderr・ログの内容をそのままユーザーに報告する |
还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
Claude Code CLIで実装計画レビューの改善ループを回す。実装計画ファイルと要件ファイルを指定し、Claude Codeにレビューさせ、指摘をトリアージして計画を修正し、再レビューする。
中文简介正在准备中。当前显示原文说明。
コード・テストコード・コミットログ・コードコメントのどこに何を書くかを決めるときに使う。コードには How、テストコードには What、コミットログには Why、コードコメントには Why not を書き分ける。実装時とコミット・PR 作成時に使う。
中文简介正在准备中。当前显示原文说明。
コードの識別子(変数・関数・メソッド・クラス・型・ファイル)に名前を付けるときに使う。get の濫用をやめ、何をして値を得るのかが名前から読み取れる状態にする。実装時と、実装計画でメソッド名・クラス名を決めるときの両方で使う。
中文简介正在准备中。当前显示原文说明。
Codex CLIで実装計画レビューの改善ループを回す。実装計画ファイルと要件ファイルを指定し、Codexにレビューさせ、指摘をトリアージして計画を修正し、再レビューする。
中文简介正在准备中。当前显示原文说明。
Codex CLIでGitHub PRのコードレビューループを回す。PRのURLを指定し、Codexにレビューさせ、指摘をトリアージしてコードを修正し、再レビューする。PRにリンクされたIssue等は必読として機械的に検証する。
中文简介正在准备中。当前显示原文说明。
長大な設計文書・Pull Request・Issueを読み解き、図と短い文を組み合わせた解説HTMLを生成してブラウザで開く。生成したページ内の識別子を指定すると、その項目だけを掘り下げたページも作る。
中文简介正在准备中。当前显示原文说明。