Claude Codeが遅い原因と対処|応答が遅い・固まるときの確認手順
この記事でわかること
- 「遅い」を症状別に切り分ける方法
- 会話が長くなると重くなる理由と、キャッシュが切れる操作
- モデル・effort・fast modeの見直し方
- MCPやプラグインなど、読み込む拡張の切り分け方
- 529やタイムアウトなど、混雑・通信が原因のときの見方
- CPU・メモリ、画面の崩れ、WSLでの検索の遅さへの対処
目次
- まず、どの遅さかを切り分ける
- 止まっているのか、動いているのかを見る
- 最初に試す3つ
- 会話が長いと、1回ごとが重くなる
- 毎回、会話の全体が送られる
- キャッシュが切れると、最初の1回が遅い
- キャッシュを切ってしまう操作
- 会話を短くする
- 自動の要約が止まるとき
- モデル・effort・fast modeを見直す
- 契約プランの既定は高性能なモデル
- 考える深さ(effort)を下げる
- fast modeは、同じモデルを速く動かす設定
- 思考そのものをオフにできるか
- 読み込む設定や拡張を減らす
- 「/context」で、何が場所を取っているか見る
- MCPサーバーは、起動と待ち時間に注意する
- 設定を無効にして、原因を切り分ける
- 混雑・通信・タイムアウト
- 529 Overloaded(混み合っている)
- 5xx(サーバー側の一時的な不具合)
- Request timed out・No response from API
- 通信が原因のとき
- コマンドの実行が長いとき
- パソコン・画面側が重いとき
- CPUやメモリの使用量が高いとき
- 固まって反応しないとき
- フルスクリーン表示に切り替える
- 文字が崩れる、古い表示が残る
- WSLで、検索が遅い・件数が少ない
- 順番に試す手順
- 相談を受けたときに、確認すること
- よくある質問
- まとめ
「Claude Codeに頼んでから、返事が始まるまでが長い」「最近、途中で止まったように見える」「画面がちらついて操作しづらい」と困っている方も多いのではないでしょうか。
一口に「遅い」といっても、原因はいくつかに分かれます。会話が長くなりすぎている場合もあれば、考える深さの設定が高い場合や、サービス側が混み合っている場合、パソコンやターミナルの描画が追いついていない場合もあります。原因によって直し方がまったく違うので、まず症状から原因を切り分けることが近道です。
この記事では、Claude Codeが遅い・重い・固まるときの原因と対処を、症状の切り分け、会話の長さ、モデルとeffort、読み込む拡張、混雑や通信、パソコンと画面の順に解説します。内容は2026年10月時点の公式ドキュメントをもとにしています。公式ドキュメントには「何%速くなる」といった数値が載っていない対処も多いため、この記事でも効果の大きさは断定せず、公式に書かれている範囲だけを紹介します。使用量を減らす方法は「Claude Codeのトークンを節約する方法」の記事で詳しく扱っているので、ここでは遅さの原因を見つけて直すことに絞ります。
まず、どの遅さかを切り分ける

最初に、どんな遅さなのかを言葉にしてみます。症状が分かれば、見るべき場所が決まります。次の表は、症状ごとに考えられる原因と、この記事で読む節をまとめたものです。
| 症状 | 考えられる原因 | 読む節 |
|---|---|---|
| 依頼してから、返事が始まるまでが長い | 会話が長い、キャッシュが切れた直後、モデルを切り替えた直後、サービス側の混雑 | 「会話が長いと、1回ごとが重くなる」「混雑・通信・タイムアウト」 |
| 返事が始まってから、終わるまでが長い | 考える深さ(effort)が高い、出力する量が多い、依頼が大きい | 「モデル・effort・fast modeを見直す」 |
| 始めたときから、いつも重い | CLAUDE.md・MCP・プラグインなど、最初に読み込む量が多い | 「読み込む設定や拡張を減らす」 |
| 「Retrying」「Request timed out」と出る | サービス側の混雑、通信の遅れ、社内ネットワーク | 「混雑・通信・タイムアウト」 |
| 画面のちらつき、文字の崩れ、スクロールの重さ | ターミナルの描画、表示方式 | 「パソコン・画面側が重いとき」 |
| 操作を受け付けない、固まる | メモリの使いすぎ、長い会話、拡張機能 | 「パソコン・画面側が重いとき」 |
| ファイルの検索が遅い・見つからない | WSLでWindows側のフォルダを使っている、検索ツールが動いていない | 「パソコン・画面側が重いとき」 |
止まっているのか、動いているのかを見る
返事が出てこないとき、本当に止まっているとは限りません。Claude Codeは、作業中のスピナー(待機中を示す表示)の横に、経過時間とトークン数(AIが書いた文字量の目安)を表示することがあります。公式ドキュメントでは、たとえば(10m 27s · ↓ 5.5k tokens)のような表示で、今の依頼でClaudeがここまでに書いた量を表すと説明されています。この数字が増えていれば、止まってはおらず、書いている最中です。
なお、この数字は「Claudeが書いた量」であり、会話の履歴や読み込んだファイルの分は含まれません。出力が始まるまでは表示されず、画面が狭いときも出ません。出力が始まらないまま長く待たされる場合は、会話の長さやキャッシュ切れ、混雑や通信の遅れなどが考えられます。
方向がずれていると気づいたときは、Escキーで止めて、指示を足せます。公式のベストプラクティスでも、道筋がずれたらすぐ止めて修正する方が、長く待ってからやり直すより効率がよいと案内されています。
最初に試す3つ
原因が分からないうちは、次の3つを順に試すと、範囲を絞れます。
- 「/doctor」を実行するインストールや設定、拡張機能の状態、文脈(会話の記憶の枠)の使われ方を調べて、直せるものは確認のうえで直してくれます。Claude Codeが起動できないときは、ターミナルで
claude doctorを実行します。 - サービスの状況を確かめる混雑や障害は自分では直せません。公式の状況ページ(status.claude.com)で、問題が出ていないかを見ます。
- 設定を無効にして試す
claude --safe-modeで起動すると、CLAUDE.md・スキル・プラグイン・フック・MCPサーバーなどを無効にした状態で動きます。これで軽くなるなら、原因は自分で入れた設定や拡張のどれかです。
「1回だけ遅い」のか「ずっと遅い」のかで考える
休憩のあとの最初の1回だけが遅い、モデルを切り替えた直後だけが遅い、という場合は、キャッシュ(前回の処理結果の再利用)が切れたことによるもので、2回目以降は戻るのがふつうです。ずっと遅い場合は、会話の長さ、設定、混雑、パソコン側のどれかに原因があります。
会話が長いと、1回ごとが重くなる

