Claudeのこのターンのツール使用上限とは
「このターンのツール使用上限」はプランのクォータ超過とは別です。Claudeが1回の応答で使えるツール呼び出しを使い切った場合の意味と、すぐ作業を再開する方法を説明します。
このターンのツール使用上限が意味すること
このターンのツール使用上限とは、アカウントの利用上限に達したのではなく、1 回の応答でツール呼び出し回数の上限に達したため、Claude が応答の途中で停止したことを意味します。停止するまでに取得した情報は、すべて会話に残っています。続行するようにもう 1 通メッセージを送ると、新しいターンが開始され、新しい上限が適用されます。
ターンとは、エージェントループ内の 1 回の往復です。Claude がツール呼び出しを含む出力を生成し、クライアントがそのツールを実行して、結果を次の判断のために Claude へ返します。このサイクルは、Claude がツール呼び出しを含まない応答を生成するまで繰り返されます。ターンの上限とは、1 回の回答で許可されるこの往復回数の上限です。
プランの利用上限は別の制御です
プランの上限は、一定期間内に使用した量を数えます。2026年8月18日に確認した Anthropic のエラーメッセージに関するヘルプセンターのページでは、上限に近いときは Approaching 5-hour limit.、上限を超えると 5-hour limit reached - resets [time]. と記載されています。時刻も示されます。その時刻まで待てば解消します。その間に入力しても解決しません。
ツール使用に関するメッセージは、これとは逆の動作をします。タスクの途中で表示され、続けて1通送るだけで作業をすぐ再開できます。残りのクォータは消費されません。確認方法は次のとおりです。待っても何も変わらず、続行すると動作する場合、クォータには達していません。クォータに達した場合は、Claude が上限に達したと表示した場合の対処方法に選択肢が記載されています。Claude の利用上限の計算方法では、その上限の基準となる期間について説明しています。
1 回のターンにツール予算が必要な理由
ツールを 1 回呼び出すたびにコンテキストを消費します。呼び出しが送信され、ツールが実行され、結果全体が会話に戻されます。大きなファイルを 1 つ読み込んだり、出力が長いコマンドを 1 つ実行したりするだけで、1 回の手順に数千トークンを使うことがあります。そのテキストはセッションの残りの間、コンテキストに保持されます。Anthropic の agent loop のドキュメントは、この結果を明確に説明しています。ターンを重ねるとコンテキストが蓄積するため、多数のツール呼び出しを含むセッションは、短いセッションよりはるかに多くのコンテキストを消費します。
ターンに予算を設定すると、進展しなくなったループを停止できます。検索し、読み込み、再度検索しても何も見つからないエージェントは、割り込みがない限り処理を続けます。予算がその割り込みになります。予算に達すると、作業を方向転換できる時点で制御が戻ります。これは、コンテキストウィンドウの終端までループを実行させるよりも、はるかに少ないコストで済みます。
API でこの制限を確認できる場所
Anthropic の公開エラー文書には、Claude チャットアプリの 1 ターンあたりのツール呼び出し回数は記載されていません。そのため、そこで読んだ正確な数値は誰かの推測です。同じ種類の制限は API(application programming interface)について文書化されており、実際の動作はその文書で確認できます。
Messages API のレスポンスにある stop_reason フィールドは、生成が停止した理由を示します。文書化されている値は end_turn、max_tokens、stop_sequence、tool_use、pause_turn、refusal、model_context_window_exceeded です。このガイドの状況に該当するものは 2 つあります。
pause_turn は、web search などの server tools の実行中に、サーバー側のサンプリングループが反復回数の上限に達した場合に返されます。2026 年 8 月 18 日時点では、停止理由の処理に関するページで、デフォルト値はリクエストあたり 10 回とされています。文書に記載された対処方法は、レスポンスを変更せず assistant message として送り返すことです。これにより、Claude は中断した位置から処理を続けます。これは、チャットウィンドウで「continue」と入力する場合に相当する API の動作です。
max_tokens は、レスポンスがリクエストで設定した出力トークン上限に達したことを示します。不完全な tool use ブロックの途中で切り詰められた場合、その tool call は実行できません。この場合、文書に記載された対処方法は、より大きい max_tokens を指定して再試行することです。
ここに記載された値をそのまま信頼せず、停止理由の処理に関するページで現在の値を確認してください。このページのデフォルト値は変更されるため、古い数値は数値がない場合よりも危険です。
ツール呼び出しを使い切る原因
- 自然な終了点がない質問。「X について書かれたものをすべて見つけてください」のような依頼では、検索の完了を示す情報がモデルにありません。
- 期待した場所に答えがないため、同じ資料を繰り返し読み取る。
- ツールの結果が大きい。長い Web ページや大きなファイルが、ターンの残りに必要な容量を消費します。
- 1 つのメッセージに複数の独立した作業を含める。各作業に個別のツール呼び出しが必要ですが、すべて同じ予算から消費されます。
- この作業で使用しないコネクターや MCP (model context protocol) サーバー。これらのツール定義がリクエストに読み込まれるため、モデルがそのターンで使える手段が増えます。
回答を完了させる方法
「continue」と返信するか、まだ不足している内容を示す短い指示を送ります。これにより新しいターンが開始され、新しい予算が割り当てられます。前の会話はコンテキストに残るため、Claude はすでに実行したツール呼び出しを繰り返さずに続行できます。
同じ場所で 2 回停止する場合は、1 回のターンには作業範囲が広すぎます。作業を分割してください。リポジトリ全体の監査を依頼する代わりに、まずファイル一覧を求め、その後は 1 メッセージにつき 1 ファイルについて確認します。大きな 1 回のターンでは完了できない作業でも、小さな 4 回のターンに分ければ完了できます。
モデルが探す範囲を絞ります。正確なファイルパスまたはエラー文字列を指定し、すでにログがある場合は貼り付けます。ログを貼り付けるだけなら 1 メッセージで済みます。モデルにログを探させると、複数のツール呼び出しが必要になり、誤ったログを見つける可能性もあります。
今すぐ必要のないコネクターは無効にします。接続されたツールはすべてのリクエストに定義を追加するため、コンテキストを消費し、モデルが選べる操作の範囲を広げます。同じ考え方は長時間のコーディングセッションにも当てはまります。Claude Code セッションのコンテキストを小さく保つことが、エージェントが作業を完了するか、途中で停止するかを分けます。
エージェントの実行時にターン数の上限を自分で設定する
自分のコードから Claude を実行する場合、1 ターンあたりの上限は自分で設定します。Claude Agent SDK(ソフトウェア開発キット)では、Python に max_turns、TypeScript に maxTurns が用意されています。これらは、ツール使用の往復回数の最大値として文書化されています。既定値は無制限です。
この上限に達すると、SDK は subtype が error_max_turns である結果を返します。また、単発の query() 呼び出しでは、Reached maximum number of turns というテキストを含むエラーが発生します。結果には num_turns と session_id も含まれるため、タスクを最初からやり直さず、上限を引き上げて同じセッションを再開できます。
CLI(コマンドラインインターフェイス)では、同じ制御をフラグで指定します。このフラグは print mode にのみ適用されます。
claude -p --max-turns 3 "summarise the failing tests"フラグのリファレンスによると、上限に達するとエラーで終了します。既定では上限がありません。費用に基づく同様の制御もあります。Python の max_budget_usd と TypeScript の maxBudgetUsd は、ターン数ではなく支出額のしきい値に達した時点でループを停止します。subagent の支出も合計に含まれます。月額料金を支払うサーバーでエージェントを実行する場合は、長時間の実行を始める前に VPS で AI エージェントの費用を制御する方法 を設定しておく価値があります。
承認を待機して一時停止することは、別の状態です。エージェントが停止し、支出も発生していない場合は、ターン数ではなく permission_mode を確認してください。ツールが人間の回答を待ったままになっている可能性があります。Claude Code の自動モードと権限設定では、確認を求めるモードと、確認なしで実行するモードについて説明しています。
現在の動作を自分で確認する方法
ここで説明する動作は告知なしに変わるため、このガイドに記載された数値は固定値ではなく、作成時点の情報として扱ってください。現在の状況は、次の2か所で確認できます。
- 停止理由に関する API ドキュメント。サーバーツールの反復におけるデフォルト値と、それを超えて処理を継続する方法が記載されています。
- エラーメッセージに関する Anthropic のヘルプセンターのページ。使用量制限の文言が記載されています。2026年8月18日に確認した時点では、このページに5時間単位および週単位の使用量メッセージは記載されていますが、ターン単位のツール上限については記載されていません。このため、ここではチャットアプリの公式な数値を示していません。
代わりに、自分の実行結果を測定してください。Claude Code では、/context により現在のコンテキスト使用量を色付きのグリッドで表示し、使用量の多いツールを確認できます。/compact は、空き容量を確保するために、それまでの会話を要約します。Agent SDK では、すべての結果に num_turns が含まれるため、上限を設定する前に、通常のタスクで実際に必要な往復回数を確認できます。自分のワークロードから得た数値は、フォーラムの投稿に書かれた数値よりも信頼できます。
FAQ
ツール使用上限は、Claude の使用上限と同じですか?
いいえ。使用上限は、一定期間内に使用した量を数え、リセット時刻を示すものです。そのため、解決策は待つことです。ツール使用に関するメッセージは、1 回の応答でツール呼び出しを使い切ったため、応答の途中で停止したことを示します。別のメッセージを送ると、新しいターンが始まり、新しい予算がすぐに割り当てられます。すぐに続行できる場合、問題はクォータではありません。Claude の使用上限の数え方で、クォータについて詳しく説明しています。
途中で停止したタスクを Claude に完了させるにはどうすればよいですか?
もう 1 通メッセージを送ってください。「Continue」でも機能しますが、残っている作業を指定する指示のほうが効果的です。モデルがすでに保持しているコンテキストを再構築せずに済むためです。2 回目も同じ箇所で停止する場合は、タスクを小さな単位に分け、1 メッセージにつき 1 つの作業を指定してください。正確なファイルパスを指定するか、内容を直接貼り付けると、最初に予算を使い切った検索作業を省けます。
「límite de uso de herramientas」または「limite de uso de ferramentas」とは何ですか?
これらは同じメッセージをスペイン語とポルトガル語で表したものです。通常は「límite de uso de herramientas en este turno」または「limite de uso de ferramentas neste turno」と表示されます。意味はどの言語でも同じです。Claude が 1 回の応答内で許可されたツール呼び出しを使い切ったことを示し、プランのクォータは関係ありません。対処方法も同じです。続行するよう返信するか、リクエストを小さな手順に分けてください。請求上限の場合は別のメッセージが表示され、リセット時刻が示されます。
プランをアップグレードすると、1 ターンあたりのツール使用上限は増えますか?
プランレベルと、ターンごとのツール予算は別の制御項目です。アップグレードによって増えるのは、一定期間内に使用できる量です。リセット時刻が示される上限はこれです。1 回の応答で実行できるツール呼び出し数は、モデルを実行するループの仕様です。Anthropic は、チャットアプリのこの数値を公開していません。実際に効果があるのは、どのプランでもタスクを小さなターンに分けることです。
自分の agent が数回のツール呼び出しだけで停止するのはなぜですか?
上限を設定していないか確認してください。Claude Agent SDK では Python で max_turns、TypeScript で maxTurns を使用し、コマンドラインインターフェースでは print モードで --max-turns を使用します。これらのいずれかに達すると、SDK は subtype が error_max_turns の結果を返し、Reached maximum number of turns というテキストを含むエラーを返します。どちらもデフォルトでは上限なしです。上限を設定していないのに実行が停止する場合は、結果の stop_reason を確認してください。max_tokens は出力上限に達したことを示し、pause_turn はサーバーのツールループが反復上限に達し、続行できるよう応答を返す必要があることを示します。