---
title: "Claude Code GitHub Actionsの導入と料金｜@claude連携の設定・分単価とトークン課金"
url: "https://www.issoh.co.jp/tech/details/7094/"
published: 2025-06-04
updated: 2026-09-22
categories: ["Claude"]
publisher: "株式会社一創"
---

# Claude Code GitHub Actionsの導入と料金｜@claude連携の設定・分単価とトークン課金

Claude Code GitHub Actionsは、IssueやプルリクエストのコメントにClaudeを呼び出して、レビュー・修正・PR作成をワークフローの中で実行させる仕組みです。導入でつまずくのはコマンドではなく、認証の選び方と費用の見積り方です。費用はGitHub Actionsの実行時間とClaudeの利用料に分かれますが、Actionsの無料枠やClaudeの認証方式によって追加課金の有無が変わります。公式ドキュメントとリポジトリのaction.ymlから、2026年9月時点の仕様と単価を整理します。

## まとめ：導入経路と費用の要点

実体はAnthropic公式の`anthropics/claude-code-action@v1`というcomposite actionと、リポジトリに入れるClaude GitHub Appの組み合わせです。旧版の解説にある「本体リポジトリをForkしてCloneする」準備は不要で、Appのインストール、Claudeへの認証設定、ワークフローファイルの配置で利用できます。

- **セットアップは2経路**：Claude Codeのターミナルで`/install-github-app`を実行する方法と、App導入・シークレット追加・ワークフロー配置を手で行う方法。どちらもリポジトリの管理者権限が必要です。
- **モードは自動判定**：`prompt`入力が無ければ@claudeメンション待ち（インタラクティブ）、あれば無条件で実行（オートメーション）。v1で`mode`入力は廃止されました。
- **費用は二重**：GitHub Actionsの実行分（Linux 2コアx64は1分$0.006、ジョブ単位で分に切り上げ、パブリックリポジトリは無料）と、Claudeのトークン課金（Sonnet 5は入力$2／出力$10 per MTok）。サブスクリプションのOAuthトークンで認証すればトークン側はプランの利用枠から消費されます。
- **認証は3択**：APIキー、サブスクリプションのOAuthトークン、そしてOIDCのワークロードID連携。組織で共有するならAPIキーかOIDCで、OAuthトークンは発行者個人のサブスクリプションに紐づくため共有に向きません。

以下、実行モデル、セットアップ、料金の計算、コストを抑える設計、鍵を置かない認証、権限とセキュリティ、v1移行の落とし穴の順に見ていきます。

## Claude Code GitHub Actionsの実行モデル

### GitHub Appとcomposite actionの役割分担

Claude GitHub Appは、ClaudeがリポジトリのファイルやIssue、プルリクエストを読み書きするための入口です。公式ドキュメントはこのうち**Contents（読み書き）・Issues（読み書き）・Pull requests（読み書き）**の3つをアクションが依拠する権限として挙げています。一方の`anthropics/claude-code-action@v1`はcomposite actionです。`@v1`は更新され続ける移動タグで、v1系の最新リリースは2026年9月19日公開の`v1.0.231`です。action.ymlを見ると最初のステップで`oven-sh/setup-bun`によりBun 1.3.14を導入し、その上でClaude Codeを起動します。Bunの取得を避けたい閉じた環境では`path_to_bun_executable`で実行ファイルを指定できます。

### promptの有無による実行モードの切り替え

v1のアクションは、ワークフローの書き方から動作モードを自分で判断します。`prompt`入力を書かなければトリガーフレーズ（既定は`@claude`）を待ち、Issueやプルリクエストのコメント、レビュー、新規Issueの本文・タイトルに反応して、進捗と結果をそのIssueやPRのコメントとして書き込みます。`prompt`を書くとメンションを待たずに実行し、結果は既定でワークフローの実行ログに出ます。PRへコメントさせたい場合は、プロンプトでそう指示し、投稿できるツールを許可する必要があります。

### 起動者の書き込み権限とbot許可条件

