Claude Code GitHub ActionsはAI駆動の自動化をGitHubワークフローにもたらします。任意のPRやissueで簡単に@claudeとメンションするだけで、Claudeがコードを分析し、プルリクエストを作成し、機能を実装し、バグを修正します - すべてプロジェクトの標準に従いながら。

Claude Code GitHub Actionsは現在ベータ版です。エクスペリエンスを改善する過程で、機能や動作が変更される可能性があります。

Claude Code GitHub ActionsはClaude Code SDKの上に構築されており、Claude Codeをアプリケーションにプログラム的に統合することを可能にします。SDKを使用して、GitHub Actions以外のカスタム自動化ワークフローを構築できます。

Claude Code GitHub Actionsを使用する理由

  • 即座のPR作成: 必要なものを説明すると、Claudeが必要なすべての変更を含む完全なPRを作成します
  • 自動化されたコード実装: 単一のコマンドでissueを動作するコードに変換します
  • 標準に従う: ClaudeはCLAUDE.mdガイドラインと既存のコードパターンを尊重します
  • 簡単なセットアップ: インストーラーとAPIキーで数分で開始できます
  • デフォルトで安全: コードはGithubのランナー上に留まります

Claudeができること

Claude CodeはコードとのやりとりのやりかたをTransformする強力なGitHub Actionsを提供します:

Claude Code Action

このGitHub ActionはGitHub Actionsワークフロー内でClaude Codeを実行することを可能にします。これを使用してClaude Codeの上にカスタムワークフローを構築できます。

リポジトリを表示 →

Claude Code Action (Base)

ClaudeでカスタムGitHubワークフローを構築するための基盤。この拡張可能なフレームワークは、カスタマイズされた自動化を作成するためのClaudeの機能への完全なアクセスを提供します。

リポジトリを表示 →

セットアップ

クイックセットアップ

このアクションをセットアップする最も簡単な方法は、ターミナルでClaude Codeを使用することです。claudeを開いて/install-github-appを実行するだけです。

このコマンドはGitHubアプリと必要なシークレットのセットアップをガイドします。

  • GitHubアプリをインストールしてシークレットを追加するには、リポジトリ管理者である必要があります
  • このクイックスタート方法は、直接のAnthropic APIユーザーのみが利用できます。AWS BedrockやGoogle Vertex AIを使用している場合は、AWS Bedrock & Google Vertex AIでの使用セクションをご覧ください。

手動セットアップ

/install-github-appコマンドが失敗した場合や手動セットアップを希望する場合は、以下の手動セットアップ手順に従ってください:

  1. Claude GitHubアプリをインストールしてリポジトリに追加: https://github.com/apps/claude
  2. ANTHROPIC_API_KEYをリポジトリシークレットに追加 (GitHub Actionsでシークレットを使用する方法を学ぶ)
  3. ワークフローファイルをコピー examples/claude.ymlからリポジトリの.github/workflows/

クイックスタートまたは手動セットアップのいずれかを完了した後、issueやPRコメントで@claudeをタグ付けしてアクションをテストしてください!

使用例

Claude Code GitHub Actionsは様々なタスクでお手伝いできます。完全な動作例については、examplesディレクトリをご覧ください。

issueをPRに変換

issueコメントで:

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

Claudeがissueを分析し、コードを書き、レビュー用のPRを作成します。

実装のヘルプを得る

PRコメントで:

@claude このエンドポイントのユーザー認証をどのように実装すべきですか?

Claudeがコードを分析し、具体的な実装ガイダンスを提供します。

バグを素早く修正

issueで:

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

Claudeがバグを特定し、修正を実装し、PRを作成します。

ベストプラクティス

CLAUDE.md設定

リポジトリルートにCLAUDE.mdファイルを作成して、コードスタイルガイドライン、レビュー基準、プロジェクト固有のルール、推奨パターンを定義します。このファイルはClaudeのプロジェクト標準の理解をガイドします。

セキュリティ考慮事項

APIキーを直接リポジトリにコミットしないでください!

APIキーには常にGitHub Secretsを使用してください:

  • APIキーをANTHROPIC_API_KEYという名前のリポジトリシークレットとして追加
  • ワークフローで参照: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
  • アクションの権限を必要最小限に制限
  • マージ前にClaudeの提案をレビュー