公式のベストプラクティスは、ほとんどの対策の前提として「Claudeの文脈(会話の記憶の枠)は早く埋まり、埋まるほど性能が落ちる」という点を挙げています。会話に入っているのは、あなたのメッセージだけではありません。Claudeが読んだファイルの中身や、実行したコマンドの出力も、すべて会話に積み上がります。
毎回、会話の全体が送られる
モデルは前回のやりとりを覚えていないため、Claude Codeは依頼のたびに、これまでの会話の全体をあらためて送っています。会話が長くなるほど、1回あたりに処理する量が増えます。使用量の面でも同じ仕組みで、詳しくは「Claude Codeのトークンを節約する方法」で解説しています。
そこで効いてくるのが、キャッシュです。前回までに処理した部分を再利用して、変わった部分だけを新しく処理します。公式ドキュメントでは、キャッシュによって、毎回すべてを処理し直すより速く、安く済むと説明されています。
キャッシュが切れると、最初の1回が遅い
キャッシュは、しばらく使わないと消えます。切れたあとの最初の依頼は、会話の全体を処理し直すため、公式ドキュメントも「席を外したあとの最初の1回は、はっきり遅くなることがある」と説明しています。有効な期間は、使い方によって違います。
| 使い方 | メインの会話のキャッシュの期間 |
|---|---|
| Claudeの有料プランで、プランに含まれる使用量の範囲内 | 1時間 |
| 使用クレジット(追加利用)に切り替わっているとき | 5分 |
| APIキー・クラウドプロバイダ経由 | 5分(既定) |
APIキーやクラウド経由で使っている場合は、promptCacheTtlという設定、または環境変数CLAUDE_CODE_PROMPT_CACHE_TTLで1hを指定すると、メインの会話のキャッシュを1時間にできます。ただし、公式ドキュメントでは、1時間のキャッシュは書き込みの料金が高くなる点も説明されています。短い作業を連続で行うだけなら、5分のままの方が得な場合もあります。
キャッシュを切ってしまう操作
休憩していなくても、操作によってはキャッシュが使えなくなり、次の1回が遅くなります。公式ドキュメントにある主なものを表にまとめました。
| 操作 | 起きること | 避け方 |
|---|---|---|
| 「/model」でモデルを切り替える | モデルごとにキャッシュが別なので、会話の全体を読み直す | モデルは作業の最初に決める。変えたいときは新しい会話で |
| effortを変える | 多くのモデルでは、会話の全体を読み直す。Opus 5.5・Sonnet 5.5・Haiku 5.5・Fable 5.1(APIキーまたはClaudeの契約)では、キャッシュは保たれる | 使っているモデルが対象かを確かめる |
| fast modeをオンにする | 最初の1回は、会話の全体をキャッシュなしで読み込む | 使うなら会話の最初からオンにする |
| MCPサーバーやプラグインを足す・外す | ツールの定義が変わると、読み直しになる場合がある(ツール検索で後回しにする既定の設定では、影響を受けにくい) | 作業の途中では変えない |
| 「/compact」で会話を要約する | 会話が短い要約に置き換わるので、そのあとのキャッシュは作り直し | 作業の切れ目で行う |
| 画像やPDFがたまる | 上限を超えると古いものが取り除かれ、そこから先を処理し直す | 不要になった画像を貼り続けない |
| Claude Codeを更新する | 更新後の最初の会話は、キャッシュを最初から作る | 更新は作業の区切りに行う |
「opusplan」というモデル指定は、計画モードに入るたびにOpusとSonnetが切り替わるため、そのたびにキャッシュが作り直されます。計画と実行で頻繁に行き来する作業では、思ったより遅く感じる場合があります。
「遅い1回」を、故障と間違えない
モデルの切り替え直後に遅くなるのは、故障ではなく、仕組みによるものです。公式ドキュメントでも、切り替えのあとに一度だけ遅い(キャッシュなしの)処理が走ると説明されています。2回目以降も遅いままなら、別の原因を探します。
会話を短くする
会話が長くなってきたら、次のコマンドで短くします。使い分けは次のとおりです。
| コマンド | やること | 使いどき |
|---|---|---|
| /clear | 会話を空にして新しく始める | 別の作業に移るとき。同じ指摘を2回しても直らないとき |
| /compact | 会話を要約して短くする | 同じ作業を続けたいとき |
| /rewind(Escを2回) | 過去の時点に戻す。途中から要約もできる | 道筋を間違えたとき |
| /btw | 会話に残さずに質問する | すでに出た内容の確認だけをしたいとき |
公式のベストプラクティスには、同じ問題で2回以上直しても直らないときは、会話に失敗した道筋が積もっているので「/clear」して、学んだことを入れた依頼を書き直した方がよいと書かれています。長く積もった会話より、きれいな会話に良い依頼を書く方が、たいてい良い結果になるという考え方です。
「/compact」は、キャッシュが有効なうちに行えば、読み込みは安く済み、時間のほとんどは要約を書く部分にかかります。一方で、長く休んだあとに実行すると、会話の全体を処理し直すため、重くなります。自動で要約が走るのを待つより、自分で作業の切れ目を選んで行う方が、残してほしい内容を指定できます。
休憩のあとに大きな会話を再開すると、ProやMaxでは、要約してから再開する選択肢が表示されることがあります。前の作業の細かい内容が不要なら、要約からの再開を選ぶと、以降の依頼が軽くなります。
自動の要約が止まるとき
会話が限界に近づくと、Claude Codeは自動で要約します。ところが、巨大なファイルやコマンドの出力が、要約した直後にまた会話を埋めてしまうことがあります。これが数回続くと、Autocompact is thrashing: the context refilled to the limit...というエラーが出て、無駄な呼び出しを避けるために自動の要約を止めます。公式ドキュメントでは、次の順で直すよう案内されています。
- ファイルを小分けにして読ませるファイル全体ではなく、特定の行の範囲や関数だけを読むように頼みます。
- 大きな出力を捨てる指示で要約するたとえば
/compact keep only the plan and the diffのように、残す内容を絞ります。 - 大きなファイルの作業をサブエージェントに任せる別の会話の枠で動くので、メインの会話が埋まりません。
- 前の会話が不要なら「/clear」するそれでも繰り返すときは、「/context」で、最初に読み込む内容の方が大きくないかを確認します。
モデル・effort・fast modeを見直す

