CLAUDE LABEN
FORK — Claude Code 2.1.212で/forkの挙動が変わりました。会話を新しいバックグラウンドセッションへ複製し、作業を続けたまま並走できます。従来のセッション内サブエージェントは/subtaskに移りましたLIMITS — WebSearchの呼び出しがセッション単位で既定200回に制限されました。サブエージェントの起動も既定200回が上限で、暴走した検索・委譲のループを止められますMCPBG — 2分を超えるMCPツール呼び出しは自動的にバックグラウンドへ移り、セッションが固まらなくなりました。しきい値はCLAUDE_CODE_MCP_AUTO_BACKGROUND_MSで調整できますPLANFIX — プランモードがtouchやrmといったファイルを変更するBashコマンドを、許可プロンプトもcanUseToolコールバックも通さずに実行してしまう不具合が修正されましたSONNET5 — Claude Sonnet 5は導入価格として入力100万トークンあたり2ドル、出力10ドルで提供中です。8月31日を過ぎると3ドルと15ドルに戻りますIPO — Anthropicが早ければ10月の株式公開を視野に、引受銀行が投資家との面談を組み始めたと報じられていますFORK — Claude Code 2.1.212で/forkの挙動が変わりました。会話を新しいバックグラウンドセッションへ複製し、作業を続けたまま並走できます。従来のセッション内サブエージェントは/subtaskに移りましたLIMITS — WebSearchの呼び出しがセッション単位で既定200回に制限されました。サブエージェントの起動も既定200回が上限で、暴走した検索・委譲のループを止められますMCPBG — 2分を超えるMCPツール呼び出しは自動的にバックグラウンドへ移り、セッションが固まらなくなりました。しきい値はCLAUDE_CODE_MCP_AUTO_BACKGROUND_MSで調整できますPLANFIX — プランモードがtouchやrmといったファイルを変更するBashコマンドを、許可プロンプトもcanUseToolコールバックも通さずに実行してしまう不具合が修正されましたSONNET5 — Claude Sonnet 5は導入価格として入力100万トークンあたり2ドル、出力10ドルで提供中です。8月31日を過ぎると3ドルと15ドルに戻りますIPO — Anthropicが早ければ10月の株式公開を視野に、引受銀行が投資家との面談を組み始めたと報じられています
記事一覧/Claude Code
Claude Code/2026-05-02中級

Claude Code が途中で止まる・フリーズする問題の完全診断ガイド

Claude Codeが途中で止まる・フリーズする問題を症状別に診断。コンテキスト枯渇・サブエージェント無応答・無限ループなど主要な原因と即効対処法を網羅した実践ガイド。

claude-code129troubleshooting61debug4context5subagent4フリーズ

長い作業を任せていたら、Claude Code がぴたりと動きを止めた——そんな場面、開発中に何度か経験したことはないでしょうか。カーソルは点滅しているのに何も起きありません。Bash コマンドを実行した後から応答がありません。中断すべきか、もう少し待つべきか判断に迷う、あの感覚です。

私も最初はこの「途中停止」問題に頭を悩ませていました。ネット上の情報は「ネットワークを確認してください」という的外れなものが多く、Claude Code に固有の原因を把握するまでに相当時間がかかりました。

止まり方の症状から原因を特定して対処するまでの手順を実例とともに整理しました。主な原因は3つのカテゴリに分かれており、それぞれ診断アプローチと対処法が異なります。順を追って見ていきます。

止まり方の「症状」で原因カテゴリを絞り込む

まず最初にやるべきことは、どんな止まり方をしているかを観察することです。Claude Code が止まるとき、その状況には必ずパターンがあります。

すぐに止まる(数秒〜1分以内)

  • ツール呼び出し直後から応答なし → ツール実行エラー、MCP 接続問題
  • コマンドを入れた直後から固まる → Hooks 設定のエラー、認証問題
  • Edit ツールを使おうとすると止まる → ファイルロック、パーミッション問題

しばらくしてから止まる(数分後)

  • コンテキスト残量が少なくなったタイミング → コンテキストバジェット枯渇
  • サブエージェントに作業を渡した後 → サブエージェントの無応答・エラー
  • 同じ操作を繰り返しているように見える → 無限ループ

この分類ができたら、次は Ctrl+C で安全にセッションを中断し、直前の出力を落ち着いて読みます。Claude Code はほぼ必ず何らかのメッセージを出力しています。それを無視してリセットするのは、診断の機会を捨てているのと同じです。