どちらのモードでも、アクションはClaudeを動かす前に起動者を2段でチェックし、いずれかで弾かれると実行は失敗します。IssueとPRのイベントでは起動者にリポジトリの書き込み権限が必要で、書き込み権限のない特定ユーザーを許可するには`allowed_non_write_users`の指定と自前の`github_token`の受け渡しが要ります。もう1段はbot判定で、`allowed_bots`に列挙しないbotは拒否されます。これはClaudeがbotのコメントに反応して無限に回ることを防ぐためのもので、スケジュール実行にも適用されます。cronのスケジュール実行は通常、cronを最後に変更したユーザーに帰属しますが、デフォルトブランチの変更でも起動者が変わるため、実際のactorを確認し、それがbotなら`allowed_bots`に加えないと動きません。

## セットアップの2経路と必要な権限

### クイックセットアップの前提と制約

`/install-github-app`はgithub.comのリポジトリでのみ動作します。gitのリモートがgitlab.comやbitbucket.orgの場合は通知を出して終了するため、GitLabのパイプラインで使うなら別系統の手順になります。事前にGitHub CLIを入れて`gh auth login`で認証しておく必要があり、未導入ならClaude Codeが警告します。コマンドはAppのインストール、認証シークレットの登録（APIキーなら`ANTHROPIC_API_KEY`、サブスクリプションのトークンなら`CLAUDE_CODE_OAUTH_TOKEN`）、ワークフローファイルを載せたブランチのpushとプルリクエストの下書きまでを一気に進めます。すでに`claude.yml`があるリポジトリで再実行すると、ワークフローファイルを最新版へ更新する選択肢が出ます。

### 手動セットアップとワークフローのpermissions