返事が始まってから終わるまでが長い場合は、モデルと「考える深さ」の設定を見直します。ここでは、遅さの面から見たポイントだけを紹介します。モデルの種類や選び方の全体像は「Claude Codeのモデル変更方法」の記事にまとめています。
契約プランの既定は高性能なモデル
公式ドキュメントによると、Pro・Max・Team・Enterpriseの契約やAnthropic APIで使う場合、既定のモデルはOpus 5.5です。Opusは、公式の説明では複雑な推論向けのモデルです。簡単な作業が中心なら、より軽いモデルに切り替える選択肢があります。
| 指定 | 公式の説明 | 遅さの面での目安 |
|---|---|---|
| opus | 複雑な推論向けの最新のOpus | 複雑な作業向け。契約プランでは既定 |
| sonnet | 日常のコーディング作業向けの最新のSonnet | 多くの作業をこなせる。コストはOpusより低いと案内されている |
| haiku | 簡単な作業向けの、高速で効率のよいモデル | 単純な作業や調べものに向く |
公式ドキュメントには、モデルごとの応答速度を比べた数値は載っていません。「Haikuは高速で効率がよい」という説明と、「Sonnetはコストが低い」という説明があるだけです。体感での違いは、使っている作業や混み具合によっても変わるので、簡単な作業でモデルを下げて試し、違いを自分の目で確かめるのが確実です。
「/model」を開いてEnterキーで選ぶと、新しい会話の既定として保存され、「s」キーで選ぶと、いまの会話だけに適用されます。まずは「s」で試すと、元に戻す手間がありません。
考える深さ(effort)を下げる
effortは、Claudeがどれだけ深く考えてから答えるかの設定です。公式ドキュメントによると、レベルはlow・medium・high・xhigh・maxがあり(モデルによって選べる段階は異なります)、既定は次のとおりです。
- Opus 5.5・Sonnet 5.5・Haiku 5.5:
medium - Opus 4.7:
xhigh - そのほかの、effortに対応するモデル:
high
公式ドキュメントでは、effortを下げると、簡単な作業では速く、安く済むと説明されています。一方で、複雑な作業では質が下がる可能性があるとも書かれています。設定のしかたは次のとおりです。
| 方法 | 効く範囲 |
|---|---|
/effort | スライダーが開く。Enterで既定として保存、「s」でこの会話だけ |
/effort low | レベル名を直接指定する。/effort autoでそのモデルの標準に戻る |
claude --effort low | 起動した1回のセッションだけ |
環境変数CLAUDE_CODE_EFFORT_LEVEL | ほかの指定より優先される |
プロンプトにultrathinkと書くと、その1回だけ深く考えさせられます。反対に、いつもは低めにしておいて、難しい場面だけ上げる使い方もできます。
fast modeは、同じモデルを速く動かす設定
「fast mode」は、Opusを高速な構成で動かす設定です。公式ドキュメントでは、品質は同じまま、最大で2.5倍速くなる代わりに、トークンあたりの料金が高くなると説明されています。別のモデルではなく、同じOpusの設定を変えるだけです。「/fast」でオン・オフを切り替え、オンの間は入力欄の横に↯の印が出ます。
| 項目 | 公式ドキュメントの内容(2026年10月時点) |
|---|---|
| 対応モデル | Opus 5.5・Opus 5・Opus 4.8。SonnetやHaikuでは使えない |
| 料金 | Opus 5.5で、入力100万トークンあたり8ドル、出力40ドル |
| 契約プランで使う場合 | 使用クレジットから支払う。プランに含まれる使用量には入らない |
| Team・Enterprise | 初期状態では無効。組織のオーナーが有効にする必要がある |
| 使えない環境 | Amazon Bedrock、Google Cloud、Microsoft Foundryなどでは使えない |
| 位置づけ | 研究プレビュー。機能や料金は変わることがある |
速くなる代わりに、費用がかかる
fast modeは、使用量の上限とは別に、使用クレジットの費用がかかる設定です。会話の途中でオンにすると、そのときだけ会話の全体が割増の料金で読み込まれるため、使うなら会話の最初からオンにする方が費用は小さく済みます。急ぎの作業に限って使い、ふだんはオフにしておくのが無難です。
公式ドキュメントでは、fast modeとeffortは「どちらも応答の速さに関わるが、別の仕組み」と整理されています。fast modeは品質を保ったまま遅延を下げる設定、effortを下げる方は考える時間を減らす設定で、簡単な作業では、両方を組み合わせて最大の速さにできるとも説明されています。
思考そのものをオフにできるか
「思考をオフにして軽くする」方法もありますが、公式ドキュメントによると、Opus 5.5・Sonnet 5.5・Haiku 5.5・Fableのモデルでは、思考をオフにできません。これらのモデルでは、effortで調整します。思考の量を固定の上限で抑えるMAX_THINKING_TOKENSも、自動で配分するタイプのモデルでは効きません。「/effort」が選べるモデルは、まずeffortで調整すると考えてください。
読み込む設定や拡張を減らす

