- Google Antigravityの
antigravity reviewコマンドでPRの差分をAIが自動レビューできる - セキュリティ・パフォーマンス・設計・テストカバレッジの4観点を一括チェック可能
- GitHub Actions連携で、PR作成時に自動でレビューコメントを投稿する仕組みが構築できる
「レビュー依頼が溜まっている」「レビューが属人化してスピードが出ない」——SES現場でチーム開発に参画すると、コードレビューのボトルネックに直面する場面は少なくありません。
Google Antigravityには、Gemini 2.5 Proの高度なコード理解力を活かしたAIコードレビュー機能が搭載されています。この記事では、CLIでの手動レビューからGitHub Actionsでの完全自動化まで、SES現場で即実践できるコードレビュー自動化の全手順を解説します。
なぜコードレビューの自動化が必要なのか
コードレビューはソフトウェア品質を担保する最重要プロセスですが、多くの現場で以下の課題を抱えています。
- レビュー待ち時間:シニアエンジニアに依頼が集中し、PRが数日放置される
- レビュー品質のばらつき:レビュアーの経験やコンディションで指摘の深さが変わる
- 表面的な指摘に偏る:命名規則やフォーマットの指摘は多いが、設計上の問題は見逃される
- セキュリティ観点の漏れ:SQLインジェクションやXSSなど、セキュリティ上の問題がすり抜ける
Google AntigravityのAIコードレビューは、これらの課題に対して機械的に一貫した品質チェックを提供します。人間のレビューを置き換えるものではなく、人間が本質的な設計議論に集中するための下地づくりとして機能します。

