AIエージェント入門

Claude Code×GitHub Actions|CI/CD自動化の全手順

Claude Code×GitHub Actions|CI/CD自動化の全手順

この記事の結論

Claude CodeをGitHub Actionsに組み込み、PRレビュー自動化・テスト生成・Issue対応を実現する方法を解説。公式action v1の設定からCLAUDE.md活用まで、コピペ可能なYAMLを全公開します。

2026年4月、AnthropicはClaude Code GitHub Actions v1.0の正式リリースを発表した。ベータ版から大きく設計が刷新され、PRレビュー自動化・テスト生成・Issue対応の全てを単一のYAMLで構成できるようになっている。

これは単なる「便利ツール」ではない。CI/CDパイプラインにAIを組み込むという、開発ワークフローの根本的な変化だ。

何が変わったのか — v1.0の核心

ベータ版との最大の違いは、設定の大幅な簡素化と「自動モード検出」の導入です。

項目 ベータ版 v1.0(GA)
モード設定 mode: "tag"mode: "agent" を手動指定 自動検出(設定不要)
プロンプト引数 direct_prompt: prompt:
CLIオプション 個別フィールドで設定 claude_args: に統合
デフォルトモデル Sonnet Sonnet(Opus 4.6も利用可)

「自動モード検出」とは、prompt: パラメータが指定されていれば自動実行モード、なければ @claude メンションへの応答モードで動くということです。1つのActionで両方のユースケースをカバーします。

セットアップ:5分で動かす最速手順

最も速いセットアップはClaude Code CLIから実行する方法です。


# Claude Code CLIでセットアップコマンドを実行
# 前提: Anthropic APIキー取得済み、リポジトリのadmin権限あり
/install-github-app

これだけでGitHub Appのインストールとシークレットの設定がウィザード形式で完了します。手動でセットアップしたい場合は以下の手順です。


# 手動セットアップ手順:
# 1. https://github.com/apps/claude からGitHub Appをインストール
# 2. リポジトリのSettings → Secrets → Actions に ANTHROPIC_API_KEY を追加
# 3. 以下のワークフローファイルを .github/workflows/claude.yml に配置

動作環境: GitHub Actions、Anthropic APIキー(ANTHROPIC_API_KEY)

PRレビュー自動化:コピペで使えるYAML

PRが作成・更新されるたびにClaudeが自動でレビューコメントを投稿します。


# .github/workflows/claude-pr-review.yml
# 動作確認日: 2026-04-09

name: Claude PR Review

on:
  pull_request:
    types: [opened, synchronize]

permissions:
  contents: read
  pull-requests: write

jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: |
            このPull Requestをレビューしてください。
            以下の観点で問題点と改善案をコメントしてください:
            1. バグの可能性がある箇所
            2. セキュリティ上の懸念
            3. パフォーマンスの問題
            4. コードスタイルの違反(CLAUDE.mdの基準に従う)
            レビューコメントは日本語で、建設的なトーンで投稿してください。
          claude_args: "--max-turns 5"

ポイント:

  • CLAUDE.md を置いておくとClaude がプロジェクト固有の規約を理解してくれる
  • --max-turns 5 でAPIコストを制御。複雑なPRには10〜15程度に増やす
  • permissions: pull-requests: write がないとコメント投稿に失敗する

@claude メンションで対話:インタラクティブモード

PRやIssueのコメントで @claude と書くだけでClaudeが応答します。


# .github/workflows/claude-interactive.yml
# 動作確認日: 2026-04-09

name: Claude Interactive

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

permissions:
  contents: write
  pull-requests: write
  issues: write

jobs:
  claude:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          # prompt: を指定しない → @claude メンション応答モードになる

IssueやPRで使えるコマンド例:


# Issue内で
@claude このIssueの内容を実装したPRを作ってください

# PRコメントで
@claude このTypeErrorを修正してください
@claude テストを追加してください
@claude このコードのパフォーマンス改善案を教えてください

# 注意: 本番環境で使用する前に、必ずテスト環境でClaude の挙動を確認してください。

テスト自動生成:新機能のテストをClaude が書く

PR内の新しいコードに対してテストを自動生成するワークフローです。


# .github/workflows/claude-test-gen.yml
# 動作確認日: 2026-04-09