始めたときからずっと重い場合は、最初に読み込んでいるものが多すぎる可能性があります。Claude Codeは、最初のメッセージを送る前から、CLAUDE.md、スキルの説明、MCPサーバーのツール名などを読み込んでいます。これは毎回の依頼に付いてくる固定の荷物で、大きいほど、すべての依頼が重くなります。
「/context」で、何が場所を取っているか見る
まず「/context」を実行します。公式ドキュメントによると、システムのプロンプト、システムのツール、MCPのツール、サブエージェント、メモリのファイル、スキル、会話のメッセージというカテゴリごとに、文脈の使われ方が表示されます。何が大きいのかを見てから対策を選ぶと、無駄な作業をせずに済みます。
見直す対象と、確認に使うコマンドは次のとおりです。
| 見直すもの | 確認するコマンド | 主な対処 |
|---|---|---|
| CLAUDE.md・メモリ | /memory | 内容を短くする。手順書はスキルに移す |
| スキル | /skills | 使わないものを減らす |
| MCPサーバー | /mcp | 使わないサーバーを無効にする |
| フック | /hooks | 必要なものだけにする |
| プラグイン | /plugin | 使わないものを無効にする |
CLAUDE.mdを短く保つ方法や、スキルに移す考え方は、「Claude Codeのトークンを節約する方法」と「CLAUDE.mdとは?」の記事で詳しく扱っています。
MCPサーバーは、起動と待ち時間に注意する
MCPサーバーは、外部のサービスとつなぐための仕組みです。公式ドキュメントでは、MCPサーバーはバックグラウンドで接続され、まだ接続中のサーバーのツールが必要になると、Claudeがその接続を待つと説明されています。遅さに関わる点は次のとおりです。
- ツールの定義は、既定では後回しにされる:最初に読み込まれるのはツール名だけで、詳しい内容は使うときに読まれます。最初に読み込まれる量は抑えられています。それでも、使わないサーバーは「/mcp」で無効にしておくのが基本です。
- 起動の待ち時間:サーバーの起動にかかる時間の上限は、環境変数
MCP_TIMEOUTで指定できます(公式ドキュメントの例は、MCP_TIMEOUT=10000 claudeで10秒)。 - 長く動く呼び出し:メインの会話で、MCPのツール呼び出しが2分を超えると、バックグラウンドの作業に移り、Claudeは別の作業を続けられます。進み具合は「/tasks」で見られます。
- 出力が大きいとき:MCPツールの出力が1万トークンを超えると警告が出ます。出力の上限は、既定で2万5千トークンです。
どのMCPサーバーが原因かが分からないときは、次の「切り分け」の手順で、設定を無効にした状態と比べます。
設定を無効にして、原因を切り分ける
フックやプラグイン、MCPサーバー、CLAUDE.mdのどれが遅さの原因なのかは、見ただけでは分かりません。公式ドキュメントでは、まずclaude --safe-modeで起動して比べる方法が案内されています。セーフモードでは、次のものが無効になります。
| 無効になるもの | そのまま使えるもの |
|---|---|
| CLAUDE.md、スキル、プラグイン、フック、MCPサーバー、独自のコマンドやエージェント、出力スタイル、キーバインド | 認証、モデルの選択、組み込みのツール、権限 |
- セーフモードで起動するターミナルで
claude --safe-modeを実行し、遅かった作業と同じことを試します。 - 変わらないか、軽くなるかを見る軽くなるなら、原因は自分で入れた設定や拡張のどれかです。変わらないなら、会話の長さ、モデル、混雑、パソコン側を疑います。
- 候補を1つずつ戻す「/mcp」「/hooks」「/plugin」で、無効にしたものを1つずつ有効にして、どれで重くなるかを確かめます。
- それでも分からないとき新しい空のフォルダで、設定フォルダを別の場所に指定して起動する方法も、公式ドキュメントに載っています(
CLAUDE_CONFIG_DIRと--setting-sources userを使う)。
会社から配られた設定(管理設定)のうち、フックや設定の方針は、セーフモードでも適用されたままです(管理設定のプラグイン・スキル・CLAUDE.md・MCPサーバーは無効になります)。会社のパソコンで遅い場合は、情報システムの担当者に、管理設定の中身を確認してもらいましょう。
混雑・通信・タイムアウト

