code-review
GitHub PR、diff、ローカルコード変更を並列レビューし、重複排除・検証・見落とし探索を経て、根拠付きのコードレビューを生成する skill。
SKILL.mdskills/code-review/SKILL.md
GitHubCode Review
Invocation
この skill は明示的に呼び出された場合のみ使用する。
$code-review
$code-review pr#123
$code-review owner/repo#123
- 引数なし: 現在の repository のローカル変更をレビューする。
pr#<number>: 現在の repository の GitHub PR をレビューする。owner/repo#<number>: 指定 repository の GitHub PR をレビューする。
レビューでは変更された行だけでなく、その変更によって影響を受ける呼び出し元・呼び出し先・テストも確認する。
対象を取得できない場合は、利用可能な別手段を試す。取得できないまま推測でレビューしてはいけない。
Phase 0 — 変更内容を把握する
レビューを始める前に、変更の目的と影響範囲を把握する。
以下を確認する。
- 変更されたファイルと処理
- 変更によって変わる振る舞い
- 影響を受ける呼び出し元・呼び出し先・テスト
- 削除・変更された validation、authorization、guard、error handling
- PR description、issue、既存ドキュメントなどから分かる変更意図
diff だけを見てレビューを始めてはいけない。
変更意図が明示されていない場合は、既存コード・テスト・呼び出し側から現在の仕様を読み取ってレビューを続行する。
Phase 1 — reviewer を並列で実行する
references/reviewers.md と references/review-angles.md を読む。
以下の reviewer を並列で実行する。
- セキュリティ・認可
- 正しさ・状態管理
- 並行処理・障害耐性
- 性能・リソース
- 設計・保守性
- テスト・回帰
- 運用・可観測性
各 reviewer は独立して変更を確認する。
reviewer 同士で指摘内容を共有してはいけない。 同じ変更を異なる観点から確認し、見落としを減らす。
指摘を出す場合は、以下を説明する。
- どこで起きるか
- どの条件で起きるか
- どの処理経路を通るか
- 何が誤った挙動になるか
- どんな影響があるか
発生条件・処理経路・影響を説明できない推測的な指摘は出さない。
Phase 2 — 指摘を整理・重複排除する
各 reviewer の指摘をまとめ、同じ根本原因、同じ変更箇所、または同じ修正で解決できる指摘は1件に統合する。
統合時は、それぞれの reviewer が示した根拠と影響を残す。
別の指摘として分けるのは、修正方法が独立している場合だけとする。
Phase 3 — 指摘を検証する
references/verification.md を読む。
整理した各指摘について、コード・呼び出し元・呼び出し先・テストを確認し、本当に成立するか検証する。
各指摘に次の確度を付ける。
- 確定: 発生条件、処理経路、誤った挙動をコード上で確認できる
- 高確度: 問題の仕組みは成立しているが、一部の実行条件を静的に確定できない
- 未確認: 根拠が不足しており、成立すると判断できない
- 否定: guard、型、caller、transaction などによって問題が成立しない
最終レポートには 確定 と 高確度 だけを残す。
各指摘について、成立する根拠だけでなく、成立しない可能性を必ず検証する。
以下を確認する。
- 呼び出し元、validation、型、制約などによって、問題がすでに防がれていないか
- transaction、lock、unique constraint などによって、実行時に問題が成立しない構造になっていないか
- 指摘している経路が実際に到達可能で、既存テストや API の仕様と矛盾していないか
これらを確認したうえで反証できない指摘だけを 確定 または 高確度 とする。
Phase 4 — 見落としを確認する
Phase 1〜3 に参加していない reviewer が、既存の指摘を見ずに変更を再確認する。
references/review-angles.md を使い、以下を確認する。
- 変更された振る舞い
- 削除・変更された guard、validation、error handling
- 呼び出し元・呼び出し先との契約
- test coverage
- まだ挙がっていない問題となる経路
新しい指摘が見つかった場合は、Phase 3 と同じ基準で検証する。
既存の指摘と同じ根本原因、または同じ修正で解決できる場合は、重複として統合する。
Phase 5 — 最終レポートを作る
references/output.md を読む。
確定 と 高確度 の指摘だけを最終レポートに残す。
指摘は重要度の高い順に並べ、同じ根本原因や同じ修正で解決できるものは1件にまとめる。
各指摘には以下を含める。
- 重要度
- 確度
- 対象箇所
- 問題
- 影響
- 推奨対応
詳細な発生条件・処理経路・根拠は、判断に必要な場合だけ補足する。
最後に、以下を短くまとめる。
- 今すぐ直すべきもの
- マージ前に確認すべきもの
- 問題なしと判断したもの
指摘がない場合は、問題を作らず「指摘なし」とする。