PRレビューを自動化する
Claude CodeでPRレビューをする方法
Section titled “Claude CodeでPRレビューをする方法”ローカルでdiffをレビューする
Section titled “ローカルでdiffをレビューする”# まずdiffを取得git diff main..feature/my-feature > review.diff
# Claude Codeでレビューcat review.diff | claude "このdiffをコードレビューして。バグ・セキュリティ問題・パフォーマンス問題を中心に指摘して"スラッシュコマンドとして登録する
Section titled “スラッシュコマンドとして登録する”.claude/commands/review.md を作成:
---description: 現在のブランチの変更をレビューする---
git diff main..HEAD の内容を読んで、以下の観点でコードレビューをして:
1. バグの可能性がある箇所2. セキュリティ上の問題3. パフォーマンスへの影響4. 命名・可読性の問題5. テストが必要な箇所
問題があれば、具体的な修正コードも提示して。使い方:
/review※スラッシュコマンド: Claude Code内で `/` から始めるショートカットコマンド。`/compact`・`/clear`・`/help` など。※ブランチ: Gitでコードの変更履歴を分岐させる仕組み。本番コードに影響を与えずに新機能を開発できる。
GitHub MCPと組み合わせたPRレビュー
Section titled “GitHub MCPと組み合わせたPRレビュー”GitHub MCPを使えば、GitHubのPRを直接レビューできる。
PR #42を読んで、インラインコメントをGitHubに投稿して。特にセキュリティ面とパフォーマンス面を重点的に見て。※MCP: Model Context Protocol の略。Claude Codeと外部ツール(GitHub・Supabaseなど)を接続するための標準プロトコル。
レビューの品質を上げるプロンプト
Section titled “レビューの品質を上げるプロンプト”セキュリティ重視
Section titled “セキュリティ重視”このPRのdiffをセキュリティエンジニアの視点でレビューして。SQLインジェクション、XSS、認証バイパスの可能性を調べて。パフォーマンス重視
Section titled “パフォーマンス重視”このPRのdiffを読んで、パフォーマンスへの影響を分析して。N+1クエリ、不要なレンダリング、メモリリークの可能性を確認して。後輩のコードをやさしくレビュー
Section titled “後輩のコードをやさしくレビュー”このコードをレビューして。新人エンジニアのPRなので、問題点を指摘しつつ、なぜそれが問題なのか説明する形式で書いて。批判的にならず、学習を促す書き方で。※プロンプト: AIへの指示文。Claude Codeへの指示の質がそのまま出力の質に影響する。
CI/CDに組み込む方法
Section titled “CI/CDに組み込む方法”GitHub Actionsでの自動レビュー例:
name: AI Code Review
on: pull_request: types: [opened, synchronize]
jobs: review: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: fetch-depth: 0
- name: Get diff run: git diff origin/main..HEAD > diff.txt
- name: Review with Claude env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} run: | npx @anthropic-ai/claude-code -p "$(cat diff.txt)のコードレビューをして" \ >> review.txt
- name: Comment on PR uses: actions/github-script@v7 with: script: | const fs = require('fs'); const review = fs.readFileSync('review.txt', 'utf8'); github.rest.issues.createComment({ owner: context.repo.owner, repo: context.repo.repo, issue_number: context.issue.number, body: `## 🤖 AI Code Review\n\n${review}` });※GitHub Actions: GitHubが提供するCI/CDサービス。コードのプッシュをトリガーにテスト・ビルド・デプロイを自動実行できる。※CI/CD: Continuous Integration / Continuous Delivery の略。コード変更を自動でテスト・本番環境にデプロイする仕組み。※API: Application Programming Interface の略。外部サービスとプログラム間でデータをやりとりするための接続口。