完全無料でGitHubプライベートリポジトリにPR Agentを導入する方法
はじめに
今回は、AIがPRの説明文を自動生成したり、レビュー、修正提案を自動でやってくれるPR Agent を、完全無料でGithub プライベートリポジトリに導入する方法を紹介します。
結論から言うと、OpenAI APIではなくGemini APIを使うように設定することでプライベートリポジトリでも請求情報登録なし&完全無料でPR-Agent導入を実現できます。
弊社では通常、Gemini Advanced(Pro)を業務利用していますが、API経由の利用には別途課金が発生するケースもあります。そのため、
- Gemini 2.5 Pro による高精度なAPIが不要なケース
- Rate Limit(API呼び出し制限)が大きな問題にならない用途
では、無料TierのGoogleアカウント/プロジェクトをあえて分けて使い、運用コストをゼロに抑える工夫をしています。今回紹介する事例でもGoogle AI StudioのFree Tierを活用します。
PR Agent とは
PR Agent は、PRの説明文を自動生成したり/describe
, /review
, /improve
といったコメントコマンドに反応してタスクを行ってくるAI agentです。
準備するもの
以下があれば検証ができます。
- GitHubのプライベートリポジトリとサンプルソースコード
- Google AI Studio アカウント(無料Tier)
なぜGeminiを選択したか?
OpenAI APIやAnthropic APIと比較して、Gemini APIは現状、Free tierの範囲内であれば、請求情報登録不要かつクレジット制ではないのでクレジットを気にせず利用できる寛大な無料利用枠を提供しています。利用制限(Rate Limit)はありますが、PR-Agentで活用する上では特に問題ではないと思います。
設定手順
Google Gemini APIキーの取得
Google AI Studio にアクセスし「APIキーを作成」を行います。表示されたAPIキーをコピーしておきます(後で使います)
下記、スクショの通り請求が紐づいていないFree tierのGoogle CloudプロジェクトにてAPI Keyを発行してAPIを利用できます。
GitHub Secretsの登録
対象のGitHubリポジトリで以下の手順を行います。
- リポジトリの Settings → Secrets and variables → Actions → Secrets に進む
- New repository secret をクリック
- 以下のキーを登録:
Name | Secret |
---|---|
GEMINI_API_KEY | Google AI Studioで取得したAPIキー |
PR AgentのGitHub Action設定
公式が提供する事前にビルドされたGithub Action Dockerイメージを使用して、PR-AgentをGithub Actionとして実行することができます。
以下のYAMLファイルを .github/workflows/pr-agent.yml に作成します。
on:
pull_request:
types: [opened, reopened, ready_for_review]
issue_comment:
jobs:
pr_agent_job:
if: ${{ github.event.sender.type != 'Bot' }}
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
contents: write
name: Run pr agent on every pull request, respond to user comments
steps:
- name: PR Agent action step
id: pragent
uses: qodo-ai/pr-agent@main
env:
CONFIG.MODEL: "gemini/gemini-2.5-flash-preview-05-20"
GOOGLE_AI_STUDIO.GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CONFIG.CUSTOM_MODEL_MAX_TOKENS: 64000
-
permissions
ブロックでは、このアクションがリポジトリに対して何を行うかを許可します。issues: writeはコメント投稿、pull-requests: writeはインラインレビュー、contents: writeは/improveによるコードの直接修正などに必要です。 -
CONFIG.MODEL
の設定で defaultのGPT o4-mini
からgemini-2.5-flash-preview
を利用するように変更できます。無料Tierで利用可能なモデルをお好みで設定すると良いかと思います。 -
GOOGLE_AI_STUDIO.GEMINI_API_KEY
で先ほど登録したシークレットを参照 -
GITHUB_TOKEN
は、ワークフロー実行時にGitHub Actionsが(勝手に)生成・提供してくれる特別なシークレットです
※ gemini-2.5-flash-preview-05-20
は現時点で利用可能な最新のプレビュー版モデルです。より安定した動作を求める場合は、公式にリリースされているモデル gemini/gemini-1.5-flash
またはgemini/gemini-2.0-flash
を使用することをお勧めします。
PR-Agentの検証
上記変更のPR作成すると、GitHub Actiosのワークフローが起動されるかと思います。
まず、PRの本文が自動生成されるのを確認します。
例えばコメント欄に "/help hi"と記載すると、以下のように応答してくれます。
引き続き describe
, review
, improve
など開発フローで実用的なコマンドを実行できます。
まとめ
- PR AgentはGitHubなどでの開発効率を向上してくれるAIエージェント
- デフォルトのOpenAIを使わず、Geminiを使うことで完全無料&支払い情報登録不要で使える
- プライベートリポジトリでも .github/workflowsに設定ファイルを追加するだけで簡単に導入できる
以上です。
参考資料
Run as a GitHub Action - Qodo Merge (and open-source PR-Agent)
Changing a Model - Qodo Merge (and open-source PR-Agent)
Discussion