このブログのレポジトリにpr-agent入れてみました

Blog Image

動機

  • このブログのレポジトリのレビュワーがおらず(私が趣味でやってるので当然ですが)、コードベース治安の悪化が懸念されるため
  • 仕事ではないためPRの説明を書くのをサボりがちなので、自動で生成させたい

導入方法

OpenAIにログインしてAPIキーを作成します。
追加したキーをOPENAI_KEYとして、レポジトリーのシークレットに追加します。

.github/workflows/pr_agent.yaml

を追加して、公式のyamlを貼り付けます

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: Codium-ai/pr-agent@main
        env:
          OPENAI_KEY: ${{ secrets.OPENAI_KEY }}
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

以上の設定をした段階で、デフォルトブランチにマージされてからPRがopen, reopen, ready_for_reviewのどれかになると、PR Agentが自動でレビューを行います。

デフォルト設定で何をやってくれるか

PR#77にて、デフォルト設定で何が起きたかを確認しました。

  • PRの説明の自動生成
Blog Image
  • レビューの負荷見込み(1-5), 関連テスト, セキュリティ上の懸念, 注視すべき箇所
Blog Image

の2つをやってくれるようでした

その他

設定を与えることも可能で、言語やモデルを変えたり、ファインチューニングも出来るようです。