GitHubとAIエージェントを連携させてコードレビューを自動化する実践手順
PRが作成されると自動でAIがコードレビューをコメントする仕組みを構築する方法を解説。GitHub ActionsとLLM APIの組み合わせで、レビュー待ち時間をゼロにします。
AIコードレビューの自動化で何が変わるか
プルリクエストのコードレビューは開発チームのボトルネックになりがちです。レビュアーの稼働状況によって待ち時間が数時間から数日に及ぶことも珍しくありません。AIエージェントによる自動レビューを導入すると、PRが作成された瞬間に初回レビューが完了し、明らかな問題を事前に除去した状態で人間のレビュアーに渡せるようになります。
AIが得意なのは、コーディング規約の違反・潜在的なバグパターン・テストカバレッジの不足・ドキュメントの欠如といった定型チェックです。ビジネスロジックの妥当性や設計判断は人間が担い、役割を明確に分けることが成功の鍵です。
GitHub Actionsでトリガーを設定する
PRの作成・更新をトリガーにAIレビューを実行するには、GitHub Actionsのワークフローファイルを作成します。on: pull_requestでトリガーを設定し、actions/checkoutでコードを取得、git diffでPRの差分を抽出してLLM APIに送信します。
LLMへのリクエストには差分テキストとシステムプロンプトを組み合わせます。システムプロンプトにはプロジェクト固有のコーディング規約やチェックリストを記載しておくと、プロジェクト特有の観点でレビューを行えます。APIキーはGitHub Secretsで管理し、ワークフローファイルにはハードコードしません。
レビュー結果をPRコメントとして投稿する
GitHub APIを使ってレビュー結果をPRにコメントする部分の実装がポイントです。octokitライブラリを使えば数行でコメントを投稿できます。指摘事項をファイルパスと行番号と紐付けた「インラインコメント」として投稿すると、レビュアーにとってわかりやすくなります。
LLMの応答をJSONフォーマットで返させ、{"file": "src/api.ts", "line": 42, "severity": "warning", "message": "..."}のような構造にしておくとパースが容易になります。severityに応じてコメントのラベルを変えると視覚的な優先度付けができます。
チューニングと継続改善
AIレビューの精度は使い続けることで向上します。初期段階では誤検知も多いため、「これは指摘しなくていい」というパターンをシステムプロンプトに追記して精度を上げていきます。月に一度はレビューコメントの有用性をチームで評価し、プロンプトのアップデートを行うサイクルを組み込みましょう。3ヶ月後には人間レビュアーの作業量が40〜60%削減されたという事例が多く報告されています。