Claude Code で上限に達したからといって、すべての作業を API に切り替える必要はありません。現在のセッションがサブスクライバル上限を利用しているのか、それとも API キーで課金されているのかを、/status でまず確認すると、状況は変わってきます。上限を回避するのではなく、モデルごとに分かれた制限と認証優先順位を理解し、ワークフローが途切れる区間を減らす方法です。

上限は3系統で個別に計算されます

Claude Code の利用量制限は3種類に分類され、それぞれ独立して消費されます 1。

  • セッション上限: 5時間ごとにリセットされる短期制限です。
  • 週間の総上限: すべてのモデルの利用量を合算して週間で計算します。
  • 週間のモデル別上限: 最上位モデルには、別途週間の制限が追加されます 1。

この構造を知らないと、「上限に達した」という一言だけでは、すべての状況を理解するのが困難です。実際のユーザーの観察事例によると、Max 5x プランのユーザーの画面で、セッション上限は4%、週間の総上限は69%、週間モデル(Fable)上限は89%と表示されていたケースがありました 2。つまり、特定モデルの上限がほぼ満タンでも、週間の総上限にはまだ余裕が残っている可能性があります。

また、Web チャット、デスクトップアプリ、Claude Code で使用した量はすべて同一の上限に合算されます 2。Claude チャットを多く利用すると、コード作成に使える残量も同時に減少します。逆に、複数のサブエージェントを実行する複雑な作業は、5時間セッションがリセットされる前に、週間の総上限を先に消費してしまう可能性があります 1。

上限は3系統で個別に計算されます

モデル切り替えで続行できるケース

モデル切り替えで続行できるケース

上限に達したとき、最初に確認すべきことは、「どの上限」に到達したかです。

モデル別上限のみ到達した場合

最上位モデル(Opus、Sonnet、Fable など)にのみ適用される別の週間の上限に到達した場合、Claude Code セッションで /model コマンドを使い、他のシリーズのモデルに切り替えることで、直ちに作業を続行できます 1。前述の事例のように、週間モデル上限は89%ですが週間の総上限が69%である場合、まだ余裕のある別のモデルに切り替えて、総上限の範囲内で作業を継続できます 2。

ただし、注意点があります。モデルごとにプロンプトキャッシュが分離されているため、切り替え直後の最初のリクエストでは、既存の会話内容をキャッシュなしで再読み込みすることになります。長い会話セッションでは、この1回の処理コストが発生する可能性があります 3。

セッションまたは週間の総上限に達した場合

セッション上限と週間の総上限は、すべてのモデルで共有されています。したがって、これらの2つの制限に到達すると、軽量なモデルに切り替えても作業がブロックされた状態が継続します 1。ただし、通常より軽量なモデルを使用すれば、上限が消費される速度を遅くすることは可能です。

「使用クレジット」はリセット権ではなく従量課金への切り替えです

モデルの切り替えで解決できないセッション・週間上限の区間で作業を続けるには、「使用クレジット」機能を利用できます。

この機能は名称で誤解されやすいですが、すでに満タンの上限を初期化するものではありません。Anthropic カスタマーサポートの説明によると、使用クレジットは「プランの利用上限に達した後、従量課金価格に切り替えて作業を続けられるようにする」機能です 3。つまり、ブロックされる代わりに、標準 API 料金で課金方法が変更されるスイッチです。

自動再開機能の活用

クレジットを使わずに待つのも一つの手段です。Claude Code v2.1.234 バージョン以降では、リセット時刻まで待機して自動的に作業を再開する機能がデフォルトで有効になっています 3。

  • セッションを開いたままにすると、下部に Usage limit reached · continuing automatically at 3:45pm のようなメッセージが表示され、リセット時刻に合わせて停止していた作業を自動的に再開します。
  • コンピューターが30分以上スリープした場合、Enter キーを押すと再開されます。
  • 週間の上限のようにリセットまで24時間以上残っている場合、またはバックグラウンドで実行される場合は、自動再開が動作しません 3。

使用クレジットを有効にすると、サブスクライバル料金とは別に請求されます。Claude Code は各リクエストごとに会話全体を送信するため、会話が長いほどトークンコストは大きくなる可能性があります。予期しない支出を防ぐため、月次支出上限(spend limits)を事前に設定しておくことが推奨されます 3。

7段階の認証優先順位が課金経路を決定します

7段階の認証優先順位が課金経路を決定します

サブスクライバルと API キーを併用する環境では、課金経路が意図せず API に設定されることがよくあります。Claude Code は経路を自動的に切り替えず、設定された資格情報の中で優先順位が最も高い1つを選択します。

