「PRを出した後にレビュアーから細かい指摘で5往復した」 — 開発者なら誰でも経験があるはずです。typo、エッジケース漏れ、削除し忘れたconsole.log、テストの足りない部分。人間レビュアーの時間を消費する前に、自分で気づきたい指摘です。
Claude Codeにはセルフレビューを助ける /review コマンドが用意されています。本記事では、/review の使い方と、私が半年使って定着した運用パターンを整理します。
/review はその場で変更内容をAIにレビューさせるコマンド
Claude Codeのプロンプトで /review と打つと、直前のセッションでClaudeが触ったコード変更を、Claude自身に再レビューさせる挙動になります。git stagedなファイル、未コミットの編集、コミット済みの直近差分など、対象範囲はその時々のセッション内容によります。
返ってくる指摘の内容は、たとえば次のあたりです。
- typo(変数名、コメント、文字列リテラル)
- エッジケースの抜け(空配列、null、認証失敗時のフォールバック)
- 不要な変更(消し忘れた
console.logdebugger) - セキュリティリスク(APIキーのハードコード、SQLインジェクションの可能性)
- スタイルの不統一(同じ意味のコードが別の書き方で混在)
完璧ではありませんが、ヒューマンレビューの前段として十分機能します。
私はこのコマンドを知る前、レビュー前に自分でdiff全体を眺めて確認していました。30分かけて1回見逃した変更を、/review だと10秒で気づかせてくれる、という体験を何度もしました。
使うタイミング — 3つの場面
/review をいつ叩くと効くか。私の運用での3つの場面です。
第一に、コミット直前。一連の編集が終わって git add した状態で /review を叩く。「これからコミットしようとしている内容にレビュー観点で問題ありますか」が拾えます。意外なtypoや消し忘れが減ります。
第二に、長時間の作業後。1〜2時間続けて編集した後、頭が疲れて見落としが増えやすい状態で /review を叩く。AIは疲れないので、こちらの集中力低下を補ってくれます。
第三に、他人のレビューに送る前のセルフチェック。レビュアーの時間を尊重するなら、明らかなミスを /review で拾っておくのが礼儀です。私は社内レビューで「typo指摘」が来る回数が、/review を入れる前後で半減しました。
拾える指摘の精度を上げるコツ
/review の精度は、CLAUDE.md と直前の文脈の質に直結します。何も書かれていないリポジトリで叩くと、汎用的な指摘しか返ってきません。
精度を上げる工夫は次のとおり。
- CLAUDE.md に「コミットメッセージは
feat:fix:で始める」のような規約を書く → 命名違反を指摘してくれる - CLAUDE.md に「テストファイルは tests/ 配下に必ず1つ作る」と書く → テスト追加漏れを指摘してくれる
- AGENTS.md に過去の事故例を書く → 同じパターンの危険を再レビュー時に拾う
私のリポジトリでは media/AGENTS.md に Next.js 16 の破壊的変更への注意を書いていて、/review が「これは Next.js 15 のAPIなので、16では fetch のcache挙動が違います」と指摘してくれる場面があります。
CLAUDE.md と AGENTS.md の整備度合いが、そのまま /review の役立ち度合いになります。
hooks と組み合わせて自動レビューにする
毎回手で /review を叩くのが面倒なら、Claude Code の hooks 機能で自動化できます。.claude/settings.json で、特定の操作タイミングに /review を強制発火させる設定です。
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{ "type": "command", "command": "echo 'ファイル編集ごとにレビューを推奨' >&2" }
]
}
]
}
}
上は単にメッセージを表示するだけのサンプルですが、ファイル編集後にレビューを促す形にできます。本格的な自動レビューを組むなら、hooks から claude を別プロセスで呼び出して、その出力を Slack に流すような構成も組めます。
私は個人作業ではhooksまでは入れていません。手で叩く意識を持っておく方が、レビュー結果を真面目に読むからです。チーム運用では hooks 自動化の価値は高いはず。
限界 — /review で拾えないもの
正直に書くと、/review で拾えない指摘もあります。私が体感した範囲だと、
- 設計レベルの問題(「このクラス分割は責務がおかしい」「データモデルが将来詰まる」)
- ビジネスロジックの誤り(コードは正しく動くが、要件と違う実装)
- パフォーマンスの問題(計算量、N+1クエリ)
- 副作用のあるテスト失敗(モックが甘いせいで本番でだけ落ちるバグ)
これらは人間レビュアーやEnd-to-Endテストの守備範囲です。/review を入れたから人間レビューが不要、ではない。人間レビューの前に明らかなミスを減らすツールという位置づけです。
私のチームでは、/review を「ヒューマンレビュアーへの敬意」と説明しています。レビュアーの時間を、設計議論のような価値の高い指摘に使ってもらうために、機械が拾える指摘は機械に任せる、という発想です。
私の運用フローの実例
参考までに、私が業務で回しているフローを書きます。
- Claude Codeで一連の編集が終わる
/clearで履歴を整理しない(レビュー対象の文脈を保つため)/reviewを叩く- 返ってきた指摘に対応(typoは直す、設計指摘は判断して残すか直す)
git add -pで差分確認しながらstaginggit commitのメッセージは Claude に下書きさせるgit pushしてPR作成
このフローで、PRレビューの所要時間が体感で30%減りました。減ったぶんで、レビュアーが設計面の指摘を出してくれるようになり、コードの品質も上がる、という二次効果がありました。
まとめ
/reviewは直前の変更をClaude自身に再レビューさせるコマンド- typo・エッジケース漏れ・機密情報混入を、人間レビュー前に拾える
- 使うタイミングはコミット直前・長時間作業後・他人レビュー前
- 精度を上げるには CLAUDE.md と AGENTS.md の整備が効く
- hooks と組み合わせて自動化も可能。チーム運用ではおすすめ
- 設計・ビジネスロジック・パフォーマンスは人間レビューの守備範囲





