Claude Codeが50%表示なのに週間制限警告が出る原因と対処法
Claude Codeのセッション表示に空きがあるにもかかわらず週間制限の警告が出る場合の診断手順、作業状態の安全な保存、APIとの違いを解説します。
目次
Claude Codeで50%と表示されているのに、週間利用制限の警告や停止メッセージが出ることがあります。この2つの数字が同じカウンターを表すとは限りません。画面や警告のラベルを確認しないまま「まだ半分残っている」と判断すると、作業途中で止まる可能性があります。
最初に、警告の正確な文言、利用しているログイン方式、リセット時刻を記録してください。そのうえで未コミットの作業を安全に保存し、サブスクリプションの利用枠とAPI利用を別のものとして扱います。
50%表示と制限警告は別の指標である場合がある
Claude Codeで見かける数値には、少なくとも次のような区別があります。
| 表示または警告 | 確認する内容 | その値だけでは分からないこと |
|---|---|---|
| contextの表示 | 現在の会話と読み込まれた情報がcontext windowをどれだけ使っているか | プランの利用枠がどれだけ残っているか |
| 5時間の利用警告 | 契約プランに含まれる現在のセッション利用枠 | 週間上限やcontextの空き |
| 週間利用制限 | プランに割り当てられた週間の利用枠と次回リセット時刻 | 現在の会話が短いかどうか |
| API利用 | API Keyで実行したリクエストの課金・利用状況・適用される制限 | ClaudeのWebサブスクリプションの残量 |
Anthropicの現在の案内では、5時間の利用枠と週間上限はcontext lengthとは別に扱われます。適用される上限、リセット方法、usage creditsの可否はプランやアカウントによって変わります。したがって、記事や他人のスクリーンショットから具体的なトークン数、固定のリセット周期、利用可能な追加枠を推測しないでください。
Webサブスクリプションとは別にAPI経由でClaude Codeを設定する場合は、BetterTokenのClaude Codeガイドで現在の接続方法を確認できます。BetterTokenのAPIアクセスでは自分のアカウントとAPI Keyを使います。これはClaudeのWebサブスクリプション枠を増やす手段ではなく、別のAPI利用経路です。
まず警告の内容とリセット時刻を確認する
警告が出た直後に同じpromptを繰り返し送らないでください。次の順に確認します。
- ターミナルに表示されたメッセージをそのまま控えます。
Approaching 5-hour limit、週間利用制限、limit reached, resets at …、429は同じ原因を示すとは限りません。 - Claudeのアカウントで、現在のプランとUsage画面に表示される次回リセット時刻を確認します。5時間枠と週間枠が別に表示される場合は、どちらが先に尽きたかを記録します。
- API KeyでClaude Codeを起動している可能性がある場合は、環境変数と設定を確認します。API Keyでの実行はサブスクリプション経由の実行と同じ課金・制限の経路ではありません。
/context、/compact、/clearはcontextの扱いに役立ちますが、サブスクリプションの利用枠をリセットする操作ではありません。
429は短時間のレート制限、上流の混雑、またはAPI側の認証・残高・制限などでも起きます。文言、HTTP status、どの認証経路で実行したかを分けて確認してから対処してください。
中断すべきタイミングと安全なhandoff
上限到達やリセット待ちが表示され、次の変更が大きい場合は、無理に続けず作業状態を引き継ぎます。安全なcheckpointでは、内容を確認せずにすべてをstageしないことが重要です。
git status --short
git diff --check
git switch -c checkpoint/usage-limit
git add -p
git commit -m "checkpoint: save state before usage reset"
その後、HANDOFF.md またはタスク管理ツールに次を残します。
- すでに完了した変更と、まだ確認していない変更
- 次に実行するテストまたは確認コマンド
- 変更したファイルと、触れてはいけないファイル
- 表示された制限メッセージ、認証経路、分かっているリセット時刻
バックグラウンドのretryや長い処理がある場合は、その状態を確認してから止めます。新しいセッションで再開するときは、handoffを読み、まず短い確認から始めます。
サブスクリプション枠とAPI利用を混同しない
ClaudeのWebサブスクリプションとAPI Keyによる実行は、認証、課金、利用状況の確認場所が異なります。
| 観点 | Webサブスクリプション | API Keyによる実行 |
|---|---|---|
| 認証 | Claudeアカウントでのログイン | 選択したAPIプロバイダーのKey |
| 利用枠 | プラン、アカウント、機能に応じた利用制限 | APIプロバイダーの課金と適用されるレート・残高条件 |
| 確認先 | ClaudeのUsage画面と警告メッセージ | APIプロバイダーのusage・請求・リクエスト記録 |
| 片方への影響 | APIに入金しても自動でWebプランの枠は変わらない | WebプランのリセットはAPI利用条件を変更しない |
APIを使う場合でも、無制限の実行や特定の速度・成功率を前提にしないでください。現在のModel ID、利用可否、価格、レート条件は選択したプロバイダーの最新情報で確認します。
復帰前に小さく検証する
利用枠が戻った、または別の認証経路に切り替えた後、すぐに大規模なrefactorを再開する必要はありません。
/modelまたは対象ツールの設定で、意図した認証経路とモデルを確認します。- handoffに記録した最小の確認コマンドまたは小さなread-only操作を実行します。
- 期待どおりに応答することと、usage画面またはAPI利用記録で経路を確認します。
- その後に未完了のタスクを再開し、長時間の作業は意味のあるcheckpointごとに分けます。
この手順なら、context不足、5時間枠、週間上限、API側の問題を一つの「利用制限」として扱わずに済みます。
よくある誤解
50%なら週間枠も50%残っている。
表示の対象が違うため、そうは言えません。ラベルとUsage画面を確認します。
新しい会話を始めれば週間上限が戻る。
新しい会話はcontextの整理に役立つことがありますが、プランの利用枠をリセットする操作ではありません。
API残高を追加すればClaudeのWeb制限が解除される。
認証と課金の経路が別です。切り替える前に、どちらでClaude Codeを実行しているかを確認します。
429なら必ず週間上限である。
429には別の原因もあります。エラー文、リセット情報、認証経路を合わせて判断します。