AI Hub

Claude CodeをGitHub Actionsで動かす方法|CI/CD自動化

公開:

#GitHub Actions #自動化

Claude CodeはローカルのCLIだけでなく、GitHub Actionsに組み込むことでPRレビューやIssueへの実装対応をCI上で自動化できます。この記事では公式のclaude-code-actionを使ったセットアップ手順から、ワークフローYAMLの実例、料金・セキュリティ上の注意点までを解説します。

前提・動作環境

Claude Code GitHub Actionsを使うには、以下が必要です。

Claude Code GitHub Actionsはanthropics/claude-code-actionというGitHub Actionとして提供されており、PRやIssueのコメントで@claudeとメンションするだけでコード分析・実装・PR作成までを自動で行ってくれます。

セットアップ手順

セットアップには「クイックセットアップ」と「手動セットアップ」の2通りがあります。

クイックセットアップ(/install-github-appコマンド)

Claude Codeのターミナルで以下のコマンドを実行すると、対話形式でセットアップが進みます。

/install-github-app

このコマンドは、GitHub Appのインストールとワークフロー・APIキーシークレットの追加までをまとめて案内してくれます。そのまま進めれば、ワークフローファイルとシークレットが自動で設定されます。

この方法はリポジトリのadmin権限を持つユーザーでなければ実行できません。

手動セットアップ

/install-github-appが使えない場合や、より細かく制御したい場合は以下の手順で行います。

  1. https://github.com/apps/claude からClaude GitHub Appをリポジトリにインストールする(Contents・Issues・Pull requestsへの読み書き権限が付与されます)
  2. リポジトリの Settings → Secrets and variables → ActionsANTHROPIC_API_KEY という名前のシークレットを追加する
  3. examples/claude.yml を参考に、.github/workflows/ 配下にワークフローファイルを配置する

完了したら、IssueやPRのコメントで@claudeとメンションして動作確認しましょう。

ワークフローYAMLの実例

もっとも基本的な構成は、IssueやPRコメントへの@claudeメンションに反応するワークフローです。

name: Claude Code
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  claude:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          # コメント中の @claude メンションに応答する

PRが作成・更新されるたびに自動レビューを走らせたい場合は、トリガーをpull_requestイベントにし、promptで「このPRの差分をレビューしてください」のように指示を明示すれば実現できます。

claude_argsにはClaude CodeのCLIオプションをそのまま渡せます。--max-turnsで会話ターン数の上限を、--modelで使用モデルを指定できるため、暴走を防ぎたい場合は必ず--max-turnsを設定しておくとよいでしょう。

使い方の実例

PRコメントで修正を依頼する

PRのコメント欄に以下のように書き込むと、Claudeがコードを分析して対応します。

@claude ユーザーダッシュボードコンポーネントのTypeErrorを修正してください

Claudeはコメントの文脈とリポジトリのコードを読み取り、修正内容をコミットまたは提案として反映します。ブランチ作成やコミットもClaude Codeが自動で行うため、Claude CodeでのGit操作自動化もあわせて確認しておくと理解が深まります。

Issueから実装を依頼する

Issueの説明文や本文中に@claudeを含めておくと、Issueをトリガーに実装を開始させることもできます。

@claude issueの説明に基づいてこの機能を実装してください

ClaudeはCLAUDE.mdに書かれたコーディング規約を踏まえて実装を進めるため、リポジトリルートにCLAUDE.mdを用意しておくと出力の質が安定します。Claude Codeの基本的な操作についてはClaude Codeの使い方完全ガイドでも解説しています。

料金・実行環境の注意

Claude Code GitHub Actionsには2種類のコストが発生します。

料金は変動する可能性があるため、最新の金額は必ずAnthropicとGitHubの公式サイトで確認してください。コストを抑えるには、--max-turnsで会話ターン数の上限を設ける、ワークフローにタイムアウトを設定する、GitHubの同時実行制御(concurrency)で並列実行を制限する、といった方法が有効です。

つまずきポイント/よくあるエラー

よくある質問

無料で使えますか

GitHub Actionsの実行自体は無料枠がありますが、Claude APIの利用にはトークン従量課金が発生します。料金体系は変更される可能性があるため、公式サイトで最新情報を確認してください。

@claude以外のトリガーフレーズに変更できますか

可能です。trigger_phraseパラメータでカスタムのトリガーフレーズを指定できます。

実行のたびにコンテキストは読み直されますか

はい。各実行はGitHub Actionsの新しいジョブとして起動するため、Claudeはリポジトリをチェックアウトし直し、都度コンテキストを読み込んで応答します。

まとめ

Claude Code GitHub Actionsを使えば、@claudeメンション一つでPRレビューやIssueからの実装をCI上で自動化できます。セットアップは/install-github-appコマンドか手動設定で完結し、ワークフローYAMLにanthropic_api_keyと必要なclaude_argsを指定するだけで運用を始められます。GitHub Actionsの実行時間とClaude APIのトークン課金という2種類のコストが発生する点、そしてシークレットの取り扱いには十分注意しましょう。より基本的な使い方はClaude Codeの使い方完全ガイド、Git操作の自動化はClaude CodeでのGit操作自動化、APIキーの発行や従量課金の詳細はClaude CodeをAPIキーで従量課金利用する方法もあわせてご覧ください。