自分の側を見直しても改善しないときは、サービス側の混雑や、通信の遅れが原因かもしれません。公式のエラー一覧には、遅さに関わる表示が整理されています。
529 Overloaded(混み合っている)
API Error: Repeated 529 Overloaded errorsと表示される場合は、APIが一時的に容量いっぱいになっている状態です。公式ドキュメントでは、次のように説明されています。
- 使用量の上限とは別で、あなたの使用量には数えられない
- Claude Codeが自動で、最大10回まで、間隔を空けながら再試行する(回数は
CLAUDE_CODE_MAX_RETRIESで変えられる) - 再試行中は「Retrying in Ns · attempt x/y」と表示される
対処は、公式の状況ページ(status.claude.com)を確認し、数分待ってからやり直すことです。容量はモデルごとに管理されているため、「/model」で別のモデルに切り替えると進む場合があるとも書かれています。たとえば、Opusが混んでいるときにSonnetに切り替える、という使い方です。ただし、切り替えるとキャッシュが使えなくなる点は、先ほどの表のとおりです。
5xx(サーバー側の一時的な不具合)
API Error: 500 Internal server errorのような表示は、サーバー側で起きた予期しない不具合です。公式ドキュメントでは、依頼の内容や設定、アカウントのせいではなく、たいてい一時的とされています。状況ページを確認し、1分ほど待ってから、「try again」のように短く送り直せば、長い依頼を貼り直す必要はありません。長く続いて、状況ページにも障害の掲載がないときは、「/feedback」で報告します。
Request timed out・No response from API
応答が期限までに返らないときに出る表示です。公式ドキュメントによると、リクエストの期限の初期値は10分(API_TIMEOUT_MS、600000)です。混み合っているときや、非常に大きな出力を作っているときに起きることがあります。
通信が遅いネットワークやプロキシ(社内の中継サーバー)を通している場合は、期限を延ばせます。設定ファイル(~/.claude/settings.json)のenvに書く例が、公式ドキュメントに載っています。
{ "env": { "API_TIMEOUT_MS": "1200000" } }
ストリーミングの依頼では、最初の応答が一定時間来ないと中断して、1回だけ再試行する仕組みもあります。API Error: No response from APIと表示されたときです。プロキシが応答をまとめて返す構成の場合は、API_TIMEOUT_MSを延ばします。
期限を延ばしても、速くはならない
期限を延ばす設定は、待つ時間の上限を変えるだけです。応答そのものが速くなるわけではありません。「何度も途中で切れる」場合の対策と考えてください。
通信が原因のとき
「Waiting for API response · will retry in … · check your network」と表示されることがあります。公式ドキュメントでは、20秒間、データが届かないときに出る表示で、まだ失敗とは確定していない状態です。毎回この表示が出る場合は、通信の問題として扱うよう案内されています。
- 社内ネットワークやVPN、プロキシを通している場合は、別の回線(スマートフォンのテザリングなど)で試して、違いを確かめる
- 通信を中継する仕組みがあるときは、情報システムの担当者に、Anthropicへの通信が遮断・遅延していないかを確認してもらう
コマンドの実行が長いとき
テストやビルドなど、Claudeが実行するコマンドそのものが長い場合もあります。公式ドキュメントによると、コマンドの待ち時間の既定は2分(BASH_DEFAULT_TIMEOUT_MS)、Claudeが指定できる上限は10分(BASH_MAX_TIMEOUT_MS)です。コマンドが長いのは、Claude Codeの遅さではなく、実行している処理の遅さです。まずそのコマンドを、自分のターミナルで単独で実行して、どれだけかかるかを確かめます。
| 表示 | 意味 | まずやること |
|---|---|---|
| 529 Overloaded | APIが混み合っている。使用量には数えられない | 状況ページの確認、数分待つ、別のモデルに切り替える |
| 500などの5xx | サーバー側の一時的な不具合 | 1分待って「try again」と送る |
| Request timed out | 10分の期限までに応答がなかった | 再試行する。通信が遅い環境ではAPI_TIMEOUT_MSを延ばす |
| No response from API | 最初の応答が一定時間来なかった | 再試行が自動で1回行われる。繰り返すなら通信を確認 |
| Waiting for API response | 20秒間データが来ていない | 毎回出るなら、ネットワークを疑う |
混雑は自分では直せない
公式ドキュメントには、時間帯ごとの混み具合の傾向は書かれていません。混雑が原因の場合は、待つか、別のモデルに切り替えるしかないことを覚えておくと、自分の設定を探し回って時間を無駄にしなくて済みます。
パソコン・画面側が重いとき