# セッションのログを確認する(Claude Code のデフォルトログパス)
cat ~/.claude/logs/claude-code.log | tail -100

では、3つの原因カテゴリを順に見ていきます。

原因① コンテキストバジェット枯渇(最多ケース)

私の体感では、「途中で止まる」問題の半分以上がこれです。Claude Code には各セッションで使用できるトークン量に上限があります。この上限に近づくと動作が変わり、場合によっては処理を止めてユーザーの判断を待つ状態になります。

枯渇のサインを見分ける

セッション後半でステータスバーのトークン残量表示が赤くなっていたり、以下のようなメッセージが出ていたりしたら確定です。

Context window is 95% full. Consider starting a new conversation
or using /compact to summarize the conversation.

また、Auto Compaction が有効な環境では、Claude Code が自動で会話を要約しようとするタイミングで一瞬固まることがあります。これは正常動作ですが、要約処理に数十秒かかることがあるので、中断前に少し待ってみてください。

対処法:まず /compact で再開を試みる

最も手軽な即時対応は /compact コマンドです。

# Claude Code セッション内で実行
/compact

現在の作業状態を保ちながらコンテキストを圧縮して続きから再開できます。ただし圧縮後は会話の細かい経緯が失われるため、重要な決定事項やコードの設計意図は CLAUDE.md や別ファイルに記録しておくことを強くお勧めします。

対処法:タスクを事前に分割する

根本的な解決策は、最初からタスクを小さく区切ることです。「このプロジェクト全体を TypeScript に移行して」と一度に頼むより、次のように段階を分けると各ステップでコンテキストをリセットできます。

# 良い例:段階的な依頼
ステップ1: まず src/lib/ ディレクトリだけ TypeScript に変換して。
 → 確認・コミット
ステップ2: 次に src/components/ を変換して。
 → 確認・コミット
ステップ3: 最後に src/app/ を変換して。

コンテキスト管理の詳細はClaude Code のコンテキストバジェット最適化ガイドにまとめています。Auto Compaction の仕組みと設定についてはClaude Code Auto Compaction トラブルシューティングが参考になります。

原因② ツール・サブエージェントの無応答

Claude Code がツール(Bash, Edit, Read など)やサブエージェント(Task ツール)を呼び出した後、その応答を待ち続けている状態です。外から見ると「止まっている」ように見えますが、実際は「応答待ち」です。この違いを意識すると対処が変わります。

Bash ツールのハング

長時間かかる Bash コマンドが返ってこないパターンです。npm install、大量ファイルの検索、外部 API への接続、DB マイグレーションなどが典型例です。

# 止まりやすいパターン(対象範囲が広すぎる)
find / -name "*.log" -size +100M  # ルートからの全検索は数分〜数十分かかる場合も
 
# 改善パターン(スコープを明確に絞る)
find /var/log /tmp -name "*.log" -size +100M -mtime -7

Claude Code に Bash コマンドを渡す際は、事前にターミナルで実行してみて実行時間を確認しておくのが確実です。特に初めて扱うコマンドや、対象ディレクトリが大きい場合は timeout コマンドで安全網を設けましょう。

# timeout を付けることで最大30秒で強制終了させる
timeout 30 npm run build || echo "Build timed out, check manually"

MCP サーバーの無応答

MCP ツールを使っている場合、MCP サーバー側が応答を返せない状態になると Claude Code が待ち続けます。まず /mcp コマンドで接続状態を確認します。

# Claude Code 内で実行 — 接続中の MCP サーバーの状態を一覧表示
/mcp

ステータスが disconnectederror になっている MCP サーバーがあれば、それが原因です。該当サーバーを再起動するか、~/.claude/claude_desktop_config.json(または settings.json の mcp 設定)を確認してください。

MCP 接続問題の詳細な診断手順はClaude Code MCP 接続エラーの完全トラブルシューティングで解説しています。

サブエージェントが返ってこない

マルチエージェント構成で Task ツールにより作業を委任した場合、サブエージェントが完了しないと親エージェントが無期限に待ち続けます。

サブエージェントの無応答には主に3つのパターンがあります。

パターン A: サブエージェント自身もコンテキスト枯渇している サブエージェントは独立したセッションを持つため、長い作業を渡すとそちらもコンテキストが枯渇します。サブエージェントへの依頼は「短く、明確に、完了条件をセットで」が鉄則です。