Claude Codeをローカルで動かしていない場合や、ワークフローファイルを自分で管理したい場合は手動です。Claude GitHub Appを入れ、シークレットを追加し、リポジトリの`examples/claude.yml`を`.github/workflows/`へコピーします。このファイルはサンプルではなくそのまま動く実装で、[Claude Code GitHub Actions公式ドキュメント](https://code.claude.com/docs/en/github-actions)が示す最小構成は次のとおりです。

```
name: Claude Code
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  claude:
    if: contains(github.event.comment.body, '@claude')
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
      issues: write
      id-token: write
      actions: read
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 1
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
```

定型部分ではない行が3つあります。`id-token: write`はアクションが既定のGitHub App認証を行うために必須です。`actions: read`はPR上のCI結果をClaudeに読ませるためのもの。`if`はコメント本文に@claudeが含まれないときにランナーを起動させないための条件で、後述のコスト管理に直結します。認証をサブスクリプションのトークンに替えるなら、`anthropic_api_key`の行を`claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}`に差し替えます。トークンはローカルで`claude setup-token`を実行して発行し、Pro・Max・Team・Enterpriseの各プランで利用できます。

### 組織へ展開するときの分岐

クイックでも手動でも設定単位はリポジトリ1本です。組織全体へ広げるなら、Appを組織レベルで一度インストールし、認証シークレットを組織レベルのActionsシークレットに置き、ワークフローは各リポジトリに配置するか、ジョブをReusable Workflowとして1か所に定義して各リポジトリから呼びます。このとき共有するシークレットにはOAuthトークンではなくAPIキーを使うのが公式の指針です。OAuthトークンは`claude setup-token`を実行した個人のサブスクリプションに紐づくため、退職や解約でワークフローが一斉に止まります。ワークフロー本体の共通化の作法は[Reusable Workflows（GitHub Actions）とは？workflow\_callでの作成・呼び出しとinputs/secrets/outputsの渡し方](/tech/details/10765/)で整理しています。

## 料金の内訳と1回あたりの見積り

### GitHub Actions側の分課金

本記事の例はGitHubホストランナーを使い、無料枠を超えた実行時間に分課金が発生します。セルフホストランナーも利用でき、その実行時間にGitHub Actionsの分課金はかかりません。GitHubは各ジョブの分数と端数を1分単位に切り上げるので、30秒で終わったジョブも1分として計上されます。標準ランナーの分単価は[GitHubのランナー料金リファレンス](https://docs.github.com/en/billing/reference/actions-minute-multipliers)に掲載されている次の値です。

| ランナー             | 課金SKU                | 1分あたり（USD） |
| ---------------- | -------------------- | ---------- |
| Linux 1コア（x64）   | actions\_linux\_slim | $0.002     |
| Linux 2コア（x64）   | actions\_linux       | $0.006     |
| Linux 2コア（arm64） | actions\_linux\_arm  | $0.005     |
| Windows 2コア（x64） | actions\_windows     | $0.010     |
| macOS 3または4コア    | actions\_macos       | $0.062     |

`runs-on: ubuntu-latest`で動かす標準構成は1分$0.006です。プライベートリポジトリには無料枠があり、GitHub FreeとFree for organizationsが月2,000分、ProとTeamが3,000分、Enterprise Cloudが50,000分。パブリックリポジトリで標準ランナーを使う分は無料です。ただしlarger runnerは無料枠の対象外で常に課金されます。1回4分のジョブなら4分×$0.006＝$0.024、1日20回でも$0.48で、Teamプランの無料枠3,000分に収まる限り追加請求は発生しません。この例では**Actions側は1日$0.48相当**ですが、無料枠は同じ所有者の他のワークフローと共用するため、合計使用量で追加請求を判断します。枠の考え方は[GitHub Actionsの料金｜2026年改定後の分単価・無料枠とコスト削減の判断基準](/tech/details/16698/)で詳しく扱っています。

### Claude側のトークン課金

費用の主役はこちらです。1回の実行で読むコードの量、対話のターン数、出力の長さで変動します。APIキー認証の場合の単価は[Claude APIの料金ページ](https://platform.claude.com/docs/en/about-claude/pricing)に基づき次のとおりです。

| モデル              | 入力        | キャッシュ読み      | 出力         |
| ---------------- | --------- | ------------ | ---------- |
| Claude Opus 5    | $5 / MTok | $0.50 / MTok | $25 / MTok |
| Claude Sonnet 5  | $2 / MTok | $0.20 / MTok | $10 / MTok |
| Claude Haiku 4.5 | $1 / MTok | $0.10 / MTok | $5 / MTok  |

単位は100万トークンです。旧来の解説で見かける「入力1,000トークンあたり$15」のような記述は単位が1,000倍ずれているうえ、その価格帯はOpus 4.1以前の退役モデルのものです。表の3モデルではキャッシュ読み取りが基本入力の0.1倍、書き込みが5分保持で1.25倍・1時間保持で2倍の単価です。書き込み費用は別にかかりますが、CLAUDE.mdや長いシステムプロンプトを毎回読み直す構成でも、プロンプトキャッシュが効けば入力側の負担は1桁下がります。Sonnet 5の$2／$10は導入時に2026年8月31日までの暫定価格として案内されていたものが標準価格になり、9月1日に予定されていた$3／$15への引き上げは行われないとドキュメントに明記されています。

### Claude Code全体の実測費用とCI見積りへの適用範囲

1回あたりのトークン量は事前に読めないため、見積りは公表されている実測値から始めるのが確実です。Anthropicはエンタープライズ導入の平均を**1開発者あたり稼働日$13程度、月$150〜250**とし、90%の利用者が稼働日$30未満に収まるとしています。これはGitHub Actions経由に限らないClaude Code全体の数字で、CI用途の上限や平均を示すものではありません。CIの見積りは実行回数と1回あたりの実測費用から算出します。実務では小さなパイロットで自分たちのベースラインを測り、そこから広げるのが公式の推奨です。GitHub Actionsの分課金がここに上乗せされますが、前項の計算どおり比率としては小さく、**この試算ではトークン費用を優先して確認する**という判断になります。

## コストを抑えるワークフロー設計

効くのは「起動させない」と「1回の上限を決める」の2つです。まず最小構成の`if`条件を外さないこと。これが無いと@claudeを含まないすべてのコメントでランナーが立ち上がります。次に、1回の作業量に上限を置きます。

```
jobs:
  claude:
    if: contains(github.event.comment.body, '@claude')
    runs-on: ubuntu-latest
    timeout-minutes: 15
    concurrency:
      group: ${{ github.workflow }}-claude-${{ github.event.issue.number || github.event.pull_request.number || github.run_id }}
      cancel-in-progress: true
    permissions:
      contents: write
      pull-requests: write
      issues: write
      id-token: write
      actions: read
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 1
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          claude_args: |
            --model claude-sonnet-5
            --max-turns 5
```

`claude_args`はClaude CodeのCLI引数をそのまま受け取ります。`--max-turns`で対話のターン数を、`--model`でモデルを固定できます。**APIキー認証では、モデル未指定時にSonnet 5より単価の高いOpus 5が選ばれる場合があります**。Claude Codeの既定モデルはアカウント種別で決まり、Anthropic APIキーで認証する場合はOpus 5（入力$5／出力$25）です。Sonnet 5の$2／$10に対して単価は2.5倍です。ただし、同じ作業でもモデルによって消費トークン数やターン数が異なるため、請求額が必ず2.5倍になるわけではありません。ProとTeam StandardはSonnet 5、Microsoft FoundryはSonnet 4.5が既定です。CIのレビューや軽い修正は、まずSonnet 5で必要な品質を満たすか確認し、`--model claude-sonnet-5`のようにモデルIDまで固定しておくのが安全です。公式のコスト管理の指針は、@claudeへの依頼を具体的に書いてターン数を減らす、Issueテンプレートで前提を先に渡す、毎回読まれるCLAUDE.mdを短く保つ、`--max-turns`で反復を制限する、ワークフローにタイムアウトを設ける、concurrencyで並列実行を抑える、の6点です。

逆に**やらないほうがよい設定**もはっきりしています。`pull_request`の`synchronize`を無条件のトリガーにすると、レビュー中のpushごとにレビューが走り、1本のPRで何度も課金されます。自動レビューを常設するなら`opened`と`ready_for_review`に絞るか、ラベルで明示的に起動させるほうが読みやすく安価です。定期実行に回す場合、スケジュールはデフォルトブランチからのみ動き、パブリックリポジトリでは60日間リポジトリに活動が無いとGitHubがスケジュールを無効化します。

## APIキーを保存しないOIDC認証の設定

### ワークロードID連携（OIDC）

長期有効なシークレットをリポジトリに置きたくない場合は、ワークフローのGitHub OIDCトークンをClaude Consoleのサービスアカウント経由でAPIアクセスと交換できます。指定する入力は`anthropic_federation_rule_id`（`fdrl_`で始まる連携ルールID）と`anthropic_organization_id`が中心で、`anthropic_service_account_id`（`svac_`）と`anthropic_workspace_id`（`wrkspc_`）は連携ルールが対象を特定できていれば省略できます。

```
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_federation_rule_id: ${{ vars.ANTHROPIC_FEDERATION_RULE_ID }}
          anthropic_organization_id: ${{ vars.ANTHROPIC_ORGANIZATION_ID }}
```

このとき`id-token: write`は必須です。自前の`github_token`を渡す構成でも交換処理に使うため省けません。GitHub Actions側でOIDCを使ったクラウド認証を組んだ経験があれば発想は同じで、[GitHub ActionsとTerraformでAWSのCI/CDを構築する手順（OIDC・S3ネイティブロック対応）](/tech/details/2715/)で扱っている信頼関係の設計がそのまま参考になります。

### Bedrock・Agent Platform・Foundryのモデルエイリアス解決先

推論を自社のクラウド契約に通す場合は`use_bedrock`、`use_vertex`、`use_foundry`のいずれかを`true`にします。3つともOIDCのID連携で認証するため、静的なクラウド資格情報をリポジトリに置く必要はありません。見落としやすいのは**同じ`--model sonnet`を書いてもプロバイダによって実際のモデルが違う**点で、単価と挙動の両方に影響します。

| プロバイダ                         | opusの解決先 | sonnetの解決先 |
| ----------------------------- | -------- | ---------- |
| Claude API                    | Opus 5   | Sonnet 5   |
| Claude Platform on AWS        | Opus 5   | Sonnet 4.6 |
| Amazon Bedrock／Agent Platform | Opus 5   | Sonnet 4.5 |
| Microsoft Foundry             | Opus 4.6 | Sonnet 4.5 |

Sonnet 4.5と4.6は入力$3／出力$15で、Sonnet 5の$2／$10より高いため、Bedrock経由でエイリアス任せにすると意図せず1.5倍の単価を払うことになります。プロバイダを跨いで運用するなら、エイリアスではなくモデルIDを明示的に固定するほうが安全です。

## 権限とセキュリティで詰まる点

### GitHub Appの一括承諾権限とカスタムAppによる限定

Claude GitHub AppはCode Reviewやウェブ版の自動修正など、GitHubと連携するClaude機能すべてで共有されます。GitHub Appの権限セットは機能ごとに分けられないため、インストール時に承諾するのはアクションが使わないものを含む11項目（Actions・Checks・Contents・Discussions・Issues・Members・Metadata・Pull requests・Repository hooks・Statuses・Workflows）です。GitHubの仕様上、この一部だけを承諾することはできません。組織のルールでアクションが実際に使う権限だけに絞りたい場合は、Contents・Issues・Pull requestsだけを持つカスタムGitHub Appを作る方法があります。ただしカスタムAppが賄えるのはこのアクションだけで、Code Reviewとウェブ版の自動修正は公式Appのままです。

### fork PRとトークンの扱い

パブリックリポジトリでfork由来のPRを通常のpull\_requestイベントで処理する場合、GitHubはGITHUB\_TOKEN以外のシークレットをランナーへ渡しません。つまり**通常のpull\_requestイベントでシークレット認証する構成では、fork由来のPRをそのまま自動レビューできない**ので、同一リポジトリのブランチからのPRに限定した運用を前提に設計します。もう1つの定番のつまずきは、Claudeのコミットで後続のCIが動かないというものです。原因はGitHubが既定の`GITHUB_TOKEN`で作られたコミットではワークフローを起動しない仕様で、`github_token: ${{ secrets.GITHUB_TOKEN }}`を渡している行を外してClaude GitHub Appとして認証させるか、カスタムAppのトークンを渡せば解決します。

資格情報そのものの扱いも押さえておきます。APIキーとOAuthトークンはリポジトリに直接コミットせず必ずシークレットに置くこと、シークレットを削除しても**鍵自体は有効なまま**である（APIキーを完全に無効化するにはClaude Console側でそのキーを削除する。OAuthトークンの失効は別途行う）ことの2点です。Claude Code本体の認証情報の扱いは[Claude Codeソースコード流出事件の全貌｜npm混入で51万行公開の原因・内部構造・対策](/tech/details/11620/)で扱った教訓とも重なります。

## @betaからv1への移行と旧情報の見分け方

2025年前半の記事を参照して組んだワークフローは、`anthropics/claude-code-action@beta`を指しているものが少なくありません。v1への移行で必要な書き換えは4点です。`uses`の`@beta`を`@v1`にする、モードが自動判定になったので`mode`入力を削除する、`direct_prompt`を`prompt`に置き換える、`max_turns`や`model`といったCLI相当のオプションを`claude_args`へ移す。`custom_instructions`は同名のフラグが無く、`--append-system-prompt`に相当します（`--system-prompt`は既定のプロンプトを置き換えてしまうため別物です）。公式の移行ガイドが挙げる旧入力の対応は次のとおりで、これらはaction.ymlの入力定義から消えているため、書き残したまま`@v1`へ上げると指定が無視されます。

| 旧入力                   | v1での書き方                               |
| --------------------- | ------------------------------------- |
| `mode`                | 自動判定（削除）                              |
| `direct_prompt`       | `prompt`                              |
| `override_prompt`     | `prompt`                              |
| `custom_instructions` | `claude_args: --append-system-prompt` |
| `max_turns`           | `claude_args: --max-turns`            |
| `model`               | `claude_args: --model`                |
| `allowed_tools`       | `claude_args: --allowedTools`         |
| `disallowed_tools`    | `claude_args: --disallowedTools`      |
| `claude_env`          | `settings` のenvオブジェクト                 |
| `mcp_config`          | `claude_args: --mcp-config`           |
| `timeout_minutes`     | ジョブの`timeout-minutes`                 |

古い情報を見分ける目印もはっきりしています。アクション本体のリポジトリをForkしてCloneする手順、モードを手で切り替える説明、Actionsマーケットプレイスを検索して選ぶ前提の記述は、いずれも現行の構成では不要または存在しません。入力パラメータを一覧で確認したいときは[Claude Code Action v1の使い方と設定｜GitHubのコードレビューをAIで自動化する](/tech/details/8654/)を、Claude Code本体のコマンドや権限設定から確認したいときは[Claude Codeの使い方｜導入から権限とCLAUDE.md設定まで実務手順](/tech/details/17375/)を参照してください。

## よくある質問

### Claude Code GitHub Actionsの料金はいくらですか？

GitHub Actionsの実行分とClaudeのトークンの合算です。前者は`ubuntu-latest`なら1分$0.006で、プライベートリポジトリでもFreeは月2,000分、ProとTeamは3,000分の無料枠があり、パブリックリポジトリの標準ランナーは無料です。後者はモデル次第で、Sonnet 5なら入力$2／出力$10 per MTok。Anthropicが公開しているClaude Code全体の実測は1開発者あたり稼働日$13程度で、90%が稼働日$30未満に収まっています。

### GitHubと連携するのに何が必要ですか？

リポジトリの管理者権限、Claude GitHub Appのインストール、認証シークレット（`ANTHROPIC_API_KEY`または`CLAUDE_CODE_OAUTH_TOKEN`）、そして`.github/workflows/`に置くワークフローファイルの4つです。`/install-github-app`を使う場合はGitHub CLIの導入と`gh auth login`も前提になります。

### ProやMaxのサブスクリプションで動かせますか？

動かせます。ローカルで`claude setup-token`を実行して長期有効なOAuthトークンを発行し、`CLAUDE_CODE_OAUTH_TOKEN`としてシークレットに登録して`claude_code_oauth_token`入力に渡します。対応プランはPro・Max・Team・Enterpriseです。ただしトークンは発行した個人のサブスクリプションに紐づくため、組織で共有する認証情報としては適しません。

### @betaから@v1へタグだけ変更しても動きますか？

v1はベータから破壊的変更を含むため、`mode`や`direct_prompt`を使ったままタグだけ`@v1`に変えると失敗します。移行するときは4点の書き換え（タグ変更、`mode`削除、`direct_prompt`から`prompt`、CLI相当オプションの`claude_args`への移動）をまとめて行ってください。

### @claudeにメンションしても反応しないときは何を見ますか？

公式のトラブルシュートは5点を挙げています。Appがそのリポジトリにインストールされているか、リポジトリでワークフローが有効か、APIキーまたはOAuthトークンがシークレットに設定されているか、コメントが`/claude`や`@claude-bot`ではなく単語として`@claude`を含んでいるか、コメントした人に書き込み権限があるか。書き込み権限が無いユーザーを許可する場合は`allowed_non_write_users`と自前の`github_token`が必要です。

## 関連記事

- [Claude Code Action v1の使い方と設定｜GitHubのコードレビューをAIで自動化する](/tech/details/8654/)
- [GitHub Actionsの料金｜2026年改定後の分単価・無料枠とコスト削減の判断基準](/tech/details/16698/)
- [Claude Codeとは？できること・使い方・料金とコード解析の実力【2026年版】](/tech/details/5571/)
- [Claude Codeの使い方｜導入から権限とCLAUDE.md設定まで実務手順](/tech/details/17375/)
- [GitHub ActionsとTerraformでAWSのCI/CDを構築する手順（OIDC・S3ネイティブロック対応）](/tech/details/2715/)

---

出典: [Claude Code GitHub Actionsの導入と料金｜@claude連携の設定・分単価とトークン課金](<https://www.issoh.co.jp/tech/details/7094/>)（株式会社一創）