ワークフローファイルに直接APIキーをハードコーディングするのではなく、常にGitHub Secrets(例:${{ secrets.ANTHROPIC_API_KEY }})を使用してください。

パフォーマンスの最適化

コンテキストを提供するためにissueテンプレートを使用し、CLAUDE.mdを簡潔で焦点を絞ったものに保ち、ワークフローに適切なタイムアウトを設定します。

CIコスト

Claude Code GitHub Actionsを使用する際は、関連するコストに注意してください:

GitHub Actionsコスト:

  • Claude CodeはGitHubホストランナーで実行され、GitHub Actionsの分数を消費します
  • 詳細な価格設定と分数制限については、GitHubの課金ドキュメントをご覧ください

APIコスト:

  • 各Claudeのやりとりは、プロンプトとレスポンスの長さに基づいてAPIトークンを消費します
  • トークン使用量はタスクの複雑さとコードベースのサイズによって異なります
  • 現在のトークンレートについては、Claudeの価格ページをご覧ください

コスト最適化のヒント:

  • 不要なAPI呼び出しを減らすために具体的な@claudeコマンドを使用
  • 過度な反復を防ぐために適切なmax_turns制限を設定
  • 暴走ワークフローを避けるために合理的なtimeout_minutesを設定
  • 並列実行を制限するためにGitHubの同時実行制御の使用を検討

設定例

以下を含む異なる使用例のためのすぐに使用できるワークフロー設定については:

  • issueとPRコメントのための基本的なワークフローセットアップ
  • プルリクエストでの自動化されたコードレビュー
  • 特定のニーズのためのカスタム実装

Claude Code Actionリポジトリのexamplesディレクトリをご覧ください。

examplesリポジトリには、.github/workflows/ディレクトリに直接コピーできる完全でテスト済みのワークフローが含まれています。

AWS Bedrock & Google Vertex AIでの使用

エンタープライズ環境では、独自のクラウドインフラストラクチャでClaude Code GitHub Actionsを使用できます。このアプローチにより、同じ機能を維持しながら、データ居住性と課金を制御できます。

前提条件

クラウドプロバイダーでClaude Code GitHub Actionsをセットアップする前に、以下が必要です:

Google Cloud Vertex AIの場合:

  1. Vertex AIが有効になっているGoogle Cloudプロジェクト
  2. GitHub Actions用に設定されたWorkload Identity Federation
  3. 必要な権限を持つサービスアカウント
  4. GitHubアプリ(推奨)またはデフォルトのGITHUB_TOKENを使用

AWS Bedrockの場合:

  1. Amazon Bedrockが有効になっているAWSアカウント
  2. AWSで設定されたGitHub OIDCアイデンティティプロバイダー
  3. Bedrock権限を持つIAMロール
  4. GitHubアプリ(推奨)またはデフォルトのGITHUB_TOKENを使用
1

カスタムGitHubアプリを作成(3Pプロバイダーに推奨)

Vertex AIやBedrockなどの3Pプロバイダーを使用する際の最適な制御とセキュリティのために、独自のGitHubアプリを作成することをお勧めします:

  1. https://github.com/settings/apps/new にアクセス
  2. 基本情報を入力:
    • GitHub App name: 一意の名前を選択(例:「YourOrg Claude Assistant」)
    • Homepage URL: 組織のウェブサイトまたはリポジトリURL
  3. アプリ設定を構成:
    • Webhooks: 「Active」のチェックを外す(この統合には不要)
  4. 必要な権限を設定:
    • Repository permissions:
      • Contents: Read & Write
      • Issues: Read & Write
      • Pull requests: Read & Write
  5. 「Create GitHub App」をクリック
  6. 作成後、「Generate a private key」をクリックしてダウンロードした.pemファイルを保存
  7. アプリ設定ページからApp IDをメモ
  8. アプリをリポジトリにインストール:
    • アプリの設定ページから、左サイドバーの「Install App」をクリック
    • アカウントまたは組織を選択
    • 「Only select repositories」を選択し、特定のリポジトリを選択
    • 「Install」をクリック
  9. 秘密鍵をリポジトリのシークレットとして追加:
    • リポジトリのSettings → Secrets and variables → Actionsに移動
    • .pemファイルの内容でAPP_PRIVATE_KEYという名前の新しいシークレットを作成
  10. App IDをシークレットとして追加:
  • GitHubアプリのIDでAPP_IDという名前の新しいシークレットを作成