Antigravityのコードレビュー機能の全体像
Antigravityのコードレビュー機能は3つのモードで利用できます。
| モード | コマンド | 用途 |
|---|---|---|
| 差分レビュー | antigravity review | ステージング済みの差分をレビュー |
| PRレビュー | antigravity review --pr <番号> | GitHub PRの差分を直接レビュー |
| ファイルレビュー | antigravity review --file <パス> | 特定ファイル全体をレビュー |
いずれのモードでも、Gemini 2.5 Proがコードの文脈を理解した上で、以下の4観点からレビューコメントを生成します。
- セキュリティ:インジェクション、認証バイパス、機密情報の漏洩リスク
- パフォーマンス:N+1クエリ、不要な再レンダリング、メモリリーク
- 設計・保守性:責務の分離、DRY原則、命名の適切さ
- テスト:テストカバレッジ、エッジケースの網羅性
ステップ1:CLIでの基本的なコードレビュー
まずはコマンドラインでの手動レビューから始めましょう。
ステージング済みの差分をレビュー
# まず変更をステージング
git add .
# ステージング済みの差分をAIレビュー
antigravity review
出力例:
🔍 Reviewing staged changes (4 files, +127 -23 lines)
━━━ src/api/userController.ts ━━━
[SECURITY] Line 42: SQLクエリにユーザー入力を直接埋め込んでいます。
パラメータ化クエリを使用してSQLインジェクションを防止してください。
現在のコード:
const query = `SELECT * FROM users WHERE email = '${req.body.email}'`;
修正案:
const query = `SELECT * FROM users WHERE email = $1`;
const result = await db.query(query, [req.body.email]);
[PERFORMANCE] Line 78: ループ内でデータベースクエリが実行されています(N+1問題)。
バッチ取得に変更することを推奨します。
━━━ src/components/UserList.tsx ━━━
[DESIGN] Line 15-45: このコンポーネントはデータ取得とUIレンダリングの
両方を担っています。カスタムフックに分離することを推奨します。
━━━ Summary ━━━
🔴 Critical: 1 (Security)
🟡 Warning: 2 (Performance, Design)
🟢 Info: 0
特定ブランチとの差分をレビュー
# mainブランチとの差分をレビュー
antigravity review --base main
# 特定のコミットとの差分をレビュー
antigravity review --base HEAD~3
レビューの観点を絞る
# セキュリティ観点のみでレビュー
antigravity review --focus security
# セキュリティとパフォーマンスの2観点でレビュー
antigravity review --focus security,performance
ステップ2:GitHub PRの自動レビュー
Antigravityは、GitHub CLIと連携してPRの差分を直接レビューし、コメントを投稿できます。
PRをレビューしてコメントを投稿
# PR #42 をレビューし、結果をGitHubにコメント投稿
antigravity review --pr 42 --post-comments
# レビュー結果をターミナルに表示するだけ(コメント投稿なし)
antigravity review --pr 42
--post-comments オプションを使うと、PRの該当行にインラインコメントとして投稿されます。レビューサマリーもPRのコメント欄に自動投稿されます。
PRレビュー機能を使うには、gh auth login でGitHub CLIの認証が完了している必要があります。また、対象リポジトリへの読み取り権限が必要です。
レビューの厳格度を調整する
# 厳格モード:些細な問題も全て報告
antigravity review --pr 42 --severity all
# 標準モード(デフォルト):Warning以上を報告
antigravity review --pr 42 --severity warning
# クリティカルのみ:セキュリティ問題など重大な問題のみ
antigravity review --pr 42 --severity critical
ステップ3:カスタムレビュールールの設定
プロジェクト固有のルールをAntigravityに教えることで、チームの規約に沿ったレビューが可能になります。
レビュールール設定ファイルの作成
プロジェクトルートに .antigravity/review-rules.yaml を作成します。
# .antigravity/review-rules.yaml
rules:
# セキュリティルール
security:
- name: no-raw-sql
description: "生のSQLクエリを使用しないこと。必ずORMまたはクエリビルダーを使用する"
severity: critical
patterns:
- "db.query(\`"
- "db.raw("
- "knex.raw("
- name: no-hardcoded-secrets
description: "APIキーやパスワードをコードに直書きしないこと"
severity: critical
patterns:
- "password = \""
- "apiKey = \""
- "secret = \""
# パフォーマンスルール
performance:
- name: no-sync-fs
description: "同期的なファイルシステム操作を使用しないこと"
severity: warning
patterns:
- "readFileSync"
- "writeFileSync"
# 設計ルール
design:
- name: max-function-length
description: "1つの関数は50行以内に収めること"
severity: info
max_lines: 50
- name: no-any-type
description: "TypeScriptでany型を使用しないこと"
severity: warning
patterns:
- ": any"
- "as any"
# テストルール
testing:
- name: require-tests
description: "src/ 配下の変更にはテストファイルの追加・変更が必要"
severity: warning
require_test_changes_for:
- "src/**/*.ts"
- "src/**/*.tsx"
コンテキストファイルでプロジェクト背景を共有
レビュールールだけでなく、プロジェクトの背景知識をAntigravityに渡すこともできます。
# .antigravity/review-context.yaml
project:
name: "社内顧客管理システム"
architecture: "Clean Architecture(Domain / Application / Infrastructure)"
language: "TypeScript"
framework: "NestJS + React"
database: "PostgreSQL(Prismaを使用)"
conventions:
- "エラーハンドリングはResult型(neverthrow)を使用する"
- "ログ出力にはconsole.logではなくPinoロガーを使用する"
- "APIレスポンスは必ずDTO経由で返す(Entityを直接返さない)"
- "環境変数はConfigServiceから取得する(process.envを直接参照しない)"
# カスタムルールを使ってレビュー
antigravity review --rules .antigravity/review-rules.yaml
# コンテキストも含めてレビュー
antigravity review --rules .antigravity/review-rules.yaml --context .antigravity/review-context.yaml
ステップ4:GitHub Actionsで完全自動化する
PR作成時に自動でAntigravityのコードレビューを実行するワークフローを構築します。
# .github/workflows/ai-code-review.yml
name: AI Code Review
on:
pull_request:
types: [opened, synchronize]
permissions:
contents: read
pull-requests: write
jobs:
review:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install Antigravity
run: pip install google-antigravity
- name: Run AI Code Review
env:
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
antigravity review \
--pr ${{ github.event.pull_request.number }} \
--post-comments \
--severity warning \
--rules .antigravity/review-rules.yaml \
--context .antigravity/review-context.yaml \
--format github-actions
リポジトリの Settings → Secrets and variables → Actions に GOOGLE_API_KEY を追加してください。GITHUB_TOKEN はGitHub Actionsが自動で提供するため設定不要です。
レビュー結果でCIをブロックする
セキュリティ上の重大な問題が見つかった場合にマージをブロックする設定も可能です。
- name: Run AI Code Review
env:
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
antigravity review \
--pr ${{ github.event.pull_request.number }} \
--post-comments \
--severity warning \
--fail-on critical
--fail-on critical を指定すると、Critical(セキュリティ問題等)が検出された場合にexit code 1を返し、CIが失敗します。これをブランチプロテクションルールと組み合わせることで、重大な問題があるPRのマージを防止できます。
ステップ5:レビュー結果をカスタマイズする
出力フォーマットの指定
# JSON形式で出力(他のツールとの連携用)
antigravity review --format json > review-result.json
# Markdown形式で出力(ドキュメント化用)
antigravity review --format markdown > review-result.md
# GitHub Actions形式(ワークフローアノテーション付き)
antigravity review --format github-actions
レビュー対象の絞り込み
# 特定のディレクトリのみレビュー
antigravity review --include "src/api/**" --include "src/services/**"
# テストファイルを除外
antigravity review --exclude "**/*.test.ts" --exclude "**/*.spec.ts"
# 特定の言語のファイルのみ
antigravity review --lang typescript,python
SES現場での活用パターン
SES現場に新しく参画した直後は、プロジェクトの規約やアーキテクチャに不慣れな状態でPRを出すことになります。antigravity review を自分のPRに対して事前に実行しておけば、レビュー依頼前に規約違反やアンチパターンを自己修正でき、レビュアーの負担を軽減できます。
# PRを出す前にセルフレビュー
git add .
antigravity review --severity all
# 指摘を修正してからPRを作成
テストが不十分なレガシーコードを改修する際、変更の影響範囲をAIが解析してくれます。特に --focus security,performance で重点的にチェックすることで、既存の脆弱性を悪化させるような変更を事前に検出できます。
# レガシーコード改修の差分をセキュリティ重点でレビュー
antigravity review --base main --focus security,performance
review-rules.yaml をリポジトリにコミットしてチーム全員で共有することで、レビュー基準を属人化させずに標準化できます。人間のレビュアーは、AIが検出した表面的な問題の修正を確認した上で、設計判断やビジネスロジックの妥当性など、より本質的な議論に集中できます。
AIレビューと人間レビューの役割分担
AIコードレビューの導入にあたって重要なのは、AIと人間の役割を明確に分けることです。
AIレビューは「機械的に検出できる問題」を担当し、人間は「文脈を踏まえた判断」に集中する——これがベストな分担です。
AIが得意な領域
- セキュリティ脆弱性の検出(SQLインジェクション、XSS、認証バイパス)
- パフォーマンスのアンチパターン検出(N+1クエリ、不要な再計算)
- コーディング規約の準拠チェック(命名規則、フォーマット、型安全性)
- テストカバレッジの確認(変更に対するテストの有無)
- 依存関係の問題検出(未使用のimport、循環参照)
人間が担当すべき領域
- ビジネスロジックの正当性:仕様通りの動作をするか
- 設計判断:このアーキテクチャで将来の拡張に耐えられるか
- ユーザー体験:エラーメッセージは適切か、UIの挙動は直感的か
- チーム文脈:なぜこの実装方法を選んだのか(技術的負債の背景等)
トラブルシューティング
--severity critical で重大な問題だけに絞るか、--max-comments 10 で指摘数の上限を設定してください。最初はcriticalのみで運用し、チームが慣れてきたらwarningに拡げるのがおすすめです。ignore セクションを追加して、特定のパターンやファイルを除外できます。また、PRのコメントで /antigravity ignore と返信すると、そのコメントの指摘を以後無視するように学習します。antigravity review --format json で結果をJSON出力し、各CI/CDツールのコメント投稿APIと組み合わせて使用してください。まとめ
Google Antigravityのコードレビュー機能を活用することで、レビューの速度と品質を同時に向上させることができます。
今回解説したポイントをおさらいします:
antigravity reviewでステージング差分・PR・ファイル単位のAIレビューが可能- セキュリティ・パフォーマンス・設計・テストの4観点を一括チェック
review-rules.yamlでプロジェクト固有のルールをカスタマイズ- GitHub Actionsと連携してPR作成時に自動実行できる
- AIは機械的なチェック、人間は文脈を踏まえた判断という役割分担が重要
SES現場では特に、参画初期のセルフレビューやレビュー基準の標準化に効果的です。まずは antigravity review を自分のPRに実行するところから始めてみてください。
コードレビューの前段階であるCI/CDパイプラインの自動化については、Google AntigravityとGitHub Actionsで実現する最強のCI/CDパイプラインもあわせてご覧ください。プロンプトの書き方を工夫してレビュー精度を上げたい方は、Google Antigravity プロンプトエンジニアリング完全ガイドも参考になります。