💸

完全無料で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です。

https://github.com/qodo-ai/pr-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リポジトリで以下の手順を行います。

  1. リポジトリの Settings → Secrets and variables → Actions → Secrets に進む
  2. New repository secret をクリック
  3. 以下のキーを登録:
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)

Instiny Tech Blog

Discussion