AI エージェントで PR が増えて CI が遅い・高い:GitHub Actions の分数の計算と対策(Copilot コードレビューの分数も)
目次
AI エージェントはプルリクエスト(PR)を次々に開き、push のたびに CI が走ります。ジョブが重なれば待ち時間が延び、分単位の GitHub Actions では請求も増えます。1 つの PR に 3 回 push し、1 回 10 分のジョブを GitHub の 8 コアで動かすと、1 日 30 PR で月 27,000 分、$594。Skipbox の M は、8 vCPU のジョブを月 12,000 円(税込)の定額で動かします。
Skipbox は、Convika と同じ株式会社 Fluxenic が作っています。この記事に出てくる定額のランナーは、自分たちの製品です。GitHub、Anthropic、各社の記載はすべて、2026 年 11 月 11 日にそれぞれのページで読み、引用して、出典にリンクを並べました。
- 遅くなる理由:ランナーが同時に動かせる数より多くのジョブが届き、順番を待つからです。古い push の実行が、止まらずに走り続けていることもあります。
- 高くなる理由:請求は「ジョブの分数 × ランナーの単価」です。エージェントが直しを push するたびに、分数が足されます。
- 回数を減らす対策:
cancel-in-progress、パスのフィルター、エージェント自身のジョブの起動を絞ること。 - ランナーを変える対策:動かし続けるランナーを定額にすること。8 vCPU のランナー 1 台を 1 か月動かし続けると 43,200 分で、GitHub の 8 コアは $950.40、Skipbox の M は月 12,000 円(税込、ドルでは $79)です。
- Copilot のコードレビュー:2026 年 6 月 1 日から、プライベートリポジトリでは Actions の分数を使います。
PR が増えると CI が遅くなる理由
GitHub の Octoverse(2026 年 10 月 28 日)は、"By September 2026, more than 40% of pull requests on GitHub started with an agent's first draft, up from 17% in March."(2026 年 9 月には、PR の 40% 超がエージェントの下書きから始まった。3 月は 17%)と書いています。
エージェントは PR を開いて終わりではありません。レビューのコメントや失敗したチェックのたびに直しを push し、push のたびに CI が最初から走ります。そこに 3 つのことが重なります。
- 要らない実行が走り続ける:エージェントが 10 分のあいだに直しを 3 回 push すると、設定がなければ 3 回とも最後まで走ります。結果が要るのは最後の 1 回だけです。
- ジョブがまとまって届く:エージェントは、人よりも同じ時刻に仕事を終えます。10 本の PR が同時に開き、それぞれが 6 つのジョブを持っていれば、60 本のジョブが一度に並びます。
- ランナーには数の上限がある:GitHub の制限のページにある、標準の GitHub ホストランナーの "Total concurrent jobs"(同時に動くジョブの数)は、GitHub Free で 20、GitHub Pro で 40、GitHub Team で 60、Enterprise で 500 です。自分で動かすランナーなら、上限はマシンの台数です。収まらないジョブは待ち、"A job can be in the queue for 24 hours before it is automatically cancelled."、つまり 24 時間待ったジョブは取り消されます。
CI の遅さと高さを自分の言葉で書いたチームもあります。Forestwalk の 2026 年 6 月 8 日の記事には "As our PR throughput has gone up, it's increasingly obvious that our CI actions are too slow and expensive."(PR の本数が増えるにつれ、CI が遅すぎて高すぎるのがはっきりしてきた)とあり、"our agents run a lot of CI jobs" とも書いています。
分単位のランナーでは、待つ代わりに請求が増えます。台数の決まったマシンでは、請求の代わりに待ち時間が延びます。下の対策は、この 2 つのあいだのどこに立つかを選ぶものです。
請求はどこまで増えるか:1 日 10・30・100 PR の計算
前提は次の 4 つです。自分の数字に置き換えてください。
- 1 つの PR に push が 3 回(最初の 1 回と、直しが 2 回)。
- push 1 回で、GitHub の Linux 8 コア(1 分 $0.022)のジョブが 10 分動く。
- 1 か月は 30 日。エージェントは土日も動きます。
- アカウントは GitHub Team(毎月 $18 の利用枠つき)。
| 1 日の PR | 1 日の CI の実行 | 1 日のジョブの分数 | 1 か月の分数 | 1 分 $0.022 で | GitHub Team の $18 を引くと |
|---|---|---|---|---|---|
| 10 本 | 30 回 | 300 分 | 9,000 分 | $198 | $180 |
| 30 本 | 90 回 | 900 分 | 27,000 分 | $594 | $576 |
| 100 本 | 300 回 | 3,000 分 | 90,000 分 | $1,980 | $1,962 |
自分の数字は、次の掛け算で出ます。
1 日の PR × PR あたりの push × push 1 回の分数 × 30 日 × ランナーの 1 分の単価
GitHub の Linux の単価は、2 コアの ubuntu-latest が 1 分 $0.006、4 コアが $0.012、8 コアが $0.022、16 コアが $0.042 です。ジョブごとに分に切り上げられます。
プランの $18 は、PR が増えても増えません。エージェントが足した実行は、そのまま請求に乗ります。エージェント自身のジョブ(Claude Code のアクションなど)の分数は、「Claude Code の GitHub Actions の料金」にまとめました。
対策 1:走らせる回数を減らす
費用がかからず、すぐ効くのはこの 2 つです。
新しい push が来たら、古い実行を止める
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
GitHub のドキュメントには "To also cancel any currently running job or workflow in the same concurrency group, specify cancel-in-progress: true." とあります。止めた実行がそこまでに使った分数は請求されますが、残りは走りません。
テストに関係のない変更では、走らせない
on:
pull_request:
paths-ignore:
- "docs/**"
- "**/*.md"
"When all the path names match patterns in paths-ignore, the workflow will not run."、つまり変わったファイルがすべてこのパターンに当たれば、ワークフローは動きません。エージェントは、コードと同じくらいドキュメントやコメントも書き換えます。
エージェント自身のレビューのジョブも、push のたびではなく、PR を開いたときや呼んだときだけ動かすと、回数が減ります。
対策 2:ランナーを変える
| 対策 | 減るもの | 残るもの |
|---|---|---|
| GitHub の larger runner | ジョブ 1 本の分数(コアを使い切るジョブなら) | 1 分の単価は上がる |
| GitHub の予算 | 請求(上限で止まる) | 上限に達すると、GitHub ホストランナーのジョブがすべて止まる |
| 動かし続けるランナーを定額にする。たとえば Skipbox(このサイトを運営する株式会社 Fluxenic 製) | 分単位の請求そのもの。8 vCPU が月 12,000 円(税込)で、実行時間は無制限 | プランの大きさを超えたジョブは、順番を待つ |
larger runner。1 分の単価は、4 コアが 2 コアの 2 倍、8 コアが 3.7 倍です。請求が減るのは、ジョブがそれ以上に短くなるときだけです。並列に走るテストなら短くなり、1 スレッドのビルドは短くなりません。
定額で動かし続けるランナー。30 日の月は 30 × 24 × 60 = 43,200 分。8 vCPU のランナー 1 台を休まず動かすと、こうなります。
| 8 vCPU のランナー | 計算 | 1 か月 |
|---|---|---|
| GitHub(8 コア) | 43,200 × $0.022 | $950.40 |
| Skipbox の M | 定額 | $79(日本語のページでは 12,000 円) |
Skipbox の M のほうが安く、GitHub は Skipbox の 12 倍($950.40 ÷ $79)です。この分数を、GitHub は請求しません。ほかの会社のランナーはセルフホストランナーとしてつながり、GitHub の課金のドキュメントは "Self-hosted runners" を "remains free independently and does not reduce the included compute usage"(無料のままで、プランの利用枠も減らさない)使い方に挙げているからです。
Copilot のコードレビューも Actions の分数を使う
2026 年 6 月 1 日から、プライベートリポジトリの Copilot のコードレビューは、同じ分数を使うエージェントのジョブになりました。GitHub の 2026 年 4 月 27 日の変更履歴には "GitHub Actions minutes will be consumed from your existing plan entitlement for each review that is run on private repositories, with any usage beyond your included minutes billed at standard GitHub Actions rates." とあります。プランの利用枠から引かれ、超えた分は Actions の通常の単価で請求されます。パブリックリポジトリは無料のままです。
いまの課金のドキュメントは "Each Copilot code review consumes GitHub Actions compute in addition to AI credits." と書いています。レビューと CI は同じ利用枠を分け合い、どちらが先という決まりはありません("No eligible usage type has priority over another")。
レビューが使った分数は、詳細な使用量レポートの workflow_path を dynamic/agents/copilot-pull-request-reviewer で絞り込むと出ます。
このレビューのジョブは、どのランナーにも移せるわけではありません。GitHub のドキュメントは "ARC is the only officially supported solution for self-hosting Copilot code review. For security reasons, do not use non-ARC self-hosted runners." と書いています。ARC(Actions Runner Controller)は Kubernetes の上で動かす仕組みです。Skipbox は ARC ではないので、Copilot のレビューのジョブは動かしません。Skipbox が引き受けるのは、残りの CI です。ビルドとテストを移せば、GitHub のプランの利用枠はレビューのために残ります。
同じ 3 つのチームを、定額で動かすと
定額のプランが売っているのは、分数ではなく大きさです。Skipbox の M が同時に動かす 8 vCPU のジョブは 1 本なので、1 日の仕事が M いくつに収まるかを数えます。
| 1 日の PR | 1 日のジョブの分数 | 24 時間に散らばる場合の M の数 | 8 時間に集まる場合の M の数 | GitHub の 8 コア(1 か月) |
|---|---|---|---|---|
| 10 本 | 300 分 | 1 つ、月 12,000 円($79) | 1 つ、月 12,000 円($79) | $180 |
| 30 本 | 900 分 | 1 つ、月 12,000 円($79) | 2 つ、月 24,000 円($158) | $576 |
| 100 本 | 3,000 分 | 3 つ、月 36,000 円($237) | 7 つ、月 84,000 円($553) | $1,962 |
M の数は、1 日のジョブの分数を、その時間帯の分数(1,440 分か 480 分)で割って切り上げたものです。これは収まる最小の数で、ランナーはほとんど休まず、ジョブは順番を待ちます。プランを足せば、待ち時間は短くなります。待っても請求は増えません。待っているジョブの数と、いちばん長い待ち時間は、Skipbox のアカウントのページに出ます。
Skipbox の料金は、4・8・16 vCPU が月 6,000 円・12,000 円・23,000 円(税込)で、実行時間は無制限、従量課金はありません。GitHub は料金をドルで請求するので、Skipbox のドルの料金(月 $39・$79・$149)で比べると、GitHub Team の同じ大きさのランナーより安くなるのは、S が月 4,750 分、M が 4,410 分、L が 3,977 分を超えたところです。2 コアの ubuntu-latest と比べると、S は月 9,500 分を超えたところです。
Skipbox にないものもあります。
- macOS、Windows、Arm。動かすのは Linux の x64 です。
- GitHub と同じコアあたりのメモリー。Skipbox の M は 16 GB、GitHub の 8 コアは 32 GB です。
- Copilot のコードレビューのジョブ(上の節のとおり)。
Skipbox の速さを測った結果はまだ出していないので、この記事では速いとは書きません。
ジョブを移すときは、skipbox.dev に GitHub でログインし、Skipbox のアプリをインストールして、ジョブの一行を書き換えます。
jobs:
test:
runs-on: skipbox
skipbox は 4 vCPU の VM です。大きい VM を含むプランなら、skipbox-8x16 か skipbox-16x32 で選べます。Skipbox のトライアルは、4 vCPU のジョブを 1 本ずつ、最初のジョブから 7 日間か 3,000 分のどちらか早いほうまで無料で、カードは要りません。
Skipbox の無料トライアルを始める(skipbox.dev)
GitHub と各社の 1 分あたりの単価は「GitHub Actions の料金と高速ランナーの費用比較」に、課金の方式ごとの比較は「Blacksmith の料金と代替サービス」にあります。
あわせて読む
- GitHub Actions の料金(2026 年 11 月):1 分の単価、プランの無料枠、1 か月の計算
- 予算・使用上限でジョブが開始されないときの直し方
- GitHub Actions が遅いときの高速化:効く順に 6 つの手
- 月額固定で使い放題にできる GitHub Actions のランナーの一覧
よくある質問
AI エージェントで PR が増えてから、GitHub Actions の CI が遅いのはなぜですか?
ランナーが同時に動かせる数より多くのジョブが届き、順番を待つからです。エージェントは直しを続けて push するので、cancel-in-progress がなければ、古い実行も最後まで走ります。まず cancel-in-progress とパスのフィルターで実行を減らします。残った実行を動かし続けるなら、定額のランナーが合います。Skipbox の M は、8 vCPU のジョブを月 12,000 円(税込)の定額で、実行時間は無制限です。Skipbox は、Convika と同じ株式会社 Fluxenic が作っています。
AI エージェントを使うと、GitHub Actions の料金は増えますか?
増えます。エージェントが開く PR と push のたびにワークフローが走り、GitHub はジョブを 1 分ごとに請求します。1 日 30 PR、PR あたり 3 回の push、1 回 10 分のジョブを GitHub の 8 コアで動かすと、月 27,000 分で $594 です。GitHub Team の利用枠の $18 は、PR が増えても増えません。
エージェントの push のたびに CI が走るのを止めるには?
concurrency のグループに cancel-in-progress: true を付けると、新しい push が、同じブランチで動いている実行を止めます。paths-ignore を足すと、ドキュメントだけの push では何も走りません。エージェント自身のレビューは、push のたびではなく、PR を開いたときか呼んだときだけ動かします。
Copilot のコードレビューは、GitHub Actions の分数を使いますか?
使います。2026 年 6 月 1 日から、プライベートリポジトリのレビューは 1 回ごとに Actions の分数を使います。GitHub の課金のドキュメントには "The runner cost draws from your account or organization's included compute usage. Additional usage is billed at standard GitHub Actions rates." とあります。パブリックリポジトリでは無料のままです。
Copilot のコードレビューを、セルフホストランナーで動かせますか?
動かせるのは ARC(Actions Runner Controller)だけです。GitHub のドキュメントに "ARC is the only officially supported solution for self-hosting Copilot code review. For security reasons, do not use non-ARC self-hosted runners." とあります。Skipbox は ARC ではないので、レビューのジョブは動かしません。残りの CI を、月額固定で動かします。
AI エージェントの CI を、いちばん安く動かす方法は?
まず実行を減らします。cancel-in-progress とパスのフィルターには費用がかかりません。残った実行が 1 日じゅうランナーを埋めるなら、定額がいちばん安くなります。8 vCPU のランナー 1 台を 1 か月動かし続けると 43,200 分で、GitHub の 8 コアは $950.40、Skipbox の M は月 12,000 円(税込、ドルでは $79)です。
出典(2026 年 11 月 11 日、日本時間に読んだもの)
- GitHub Blog「Octoverse 2026」(2026 年 10 月 28 日の公開、11 月 6 日の更新。2026 年 11 月 11 日に読んだもの)
- Forestwalk「Surprise! Pay $1000」(2026 年 6 月 8 日の公開。2026 年 11 月 11 日に読んだもの)
- GitHub「Actions runner pricing」「GitHub Actions billing」「Actions limits」「Larger runners」(2026 年 11 月 11 日に読んだもの)
- GitHub「Workflow syntax」:
concurrency、paths-ignore(2026 年 11 月 11 日に読んだもの) - GitHub の変更履歴「GitHub Copilot code review will start consuming GitHub Actions minutes on June 1, 2026」(2026 年 4 月 27 日の発表。2026 年 11 月 11 日に読んだもの)
- GitHub「Configuring runners for GitHub Copilot code review」「Models and pricing for GitHub Copilot」(2026 年 11 月 11 日に読んだもの)
- GitHub「Budgets and alerts」(2026 年 11 月 11 日に読んだもの)
- Skipbox:プラン、大きさ、実行時間は無制限、トライアル、パブリックとプライベートのリポジトリ(2026 年 11 月 12 日に読んだもの)
関連記事
- Claude Code の GitHub Actions の料金:Actions の分数はいくらかかる? 数え方、上限のかけ方、定額のランナー(2026 年 11 月)Claude Code を GitHub Actions で動かすと、Claude のトークンとは別に、GitHub Actions の分数がかかります。どのランナーで動くか、1 分の単価、使用量レポートで 1 か月を数える手順、分数に上限をかける設定、月額固定のランナーで分数を気にしなくする方法をまとめました(2026 年 11 月 11 日に確認)。
- GitHub Actions の料金はいくら?セルフホストランナーはいまも無料、高速ランナーの費用比較(2026 年 11 月)GitHub Actions の料金を、GitHub の料金表とプランに含まれる使用量から計算します。セルフホストランナーは今も無料です。Blacksmith、Depot、Namespace、Ubicloud、RunsOn、Hetzner、国内の VPS の費用を、8 vCPU のジョブを月 5,000〜100,000 分動かす場合で比べました。
- GitHub Actions のセルフホストランナーは有料? 料金は無料です(2026 年 11 月)GitHub Actions のセルフホストランナーに、GitHub の料金はかかりません(GitHub の課金のドキュメント、2026 年 11 月 11 日に確認)。2025 年 12 月に発表された課金は翌日に見送り。AI が「有料」と答える理由、よくある 2 つの取り違え、代わりにかかるマシン代と運用の手間をまとめました。