name: Claude Test Generation

on:
  pull_request:
    types: [opened]

permissions:
  contents: write
  pull-requests: write

jobs:
  generate-tests:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: |
            このPRで追加・変更されたコードに対して、
            対応するユニットテストを作成してください。
            テストは既存のテストファイルと同じスタイルで書き、
            変更されたファイルと同じディレクトリの test_ プレフィックスファイルに追加してください。
            エッジケースとエラーケースも必ずカバーしてください。
          claude_args: "--max-turns 10"

CLAUDE.md でClaude をプロジェクトに慣らす

リポジトリのルートに CLAUDE.md を置くことで、Claude がプロジェクト固有のルールを理解します。


# CLAUDE.md(例)

## コーディング規約
- Python 3.11+, 型アノテーション必須
- 関数は50行以内、ファイルは800行以内
- テストカバレッジ80%以上

## レビュー基準
- SQLインジェクション・XSSの確認は必須
- APIキーのハードコードは即時NG指摘
- Docstringは全パブリック関数に必須

## 使用フレームワーク
- APIフレームワーク: FastAPI
- テスト: pytest + pytest-asyncio
- 型チェック: mypy strict mode

【要注意】よくある失敗パターンと回避策

失敗1: Claudeのコミットに対してCIが動かない

GITHUB_TOKEN を使ってClaudeにコミットさせる
⭕ GitHub Appを使う(Claudeのコミットに対してCIがトリガーされる)

なぜ重要か: GITHUB_TOKEN を使ったコミットはCIの再帰実行を防ぐためデフォルトでCIがトリガーされません。公式GitHub Appを使うとClaude のコミットでもCIが動きます。

失敗2: max-turnsを設定せずAPIコストが爆発

claude_args なしで複雑なタスクを与える
--max-turns 5--max-turns 15 を明示する

なぜ重要か: 複雑なIssueに対応させると30〜50ターン動き続け、1回のAction実行で数ドルかかることがあります。

失敗3: APIキーをワークフローにハードコード

anthropic_api_key: "sk-ant-..." と直書き
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} と必ずSecretを使う

なぜ重要か: パブリックリポジトリにキーをコミットすると数分で悪用されます。

コスト試算(参考)

Claude Sonnet 4.6のAPIコスト(2026年4月時点、最終確認日: 2026-04-09):

用途 目安トークン/回 目安コスト/回 月100回の場合
PRレビュー(小〜中規模) 2,000〜5,000 $0.006〜$0.015 $0.6〜$1.5
テスト生成 5,000〜15,000 $0.015〜$0.045 $1.5〜$4.5
@claude でのコード実装 10,000〜30,000 $0.03〜$0.09 $3〜$9

正直にお伝えすると、コスト管理なしに全PRで自動レビューを走らせると月数十ドルになることもあります。最初は --max-turns 3 から始め、効果を確認しながら徐々に拡大するのが安全です。

参考・出典

まとめ:今日から始める3つのアクション

  1. 今日やること: /install-github-app でセットアップし、インタラクティブモードのワークフローを有効化。まずIssueで @claude explain this issue を試す
  2. 今週中: CLAUDE.md を整備してプロジェクト規約を学習させ、PR自動レビューワークフローを本番リポジトリに適用
  3. 今月中: テスト自動生成ワークフローを追加。コスト管理の仕組み(max-turns設定、concurrency制限)を整備

あわせて読みたい:


佐藤傑(さとう・すぐる)
株式会社Uravation代表取締役。早稲田大学法学部在学中に生成AIの可能性に魅了され、X(旧Twitter)で活用法を発信(@SuguruKun_ai、フォロワー10万人超)。100社以上の企業向けAI研修・導入支援を展開。著書累計3万部突破。
ご質問・ご相談は Uravation お問い合わせフォーム からお気軽にどうぞ。

Need help moving from reading to rollout?

この記事を読んで導入イメージが固まってきた方へ

Uravationでは、AIエージェントの要件整理、PoC設計、社内導入、研修まで一気通貫で支援しています。

この記事をシェア

X Facebook LINE

※ 本記事の情報は2026年4月時点のものです。サービスの料金・仕様は変更される可能性があります。最新情報は各サービスの公式サイトをご確認ください。

関連記事