🤖

ghとAIでGitHubのPRレビューを一発ラクラクにする

に公開

CursorのAIとGitHub CLIのghを使ってAIレビューを1ステップでできるようにしました。

チャット欄で「/revew {PR番号}」と打ち込むだけでAIが勝手にGitHubのPRレビューを始めてくれるのでめちゃめちゃ捗ります。

エディタ上でAIレビューするメリット

GitHub上でのcopilotのレビューも活用していますが、エディタ上でAIにレビューしてもらうと↓のようなメリットがあります。

  1. レビュー結果に疑問があるときは、そのままチャット欄で質問できる
  2. この場合はどう? こっちのコードには影響ない? などレビューをさらに深められる
  3. エディタ上で操作できた方が、なんだかんだ他のコードを見に行ったりしやすい

AIと相談しているとコードの理解も深まります。もちろんAIが的外れなことを言う場合もあるので鵜呑みにしないよう注意。

準備

エディタはCursorを使います。他のエディタでもClaude CodeやCodexのカスタムコマンドを設定すれば同様のことができるのでここはお好みで。

1. ghを入れる

インストール手順はこちらを参照してください。

ghを入れることで対象のPRの差分だけAIが認識できるようにします。ghがないと、マージした別の差分などを取り込んでしまってあんまり安定しないです。

2. Rulesの記載

CursorのRulesにプロンプトを定義します。(Claude CodeやCodeXの場合はツールに合わせてカスタムコマンドを定義してください。)

  • Cursor > 基本設定 > Cursor Settings

  • Rules & Memories > Add Rules

プロンプトを記載します。ポイントは以下です。

  • /reveiw {PR番号}で入力されることを明記する
  • ghでPRのブランチをpullする、変更コミットを取得することを明記する
  • 日本語で回答するように明記する

そのほかはお好みに応じて追加修正してください。

# ショートカットエイリアス

/review {PR番号}

あなたは経験豊富なシニアエンジニアです。
ユーザーから提供されたGitHubのPull Request (PR) の変更差分 (Unified Diff) をレビューしてください。
以下のレビュー観点に基づき、コード品質、バグの可能性、セキュリティ、アーキテクチャへの影響、テストの不足点を指摘してください。回答は必ず日本語でお願いします。

■入力
- 対象PR番号
  - gh pr checkout {PR番号} でpullする
  - gh pr diffを使用して変更コミットを取得する
- 変更差分(unified diff)
■レビュー観点
- パフォーマンスへの影響や非効率な処理はないか
- エラーハンドリングは適切か
- セキュリティ上の脆弱性(XSS, SQLiなど)はないか
- 既存のコーディングスタイルや命名規則に違反していないか
- コードの意図が明確で、可読性が高いか

レビューする!

PRレビュー依頼がきたらCursorのチャット欄で「/review 1(PRの番号)」と入力します。

こんな感じでAIがレビューしてくれました!

まとめ

ちょっとした工夫でPRレビューが快適になりました。
特に最小のプロンプトでブランチのpull→diff確認→レビューまでやってくれるのがいい感じです。
AIレビューが走っている間は自力でレビューして、最終的にAIの回答を確認することで、コードの理解も含まるしレビューの精度も上がります。

参考にしてみてください!

Discussion