# 悪い例:曖昧で大きすぎる
Task: このプロジェクト全体のテストを書いて

# 良い例:スコープと完了条件が明確
Task: src/utils/formatter.ts の単体テストを vitest で書いて。
正常系2ケース・異常系1ケースを含めること。完了したらテストを実行して全件パスを確認して。

パターン B: 許可が必要なアクションに遭遇している サブエージェントがファイル削除や外部コマンド実行など、デフォルトで許可が必要なアクションに直面すると、ユーザーの確認を待って止まります。--auto モードか、allowedTools の設定を見直しましょう。

パターン C: サブエージェントが連鎖している サブエージェントが別のサブエージェントを起動してしまう「エージェント連鎖」が起きると、制御が戻ってこなくなります。サブエージェントへの指示に「Task ツールは使わないこと」と明記するのが有効です。

サブエージェント問題の詳細な診断はClaude Code サブエージェントが返ってこない問題の対処法に詳しく書いています。

原因③ 無限ループとタスク放棄

Claude Code が同じ操作を繰り返していたり、進捗がないまま延々と処理を続けているパターンです。ループに入るとコンテキストも急速に消費されるため、放置すると原因①と重なって複合的な問題になります。

無限ループの兆候

以下のような状況が続いていれば、ループに入っている可能性が高いです。

  • 同じファイルを Read → Edit → Read → Edit と繰り返している
  • 同じエラーメッセージが何度も表示される
  • Todo list に完了マークがつかない項目が増え続けている
  • Bash の実行履歴に同じコマンドが何度も登場している

このケースは、Claude Code に「今何をしているか」を確認するだけで解消することが多いです。

(セッションに入力)
今どこまで進みましたか?完了したタスクと、今まさに何を試みているかを教えてください。

Claude Code は問われると自分の状態を振り返るため、これだけでループから抜け出すことがあります。もし抜け出せなければ Ctrl+C で中断し、問題を整理した上で再依頼するのが最速です。

タスク放棄後の待機

Claude Code が困難な状況に直面したとき、タスクを途中で放棄してユーザーの確認を待つ状態になることがあります。画面には何も表示されず、ただ点滅するカーソルだけという状況です。

これを防ぐには、プロンプトで「迷ったらどうするか」を最初から指定しておくのが有効です。

# CLAUDE.md に記載しておくとよい指示の例
## 作業中のルール
- エラーが発生した場合、まず3回まで自分で解決を試みること
- 解決できない場合はエラーメッセージと試みた内容をまとめてから報告すること
- 不明点があっても確認なしに進めてよい。判断に迷った場合は最善と思われる選択をとること

こうした指示があると、Claude Code は迷っても処理を続けようとします。詳細はClaude Code タスク放棄とプロンプト検証ループの改善で解説しています。

全体を振り返って:症状を観察してから中断する習慣を

「途中で止まる」問題への最も有効な対処は、焦らず症状を観察することです。

止まったらまず Ctrl+C で安全に中断し、直前の出力を確認します。それだけで原因カテゴリの大半は特定できます。

コンテキスト枯渇なら /compact で再開、ツール無応答なら対象コマンドを見直す、ループなら現状確認を促す——それぞれの対処はシンプルです。複雑に見えても、症状を分類する目さえ持てば対応できます。

まずは今の Claude Code セッションにステータスバーのトークン残量が表示されているか確認してみてください。それが「止まる問題」の最初の手がかりになることが多いです。

シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

Claude Code2026-04-24
Claude Code のサブエージェントが結果を返さない時の診断手順
Claude Code のサブエージェントが止まる・結果を返さない時、どこから調べるかの実践的な診断フローを、症状別の原因とコード例で解説します。
Claude Code2026-05-05
Claude Code MCP 接続トラブル完全診断ガイド
Claude Code の MCP サーバーが繋がらない・途中で切れる・ツールが見つからない問題を根本から診断する。設定ファイルの構造から通信ログの読み方、よくある落とし穴まで、実際のエラーパターンをもとに体系的に解説します。
Claude Code2026-05-05
Claude Code でよく出るエラー5選と即解決策
Claude Code 開発中によく遭遇するエラー5種類を原因と解決策のセットで解説。Permission denied・レート制限・MCP接続・コンテキスト超過など、詰まりがちなポイントを実体験をもとに整理しました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →