Claude Agent SDKで5時間制限が早く減る問題:検証結果と確認方法
Claude Agent SDKアプリ、claude -p、対話型Claude Codeで報告された5時間利用枠の消費差を比較します。entrypointと使用量イベントの確認、コミュニティの回避策の限界、定期的な自動処理をAPI課金や対象のMax・Team APIクレジットへ移行する方法を説明します。
目次

Claude Agent SDKアプリやclaude -pで5時間の利用枠が早くなくなる場合は、同じ処理を対話型Claude Codeで実行して比較してください。コミュニティの検証では、利用枠の消費が約1.6~2.97倍速いという結果が報告されています。ただし、すべての環境に当てはまる倍率ではありません。定期的な自動処理には、独立した利用残高とトークン単位の料金を確認できるAPI課金が選択肢になります。
2026-10-27時点で、Anthropicのissue #97074はオープンのままです。報告は、クライアントのentrypointによって利用枠の消費量が異なる可能性を示しています。しかし、この差がAnthropicの意図した仕様なのか、不具合なのかは確定していません。
対照実験では何が測定されたのか
複数の開発者が、同等の処理をclaude -pやAgent SDKアプリで実行すると、5時間利用枠がより速く減ると報告しています。それぞれの実験では、バージョン、モデル、トークン構成、比較対象のクライアントが異なります。
| 報告 | テスト条件 | 報告された結果 |
|---|---|---|
| qvarker、9月25日 | Max、Claude Code 2.1.282、claude-opus-5、high effort | ヘッドレスモードでは対話型ターミナルより約1.8倍速く利用枠を消費 |
| kler、10月17日 | Team、Claude Code 2.1.300、claude-opus-5-5、high effort | sdk-ts: 2.97倍、sdk-cli: 2.83倍。比較対象はclaude-vscodeラベルを使用するハーネス |
| TheoによるT3 Codeの報告、10月25日 | 1つのMaxアカウントで同じ処理を比較。対話型ターミナル、T3 Code、claude -p | キャッシュ条件を比較した結果、SDK・ヘッドレス経由では約1.6~1.7倍速く消費 |
| frostfire575、10月26日 | Windows 11、Claude Code 2.1.310、claude-opus-5-5、low effort | claude -pは対話型ターミナルより、重み付けトークンあたり約2.4倍多く利用枠を消費 |
最大の数値には注意が必要です。klerのハーネスはVS Code拡張機能のラベルを模倣しています。実際の拡張機能のインターフェースを操作したわけではありません。この結果が示すのは、その実験内でのラベルに関連する差です。
qvarkerの報告にあるドル換算値は、処理量を正規化するためのAPI相当の推定値です。追加のサブスクリプション料金ではありません。「利用枠1%あたりの処理額」が小さいほど、利用枠が速く減ったことを意味します。
週間利用枠は別に考える必要があります。Theoの実験では、各実行の週間メーターが同じ2ポイントずつ増加しました。frostfire575の週間メーターは0%から1%にしか変化せず、結論を出すには精度が足りません。週間消費が変わらなかったという証拠はTheoの実験に限られ、すべてのアカウントに対する保証ではありません。
sdk-cliとsdk-tsから何が分かるのか
entrypointは呼び出し元のクライアントを識別する値です。その値だけでは、Anthropic側の課金計算式は分かりません。
公開されている@anthropic-ai/claude-agent-sdk 0.3.311パッケージのsdk.mjsには、次のデフォルト設定があります。
if(!c.CLAUDE_CODE_ENTRYPOINT)c.CLAUDE_CODE_ENTRYPOINT="sdk-ts"
この環境変数が設定されていない場合、SDKはsdk-tsを設定します。コミュニティのトランスクリプトでは、通常のclaude -pにsdk-cli、対話型ターミナルにcliが記録されています。
qvarkerの通信比較では、リクエストのx-anthropic-billing-headerシステムブロック内にあるcc_entrypointが異なっていました。報告者はUser-Agentとベータフラグにも違いを確認しています。
これはコミュニティによるリクエスト内容の観察結果です。公式に文書化された課金ヘッダーのインターフェースではありません。また、単一のフィールドがすべての差を説明する証拠でもありません。
Claude Code 2.1.311の変更履歴には、この利用枠の差を修正したという告知がありません。ただし、変更履歴に記載がないからといって、サーバー側の動作が変わっていないとは断定できません。
自分のワークフローを確認する方法
設定を変更する前に、実際のクライアント、認証経路、処理内容を測定してください。
認証方法と比較条件を確認する
アプリが起動するClaudeプロセスの環境を確認します。認証リファレンスによると、-pモードではAPIキーがサブスクリプション認証より優先される場合があります。
実行ファイル、CLIバージョン、SDKパッケージのバージョン、アカウントのプラン、正確なモデルID、effort設定を記録してください。フロントエンドが、ターミナルとは別のバイナリを起動している場合もあります。
比較時には、次の条件をそろえてください。
- 同じアカウント、プロジェクトのスナップショット、プロンプト一覧、ツール、キャッシュ設定を使用します。
- そのアカウントでのほかの処理を一時停止します。
- 新しいセッションを開始し、両方の実行を同じ5時間ウィンドウ内で行います。
- ウィンドウがリセットされた場合、または有料の追加使用量に切り替わった場合は比較を中止します。
同じソースファイル群を要約するなど、実際の作業に近いタスクを使います。入力、出力、キャッシュ読み取り、キャッシュ書き込みのトークン数を分けて記録してください。出力の長さが同じでも、作業量が同じとは限りません。
メーターと記録されたentrypointを取得する
バージョンによって利用できるフィールドが異なるため、レート制限イベントのペイロード全体を保存してください。
次のBashコマンドにはjqと、既存のサブスクリプションログインが必要です。実行すると利用枠を消費します。このコマンドはテレメトリーと認証を確認するもので、1語の応答から消費倍率を測定するものではありません。
set -o pipefail
claude --version
claude auth status | jq '{authMethod}'
claude -p "Reply with exactly OK." \
--model claude-sonnet-5-5 \
--max-turns 1 \
--disallowedTools "*" \
--output-format stream-json --verbose |
jq -c '
if .type == "rate_limit_event" then
{type, session_id, rate_limit_info}
elif .type == "result" then
{type, subtype, is_error, session_id,
usage, modelUsage, total_cost_usd, result}
else empty end
'
CLIリファレンスには、これらのフラグと認証状態コマンドが記載されています。正常に実行できた場合、subtype: "success"かつis_error: falseのresultレコードが返されます。
issueの計測用ビルドでは、次のパスが使われていました。
rate_limit_event.rate_limit_info.unifiedWindows.five_hour.utilization
ただし、公開されている0.3.311 SDKのイベント型にはunifiedWindowsがありません。その型にはrateLimitTypeやutilizationなどのフィールドが定義されています。フィールドやイベントが見つからなくても、消費量がゼロだと判断してはいけません。ストリームから利用可能な値を取得できない場合は、アカウントのUsageページを確認してください。
同じインターフェースと尺度の測定値を比較してください。イベントのutilizationとSDKの別の使用量制御レスポンスは異なるスキーマです。両者の数値をそのまま比較することはできません。
返されたsession_idを使ってトランスクリプトを探します。セッションのドキュメントによると、トランスクリプトは~/.claude/projects/<encoded-cwd>/<session-id>.jsonlに保存されます。CLAUDE_CONFIG_DIRをカスタマイズしている場合は、保存先のルートが変わります。
Bashで記録されたentrypointだけを確認します。
read -r -p "Transcript path: " CLAUDE_TRANSCRIPT
jq -r 'select(.entrypoint? | type == "string") | .entrypoint' \
"$CLAUDE_TRANSCRIPT" | sort -u
結果が空なら、そのフィールドが利用できなかったことを意味します。セッションが対話型だったことを示すわけではありません。
ターミナルとの比較では、クリーンなシェルから本物の対話型Claude Codeを起動してください。qvarkerの報告によると、tmuxサーバーがCLAUDE_CODE_ENTRYPOINTを継承し、後から起動したターミナルセッションにも渡していました。インターフェースだけでラベルを推測せず、実際のトランスクリプトを確認してください。
作業単位あたりの利用枠を比較する
経過時間やプロンプト数ではなく、同じ作業単位あたりの利用枠の増加率を比較します。
Frostfire575は、ターミナル実行では重み付けトークン143万個に対して5ポイント増加したと報告しています。ヘッドレス実行では132万個に対して11ポイント増加しました。報告された数値を使うと、次の計算になります。
Headless / terminal = (11 / 1.32) / (5 / 1.43) = 2.38
これが報告された約2.4倍という結果に対応します。この計算は報告者独自の重み付けトークン指標を使用しており、その比較にのみ適用できます。
1ポイント程度の変化では、小規模な比較の精度が不足します。必要なら通常の作業を実行順序を逆にして繰り返してください。ただし、利用枠のリセットやアカウント内の処理の重複は避けてください。
コストを推定するときは、新しいセッションの最終結果を使用します。再開したセッションの累積結果レコードを合算してはいけません。コスト追跡のドキュメントでは、トークンの集計と実際の課金が区別されています。total_cost_usdもmodelUsageも、サブスクリプションの利用枠メーターではありません。
キャッシュの動作をそろえたり、重複する処理を止めたりすると差が消える場合は、まずそれらの原因を調べてください。
CLAUDE_CODE_ENTRYPOINTを変更すべきか
クライアントのラベルを変更する方法は、サポートが確認されていない実験として扱ってください。
10月26日、qvarkerとovianoは、独自のツール名を設定すると消費量が減ったと報告しました。比較では、デフォルトのsdk-cliの消費量が約1.9~2.4倍高くなっていました。
これらの報告は、異なる利用枠の扱いを得るための承認済み手段を示すものではありません。独自のラベルは、課金に関係するとみられる呼び出し元の情報を変更します。今後その扱いが変わる可能性があり、ポリシー上の位置付けも未解決です。
別のクライアントと同じ扱いを得るために、アプリへcliやclaude-vscodeというラベルを設定しないでください。これらの名前は、それぞれ別のクライアントを識別します。
関連するT3 Codeのプルリクエスト #25597は、2026-10-27の確認時点でオープンかつ未マージでした。このPRが存在するだけでは、T3 Codeに修正がリリースされたことや、Anthropicが変更を承認したことは確認できません。
対話型の作業では、実際のターミナル版クライアントを使って比較してください。構造化された入力と出力が必要な自動処理では、API課金を検討してください。
Agent SDKの自動処理にはどの残高が使われるのか
認証方法によって、ジョブがサブスクリプションの利用枠を消費するか、APIクレジットを使うかが決まります。
Anthropicの10月7日の課金に関する更新によると、Agent SDK、claude -p、サードパーティアプリは引き続きサブスクリプションの利用枠を使えます。また、リンク済みのConsole組織のAPIキーで認証する、自分で実行するSDKおよびclaude -pのジョブには、対象となるMax・TeamのAPIクレジットを利用できます。
次の残高を区別してください。
| 課金経路 | ジョブが消費するもの |
|---|---|
| Claudeのサブスクリプションログイン | 5時間ウィンドウを含むサブスクリプションの利用枠 |
| 有効にした追加使用量(usage credits) | 含まれる利用枠を使い切った後の有料利用 |
| Anthropic APIキー | Console組織の対象APIクレジット、または購入済みAPI残高 |
| 独立したAPIゲートウェイ | そのプロバイダーの残高と課金ルール |
API課金に切り替えると、ジョブはサブスクリプションの5時間利用枠に依存しなくなります。ただし、APIのレート制限、支出上限、利用可能な残高は引き続き適用されます。
2026-10-27時点で、月次APIクレジットプログラムは次の内容を掲載しています。
| 対象プラン | 月次APIクレジット |
|---|---|
| Max 5x | $100 USD |
| Max 20x | $200 USD |
| Team Standard | 1席あたり$20 USD |
| Team Premium | 1席あたり$100 USD |
Teamのクレジットは共有プールになり、上限は$500 USDです。Proは対象外です。新規加入者は対象プランを7日間利用する必要があります。
クレジットを利用するには、MaxではSettings > Billing、TeamではOrganization settings > Billingを開きます。APIクレジットの項目でLink organizationを選択してください。必要な契約者またはオーナーの権限と、Consoleの課金権限が必要です。APIキーはリンクした組織内で作成します。
このプログラムは、対話型Claude Code、追加使用量、Claude Code GitHub Action、IDE拡張機能、Claudeデスクトップアプリから起動した処理を対象外としています。-pを追加しても、これらの除外条件は解除されません。
Platformのクレジットに関するドキュメントによると、未使用クレジットは翌月に繰り越されず、期限切れになります。付与クレジットは購入済みクレジットより先に使われます。使い切った後も、購入済み残高や適用される請求契約があれば利用を継続できます。それ以外の場合、リクエストは停止します。サブスクリプションの利用枠へ自動的に切り替わることはありません。
定期ジョブを移行する前にAPI課金を確認する
キューを移行する前に、APIキーを使った直接実行を1回行い、Consoleの使用量を確認してください。
Anthropic APIへ直接アクセスできるBashターミナルを使用します。まず、既存のANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN、クラウドプロバイダーの設定を確認してください。これらの設定によって、別のエンドポイントや認証情報が選択される場合があります。
対象のConsole組織でAPIキーを作成し、値を表示せずに入力します。
read -rs ANTHROPIC_API_KEY && export ANTHROPIC_API_KEY
claude --bare -p \
--model claude-sonnet-5-5 \
--tools "" \
--max-turns 1 \
--max-budget-usd 1.00 \
--output-format json \
"Reply with exactly OK."
プログラムからの利用に関するドキュメントによると、--bareはサブスクリプションのOAuth認証情報と検出されたカスタマイズを読み込みません。そのため、API課金を確認する用途に適しています。サブスクリプションとの比較で使うと、認証経路が変わってしまいます。
成功すると、応答を含むJSON結果が返されます。その後、正しい組織のConsoleで使用量と残高を確認してください。CLIのコスト推定値だけでは、そのリクエストにプロモーションクレジットが使われたかどうかは証明できません。
認証に失敗した場合は、APIキーと有効なプロバイダーを確認します。残高が不足している場合は、Consoleの課金設定を確認してください。サブスクリプションの利用枠が残っていても、APIのレート制限や支出上限に達すれば、それらへの対処が必要です。
CLIの$1.00予算は、処理を止めるための推定しきい値です。実際の請求額がこの値を超える可能性があります。Consoleにも適切な支出上限を設定してください。
予算計算の例として、Anthropicの現在の料金表では、claude-sonnet-5-5のキャッシュされていない入力トークンは100万個あたり$2、出力トークンは100万個あたり$10です。2026-10-27時点の料金を使い、入力100万トークンと出力10万トークンを処理すると、推定料金は次のとおりです。
(1 × $2) + (0.1 × $10) = $3
この計算は、標準の同期グローバルルーティング、キャッシュなし、別料金のサーバーツールなしを前提としています。適用される税金は含みません。コンテキストを繰り返し送る場合は、キャッシュ書き込みと読み取りを別々の料金で計算してください。
独立したゲートウェイも選択肢です。BetterTokenの公開モデル一覧には、2026-10-27時点でclaude-sonnet-5-5とclaude-opus-5-5が掲載されていました。Claude Codeの接続ガイドでは、自分のBetterToken APIキーと、/v1を付けないベースURLhttps://bettertoken.aiを使用します。現在の料金と必要なツールの互換性を、自分のワークロードに照らして比較してください。Anthropicから付与されたAPIクレジットは、この独立した課金経路には引き継がれません。