返事そのものは来ているのに、画面が重い、ちらつく、固まるという場合は、パソコンやターミナル側の問題です。公式ドキュメントの「Performance and stability」の内容を中心に、症状別に紹介します。
CPUやメモリの使用量が高いとき
Claude Codeは、大きなコードベースを扱うと、多くのリソースを使うことがあります。公式ドキュメントでは、次の4つが案内されています。
- 「/compact」を定期的に実行する会話を要約して小さくします。「Not enough messages to compact.」と出る場合は、会話のやりとりが少なすぎて要約できない状態です。大きなものを1回貼り付けて枠を埋めた場合にも起こります。
- 大きな作業の合間に、再起動するClaude Codeを閉じて、開き直します。
- ビルドの出力フォルダを
.gitignoreに入れる大量のファイルが対象になるのを避けます。 claude --safe-modeで起動して比べるプラグイン・MCPサーバー・フックのどれかが原因かを切り分けます。
セッションのメモリ(ヒープ)が2.5GBを超えると、メモリ使用量が危険な水準であるという警告が出ます。公式ドキュメントでは、Claude Codeを再起動して、claude --continueで会話を新しいプロセスで再開すると、メモリを解放できると案内されています。
それでもメモリが減らないときは、「/heapdump」を実行します。メモリの内訳を、デスクトップにファイルとして書き出す診断用のコマンドで、コマンドメニューには表示されないため、全体を入力します。
書き出したファイルは人に渡さない
「/heapdump」が作る.heapsnapshotのファイルには、会話の全文と、認証情報を含む、プロセス内のすべての文字列が入っています。公開の場所に添付したり、共有したりしてはいけません。報告するときは、会話の内容を含まない-diagnostics.jsonだけを添付します。
固まって反応しないとき
反応がなくなったら、まずCtrl+Cで、いまの操作を取り消してみます。それでも反応がなければ、ターミナルを閉じて、開き直します。公式ドキュメントによると、再起動しても会話は失われません。同じフォルダでclaude --resumeを実行すると、続きから再開できます。
フルスクリーン表示に切り替える
画面のちらつきや、スクロール位置が飛ぶ症状には、「フルスクリーン表示」が有効な場合があります。公式ドキュメントでは、ちらつきをなくし、長い会話でもメモリの使用量を一定に保つ描画方式と説明されています。見えているメッセージだけを描くため、ターミナルへ送るデータが減ります。
- 切り替え:会話の中で
/tui fullscreenを実行します。会話は保たれたまま、再起動して切り替わります。 - 戻す:
/tui defaultで、従来の表示に戻ります。/tuiだけを実行すると、いまどちらかが表示されます。 - 効果が出やすい環境:VS Codeの統合ターミナル、tmux、iTerm2など、描画の処理が追いつかないターミナルです。
- 注意:研究プレビューの機能で、マウスの操作がClaude Codeに取り込まれるため、ターミナル標準のコピー操作が変わります。
環境によっては、最初からフルスクリーン表示になっています。「入力欄が動かず、画面の下に固定されている」なら、フルスクリーン表示が有効です。
文字が崩れる、古い表示が残る
画面の崩れは、描画の問題で、遅さとは別の対処になります。
| 症状 | 対処(公式ドキュメント) |
|---|---|
| VS Code・Cursorの統合ターミナルで、文字が四角や崩れた形になる | ターミナルのGPU描画が原因の可能性。「/terminal-setup」で、terminal.integrated.gpuAccelerationを"off"にする |
| Windows Terminalで、前の表示の断片が残る(フルスクリーン表示のとき) | 環境変数CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1を設定して起動する。PowerShellでは$env:CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT = "1"の後にclaude |
| 画面が崩れたり、一部が空白になる(フルスクリーン表示のとき) | Ctrl+Lで、会話と入力を保ったまま、画面を描き直す |
| マウスホイールで、1行ずつしか動かない(フルスクリーン表示のとき) | 「/scroll-speed」でスクロール量を上げる。PgUp・PgDnで半画面ずつ動く |
非常に大きな表(200行を超えるMarkdownの表)は、最初の200行だけが画面に表示されます。全体が必要なときは、Claudeに「ファイルに書き出して」と頼むと、読みやすくなります。
WSLで、検索が遅い・件数が少ない
Windows上のWSL(WindowsでLinuxを動かす仕組み)でClaude Codeを使うと、ファイルの検索が遅くなったり、見つかる件数が少なくなったりすることがあります。公式ドキュメントでは、WSLでWindows側のファイルシステムをまたいでアクセスすると、読み込みの性能が落ちるためと説明されています。claude doctorの検索の項目は「OK」と表示されるため、気づきにくい点に注意が必要です。
| 対処 | 内容 |
|---|---|
| 検索を具体的にする | ディレクトリやファイルの種類を指定して、検索の対象を減らす。たとえば「auth-serviceのパッケージで、JWTの検証の処理を探して」 |
| プロジェクトをLinux側に置く | /mnt/c/(Windows側)ではなく、/home/(Linux側)に置く |
| WSLを使わず、Windowsで直接使う | ファイルシステムの性能面で有利になる場合がある |
Globツール(ファイルを探す機能)の待ち時間は、既定で20秒、WSLでは60秒です(CLAUDE_CODE_GLOB_TIMEOUT_SECONDS)。検索が見つからない原因が、同梱の検索ツール(ripgrep)が動かないことの場合は、パソコンにripgrepを入れて、USE_BUILTIN_RIPGREPを0にする方法が案内されています。Windowsではwinget install BurntSushi.ripgrep.MSVCで入れられます。
順番に試す手順