このアプリはactions/create-github-app-tokenアクションと一緒に使用して、ワークフローで認証トークンを生成します。

Anthropic APIの代替または独自のGithubアプリをセットアップしたくない場合: 公式のAnthropicアプリを使用:

  1. https://github.com/apps/claude からインストール
  2. 認証のための追加設定は不要
2

クラウドプロバイダー認証を設定

クラウドプロバイダーを選択し、安全な認証をセットアップ:

3

必要なシークレットを追加

リポジトリに以下のシークレットを追加(Settings → Secrets and variables → Actions):

Anthropic API(直接)の場合:

  1. API認証用:

  2. GitHubアプリ用(独自のアプリを使用する場合):

    • APP_ID: GitHubアプリのID
    • APP_PRIVATE_KEY: 秘密鍵(.pem)の内容

Google Cloud Vertex AIの場合

  1. GCP認証用:

    • GCP_WORKLOAD_IDENTITY_PROVIDER
    • GCP_SERVICE_ACCOUNT
  2. GitHubアプリ用(独自のアプリを使用する場合):

    • APP_ID: GitHubアプリのID
    • APP_PRIVATE_KEY: 秘密鍵(.pem)の内容

AWS Bedrockの場合

  1. AWS認証用:

    • AWS_ROLE_TO_ASSUME
  2. GitHubアプリ用(独自のアプリを使用する場合):

    • APP_ID: GitHubアプリのID
    • APP_PRIVATE_KEY: 秘密鍵(.pem)の内容
4

ワークフローファイルを作成

クラウドプロバイダーと統合するGitHub Actionsワークフローファイルを作成します。以下の例は、AWS BedrockとGoogle Vertex AIの両方の完全な設定を示しています:

トラブルシューティング

Claudeが@claudeコマンドに応答しない

GitHubアプリが正しくインストールされていることを確認し、ワークフローが有効になっていることをチェックし、APIキーがリポジトリシークレットに設定されていることを確認し、コメントに@claudeが含まれていることを確認してください(/claudeではありません)。

ClaudeのコミットでCIが実行されない

GitHubアプリまたはカスタムアプリを使用していることを確認し(Actionsユーザーではない)、ワークフロートリガーに必要なイベントが含まれていることをチェックし、アプリ権限にCIトリガーが含まれていることを確認してください。

認証エラー

APIキーが有効で十分な権限を持っていることを確認してください。Bedrock/Vertexの場合、資格情報設定をチェックし、ワークフローでシークレットが正しく命名されていることを確認してください。

高度な設定

アクションパラメータ

Claude Code Actionは以下の主要なパラメータをサポートします:

パラメータ説明必須
promptClaudeに送信するプロンプトはい*
prompt_fileプロンプトを含むファイルのパスはい*
anthropic_api_keyAnthropic APIキーはい**
max_turns最大会話ターン数いいえ
timeout_minutes実行タイムアウトいいえ

*promptまたはprompt_fileのいずれかが必要
**直接Anthropic APIには必要、Bedrock/Vertexには不要

代替統合方法

/install-github-appコマンドが推奨アプローチですが、以下も可能です:

  • カスタムGitHubアプリ: ブランド化されたユーザー名やカスタム認証フローが必要な組織向け。必要な権限(contents、issues、pull requests)を持つ独自のGitHubアプリを作成し、actions/create-github-app-tokenアクションを使用してワークフローでトークンを生成します。
  • 手動GitHub Actions: 最大限の柔軟性のための直接ワークフロー設定
  • MCP設定: Model Context Protocolサーバーの動的読み込み

詳細なドキュメントについては、Claude Code Actionリポジトリをご覧ください。

Claudeの動作をカスタマイズ

Claudeの動作を2つの方法で設定できます:

  1. CLAUDE.md: リポジトリのルートにあるCLAUDE.mdファイルでコーディング標準、レビュー基準、プロジェクト固有のルールを定義します。ClaudeはPRを作成しリクエストに応答する際にこれらのガイドラインに従います。詳細については、メモリドキュメントをご覧ください。
  2. カスタムプロンプト: ワークフローファイルのpromptパラメータを使用してワークフロー固有の指示を提供します。これにより、異なるワークフローやタスクに対してClaudeの動作をカスタマイズできます。

ClaudeはPRを作成しリクエストに応答する際にこれらのガイドラインに従います。