5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHub ActionsからClaude Codeを召喚した話

Posted at

※ 本記事は個人としての知見・体験をまとめたものであり、所属企業の公式見解ではありません。
また、社外公開可能な範囲で記載しています。

TL;DR

  • 重めのプルリクでレビュー停滞したが、GitHub Actions経由でClaude Codeを呼び、当日中にTODO洗い出しと要点整理が完了した。
  • anthropics/claude-code-actionを使う設定をして、プルリクやIssueで @claude メンションして使える。
  • GitHub App導入、Secretsの環境単位登録、timeout-minutes: 20--max-turns 15などガードレールを設定することで安心して回せた。

背景とトライアルの文脈

  • 2025年10月に部署のLTで登壇し、この記事はそのスライドをQiita向けに書き起こしたもの。
  • 社内ではClaude Codeトライアルが走っており、「どうせならビッグウェーブに乗ろう」とアサインプロジェクトのプルリクレビューのボトルネック解消に挑戦した。

レビュー渋滞との戦い

需要予測プロジェクトの推論フローを刷新した結果、レビュー負荷が重めのプルリクが生まれました。
レビュー担当者が「どこから見るべきか」で止まってしまう状態がおきていました。
そこでGitHub ActionsからClaude Codeを召喚し、プルリク全体の要約とTODO洗い出しを自動コメントで受け取り、人間側は意思決定だけに集中する作戦へ切り替えました。

Claude Code召喚の流れ

まず前提として、今回はうまくいったケースですが、
PRの内容によってはAIの指摘が的外れになることもあります。万能ではありません。

  1. プルリクもしくはIssueに@claudeと書き、依頼内容を短く伝える。
  2. GitHub Actionsがanthropics/claude-code-actionをトリガーし、対象プルリクをチェックアウトして解析する。
  3. Claude Codeが差分を読み込み、要約・TODO・気になるコード断片などをコメントで返す。
  4. 人間がコメントを基に修正やマージ方針を決め、必要があれば追加で召喚する。

GitHub Actionsセットアップと注意点

  • GitHub App「Claude Code」を対象リポジトリにインストールし、ActionsのGeneral設定でWorkflow権限を"Read and write"へ引き上げる。
  • ANTHROPIC_API_KEYをEnvironment単位で登録し、メンバーごとに専用キーを使うことで流出範囲を最小化する。
  • APIキーの有効期限に合わせてローテーションのリマインダーを登録。
  • timeout-minutes: 20--max-turns 15を設定し、暴走や過剰課金を防ぎつつ、--verboseで詳細なログを残す。
  • 予め設定しておけるプロンプトで「日本語で話してください」と指定できる。

設定の例

name: Claude PR Action (Anthropic Gateway)

on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
  issues:
    types: [opened, assigned]

jobs:
  claude:
    runs-on: ubuntu-latest
    # 異常な長時間実行を防止し、無駄な実行時間と課金を削減
    timeout-minutes: 20

    permissions:
      contents: read
      issues: write
      pull-requests: write
      id-token: write

    # Environment をユーザーごとに分けておく
    environment: claude-${{ github.actor }}

    # 必要に応じて、ご自身の環境に合わせて設定してください
    # env:
    #   ANTHROPIC_BASE_URL: <<https://example.com>>

    steps:
      - uses: anthropics/claude-code-action@8a1c4371755898f67cd97006ba7c97702d5fc4bf # v1.0.16
        with:
          # 個人トークンを Environment Secret から取得
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: |
            日本語で話してください。
            レビュー対象を穏やかに指摘し、TODOをMarkdownリスト化してください。
          claude_args: |
            --model claude-sonnet
            --max-turns 15
            --verbose

なお、あくまで参考例であり、ご自身の組織のセキュリティ・権限管理ポリシーに合わせて調整してください :pray:

運用Tips

  • Claudeの提案は採用前に必ず根拠を確認し、コードや仕様に照らして妥当性を判断する。
  • @claude 要約してと1タスクずつ依頼した方がログが追いやすく、同じ会話スレッドで複数指示を混在させない方が混乱しにくい。
  • Issueに要件や仕様を書いておき、Claude Codeにプルリク生成までお願いすると要望の抜け漏れチェックにも使える。
    • 今回はコメントを受けて手動で修正したが、指示すればClaude Codeが新しいプルリク作成のリンクを返してくれる。
  • まだ試せてないですが、MCPにも対応しているっぽいです。

まとめ

  • レビュー渋滞を感じたら、まずClaude Codeを召喚して論点整理役を任せると、レビューがしやすくなる。
  • GitHub Actionsの設定さえ整えば、@claudeという呪文だけで召喚でき、プロンプト次第でコメントの文体を調整してチームの雰囲気に合わせることもできる。
  • 最終判断とマージ責任は必ず人間が持ち、AIコメントをチーム全員の共通土台として活用することで安心して速度を上げられる。

Special Thanks

  • 協力いただいたメンバーのみなさん
  • 社内Claude Codeトライアルに関わるみなさん

参考リンク

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?