2026年10月10日時点の認証ドキュメントで整理された優先順位は以下の通りです 4。

順位設定された資格情報請求経路
1CLAUDE_CODE_USE_BEDROCK などのクラウドプロバイダー変数AWS、Google Cloud、Azure アカウント
2ANTHROPIC_AUTH_TOKEN当該トークンを発行したゲートウェイ/プロキシ
3ANTHROPIC_API_KEYConsole API クレジット(プリペイド)
4apiKeyHelper スクリプトスクリプトが返したキーの組織
5CLAUDE_CODE_OAUTH_TOKENサブスクライバルプラン利用量(手動トークン)
6プロファイル/フェデレーション資格情報発行した組織
7/login サブスクライバル OAuthサブスクライバルプラン利用量(デフォルト)

ANTHROPIC_API_KEY(3段階)が環境変数に残っており、/login を通じてサブスクライバル(7段階)にログインしている場合、リクエストは API キーで処理されます。

  • 対話モード: Claude Code は API キーを使用するかを一度だけ尋ね、承認するとその選択が記憶されます 4。
  • 非対話モード(claude -p、CI など): 確認プロセスなしで常に API キーを使用します 4。

ノートパソコンで対話する際はサブスクライバルを使っているのに、バックグラウンドの自動化スクリプトでは API 料金が発生してコストがかかるのは、これが理由です。現在のセッションがどの資格情報を使用しているか確認するには、Claude Code で /status を入力すればよいです。ログイン情報と API キーの両方がある場合、現在使用していない側は「使用しない」と表示されます 4。

スクリプトもサブスクライバル上限内で実行する: setup-token

自動化作業も API コストなしでサブスクライバル上限内で処理したい場合は、claude setup-token を使用できます。このコマンドは、サブスクライバル認証用の OAuth トークンを生成します。生成されたトークンは画面に表示されるだけで、保存はされません。

bash
# 1. 토큰 발급 후 복사
claude setup-token

# 2. 환경 변수에 저장하고, 기존 API 키는 삭제하여 우선순위 충돌 방지
export CLAUDE_CODE_OAUTH_TOKEN="복사한_토큰"
unset ANTHROPIC_API_KEY

# 3. 구독 한도로 실행 확인
claude -p "테스트 실패 원인을 요약해 줘"

ここで重要なのは、unset ANTHROPIC_API_KEY です。CLAUDE_CODE_OAUTH_TOKEN(5段階)よりも ANTHROPIC_API_KEY(3段階)の優先順位が高いため、API キーが残っていると依然として API 料金が請求されるからです 4。

プロキシを通じたモデル分離構成

プロキシを通じたモデル分離構成

上限管理とは別に、作業タイプに応じてモデルを割り当て分けたい場合は、LiteLLM などのプロキシを活用できます。Claude Code の ANTHROPIC_BASE_URL をプロキシサーバーアドレスに設定し、ANTHROPIC_AUTH_TOKEN に発行された仮想キーを入力すると、リクエストはプロキシを経由するようになります 56。

この方法を使用すると、高価なモデル(Opus など)は元通り API を経由させ、低価なモデル(Haiku など)のパスは DeepSeek などの代替モデルにマッピングする構成が可能になります 75。これにより、Claude Code 内部のサブエージェント機能は維持しつつ、コストのかかるメイン会話のみ上位モデルを使用するような運用が可能になります 7。ただし、プロキシを使用する場合、ANTHROPIC_AUTH_TOKEN は優先順位2段階目であるため、サブスクライバルではなくゲートウェイ運営者に料金が請求される点を明確にすべきです 4。

結論: /status で現在の経路確認から始めます

Claude Code での上限管理は、単純な利用量調整ではなく、どの資格情報でリクエストが送信されるかを制御する問題です。モデル別上限にブロックされた場合は、/model でモデルの切り替えが可能です。セッションや週間の総上限の場合は、クレジットで従量課金に切り替えるか、自動再開を待つ必要があります。

最初にやるべきことは、/status を開き、現在の認証方式がサブスクライバルなのか API キーなのかを確認することです。意図に反して API で請求されている場合は、シェル環境変数、.env ファイル、settings.json などでキーが注入されていないか追跡してみてください。

参考文献

  1. ↩
  2. ↩
  3. ↩
  4. ↩
  5. ↩
  6. Claude Code (CLI) | liteLLM · docs.litellm.ai
    ↩
  7. ↩