ここまでの内容を、実際に遅いと感じたときに試す順番にまとめます。上から順に、手間が小さく、効果が大きそうなものを並べています。
- 動いているかを見るスピナーの横の経過時間とトークン数が増えていれば、書いている最中です。出力が始まらないなら、待つか、Escで止めて送り直します。
- 「Retrying」などの表示を読む529や5xx、タイムアウトの表示なら、状況ページを確認して、待つか、別のモデルに切り替えます。
- 会話の長さを見直す別の作業に移るなら「/clear」、続けるなら作業の切れ目で「/compact」します。同じ指摘を2回しても直らないなら、「/clear」して依頼を書き直します。
- モデルとeffortを、作業に合わせる簡単な作業は低いeffortやSonnet・Haikuで試します。会話の途中では切り替えないようにします。
- 「/context」で最初の読み込みを見る大きいものを、CLAUDE.md、スキル、MCPの順に見直します。
- セーフモードで比べる軽くなるなら、拡張を1つずつ戻して、原因を特定します。
- パソコン側を見るメモリ警告が出ているなら再開、画面の崩れならフルスクリーン表示や描画の設定、WSLなら保存場所を見直します。
それでも直らないときは、「/feedback」で、症状を公式に報告できます。公式のGitHubのリポジトリで、既知の問題を確かめる方法もあります。
相談を受けたときに、確認すること
社内で「Claude Codeが遅い」と相談されたとき、いきなり設定を触る前に、次の情報をそろえると、原因の絞り込みが速くなります。
| 確認すること | 調べ方 | 分かること |
|---|---|---|
| いつ、どんな操作で遅いか | 本人に聞く(休憩後だけか、常にか) | キャッシュ切れか、常時の問題か |
| 画面に出ている表示 | 画面の表示を、そのままメモやスクリーンショットで残す | 混雑・通信・タイムアウトの区別 |
| ログインの方法 | /statusの「Login method」または「API key」の行 | 契約プランかAPIキーかで、キャッシュの期間などが変わる |
| どのモデルとeffortか | /model、/effort | 既定のOpusのままか、深く考えさせていないか |
| 何が読み込まれているか | /context | CLAUDE.md・MCPなどの大きさ |
| 使っている環境 | OS、WSLか、どのターミナルか | 画面や検索の遅さの原因 |
| Claude Codeのバージョン | claude --version | バージョンごとの挙動の違いの確認 |
バージョンによる違いの例として、公式ドキュメントには、v2.1.208より前は、非常に大きな表を含む会話を再開すると、描画し直しで止まることがあったと書かれています。バージョンを確かめておくと、公式のドキュメントの記述と照らし合わせやすくなります。更新の方法は「Claude Codeのアップデート方法」の記事で解説しています。
よくある質問
昨日までは速かったのに、急に遅くなりました。何が考えられますか?
会話が長くなった、モデルやeffortを切り替えた、MCPやプラグインを足した、サービス側が混み合っている、などが考えられます。まず状況ページ(status.claude.com)を確認し、次に新しい会話で同じ作業を試します。新しい会話で速いなら、原因は会話の長さです。
休憩から戻った最初の返事だけが遅いのですが、故障ですか?
故障ではありません。キャッシュの有効期間が過ぎて、会話の全体を処理し直しているためです。公式ドキュメントでも、席を外したあとの最初の1回がはっきり遅くなることがあると説明されています。2回目以降は戻ります。
fast modeを使えば、いつでも速くなりますか?
Opusの応答が最大2.5倍速くなりますが、トークンあたりの料金が高くなります。契約プランでは使用クレジットから支払う形で、使用クレジットがオンになっていないと使えません。SonnetやHaikuでは使えません。急ぎの作業に限って使うのが無難です。
Sonnetに変えれば、Opusより速くなりますか?
公式ドキュメントには、モデルごとの応答速度を比べた数値は載っていません。Sonnetはコストが低いモデルとして案内されています。簡単な作業で実際に試して、違いを確かめてください。会話の途中で切り替えると、最初の1回は遅くなります。
プランによって、応答の速さは変わりますか?
公式ドキュメントには、プランごとの応答速度の違いについての案内はありません。プランによって変わるのは、キャッシュの有効期間、使える使用量、fast modeの利用可否などです。
夜や休日の方が速い、といったことはありますか?
公式ドキュメントには、時間帯ごとの混雑の傾向は書かれていません。「529 Overloaded」はAPIが一時的に容量いっぱいになっている状態で、全利用者に共通するものです。状況ページで確認し、続くようなら待つか、モデルを切り替えます。
1Mトークンの文脈(長い会話の枠)は、遅くなる原因になりますか?
公式ドキュメントには、速度への影響についての案内はありません。ただし、会話が長くなるほど、毎回送る量は増えます。長い枠があっても、作業の切れ目で「/clear」や「/compact」を使う方が、軽く保てます。
WindowsでWSLを使うのと、Windowsで直接使うのと、どちらが速いですか?
公式ドキュメントでは、WSLからWindows側のフォルダ(/mnt/c/)を使うと検索の性能が落ちるとされています。プロジェクトをLinux側(/home/)に置くか、WSLを使わずWindowsで直接使うことが対処として案内されています。
固まったとき、作業中の内容は失われますか?
会話は保存されているので、失われません。ターミナルを閉じて開き直し、同じフォルダでclaude --resumeを実行すれば、続きから再開できます。ただし、Claudeが作業の途中だったファイルは、中途半端な状態の可能性があるため、再開後に確認してください。
会社のネットワークだけ遅いときは、どうすればよいですか?
別の回線で試して、違いがあるかを確かめます。プロキシやVPNを通している場合は、応答が届くまでに時間がかかり、タイムアウトの表示が出ることがあります。情報システムの担当者に相談し、必要ならAPI_TIMEOUT_MSを延ばす設定を検討します。
原因が分からないときは、どこに報告すればよいですか?
Claude Codeの中で「/feedback」を使うと、公式に報告できます。公式のGitHubのリポジトリで、既知の問題かどうかを確かめる方法もあります。メモリの診断ファイルを添付するときは、会話の内容を含まない診断用のJSONファイルだけにします。
まとめ
この記事のまとめ
- 「遅い」は原因ごとに直し方が違う。返事が始まるまでか、終わるまでか、画面や固まりかを、まず切り分ける
- 経過時間とトークン数が増えていれば動いている。「/doctor」、状況ページ、
claude --safe-modeの3つで範囲を絞れる - 会話が長いと毎回の処理が重くなる。モデルの切り替えやキャッシュ切れの直後だけ遅いのは、仕組みによるもの
- 簡単な作業は、effortを下げる。fast modeは最大2.5倍速いが、使用クレジットの費用がかかる
- 529やタイムアウトなどの混雑・通信は、待つか、モデルを切り替える。
API_TIMEOUT_MSは待つ上限を変えるだけ - 画面やメモリの問題は、フルスクリーン表示、再起動と
claude --continue、WSLなら保存場所の見直しで対処する
遅さの原因は、設定の積み重ねや、使っているネットワーク、パソコンの環境にまたがることが多く、1人で調べると時間がかかります。数値で「何%速くなる」と示されていない対処が多いため、変更を1つずつ試して、効果を確かめながら進めることが大切です。
INTERCREATE JAPANでは、Claude CodeやCodexを社内で使い続けるための、環境の整備や使い方のルールづくりをお手伝いしています。社内で動きが重い、使い方が人によってばらつく、といった場合にご相談ください。
参考・出典
- Troubleshooting(Claude Code Docs)
- Error reference(Claude Code Docs)
- Speed up responses with fast mode(Claude Code Docs)
- Model configuration(Claude Code Docs)
- How Claude Code uses prompt caching(Claude Code Docs)
- Manage costs effectively(Claude Code Docs)
- Debug your configuration(Claude Code Docs)
- Fullscreen rendering(Claude Code Docs)
- Connect Claude Code to tools via MCP(Claude Code Docs)
- Environment variables(Claude Code Docs)
- Best practices for Claude Code(Claude Code Docs)
INTERCREATE JAPAN