Claude Code を毎日使っていると、ある日ふと「最近やたら反応が遅いな」「なんか重い」と感じる瞬間があります。私も何度もありました。
結論から言うと、遅さの正体はほとんどがコンテキスト(会話の記憶)がふくらむことです。そしてその最大の原因は、ファイルの読み込み。長い会話を続けるほど、読み込んだファイルや出力が積み上がって、AIが毎回処理する量が増えていきます。
この記事では、
- なぜ Claude Code は重くなるのか(原因の切り分け)
- まず
/contextで「何が容量を食っているか」を見る /compact・/clear・モデル切り替えで軽くする判断順- CLAUDE.md やファイル読みの工夫で、そもそも重くしない
を、実際に使ってきた目線で整理します。難しい設定の前に、まず原因を見てから手を打つのが近道です。
━━━━
なぜ重くなるのか──原因はだいたいこの順
体感の遅さは、いくつかの要因が重なって起きます。効きやすい順に並べるとこうです。
| 原因 | 何が起きているか | 効き目 |
|---|---|---|
| ファイルの読み込み | 読んだファイルがコンテキストに残り続ける | 最大 |
| 長い会話履歴 | 試行錯誤・ツール出力が積み上がる | 大 |
| 巨大ファイルの一括読み | 1ファイルで大量に容量を食う | 大 |
| 重いモデルの選択 | 高性能モデルほど処理に時間がかかる | 中 |
| MCPツールの読み込み過多 | ツール定義をまとめて読むと重くなる | 中(後述・誤解注意) |
ポイントは、いちばん上の「ファイル読み込み」が一番効くということ。Claude Code 公式も「コンテキストはファイルの読み込みでいちばん増える」と説明しています。「会話が長い」よりも「何を読ませたか」のほうが効くわけです。
⚠️ よくある誤解:「MCPサーバを増やすと重くなる」。Claude Code は MCP のツール定義を必要になるまで読み込まない(遅延読み込み)設計なので、入れただけでは基本的に重くなりません。実際に使ったツールの分だけ読み込まれます。重くなるのは「全ツール定義を一気に読ませた」ようなケースです。
━━━━
まず /context で容量の中身を見る
闇雲に /clear する前に、何が容量を食っているかを見るのが最短です。Claude Code には確認コマンドがあります。
/context… 今のコンテキストの内訳(ファイル・メモリ・ルールなどが何トークン使っているか)を表示/usage… セッションの総トークン量と推定コスト、MCPサーバ別の内訳も確認- ステータスラインに常時表示 …
/configから設定すると、コンテキスト使用量を画面に出しっぱなしにできる
まず /context を打つと、「あ、この巨大ファイルの読み込みで一気に膨らんでたのか」と原因が一目で分かることが多いです。原因が分かれば打つ手が決まります。
━━━━
軽くする:/compact と /clear の使い分け
原因が「会話の積み上がり」なら、リセット系のコマンドが効きます。2つの違いはここです。
| コマンド | 何をする | 向いている場面 |
|---|---|---|
/compact | 会話を要約に圧縮(要点は残す) | 今の作業を続けたいが重い |
/clear | 履歴を完全リセット(白紙に戻す) | 別の作業に切り替える |
判断はシンプルです。
- 同じ作業を続けたい →
/compact。文脈の要点を残したまま身軽になれる - 作業が一区切り・別件に移る →
/clear。引きずらず最速
/compact focus on ○○ のように、残したい論点を指定することもできます。
自動圧縮もあるが、頼りすぎない
Claude Code はコンテキストが上限に近づくと、自動で古いツール出力を消したり会話を要約してくれます。ただしこれは万能ではなく、1ファイルや1出力が大きすぎると圧縮がうまく回らず詰まることがあります。そうなったら、自動に任せず自分で /clear して仕切り直すのが確実です。
/clearをいつ押すかの判断基準は、別記事「Claude Code の /clear はいつ使う?重くなったら即リセット」で4つのタイミングに分けて詳しく書いています。あわせてどうぞ。
━━━━
モデルを切り替える──速さは段階で選べる
モデルは性能が高いほど遅く、軽いほど速い、という関係です。重い・急ぎのときは軽いモデルに落とすと体感が変わります。
| 世代 | 速度 | コスト | 向き |
|---|---|---|---|
| Opus 系 | ゆっくり | 高め | 複雑な設計・難しい判断 |
| Sonnet 系 | 速い | 低め | 日常のコード作業全般 |
| Haiku 系 | 最速 | 最安 | 単純作業・軽い修正 |
/model コマンドでセッション中にいつでも切り替えられます。「設計を詰める場面は Opus、淡々と直す場面は Sonnet/Haiku」と場面で使い分けると、速さもコストも無理なく整います。
※モデルの具体的な名称・バージョンは更新が速いので、Claude Code 自体を最新に保つことだけ前提にしてください。トークン消費とコストの考え方は「Claudeのトークン消費を徹底比較!おすすめ節約設定」で詳しくまとめています。
━━━━
そもそも重くしない──毎回効く予防策
その場の対処だけでなく、最初から膨らみにくくすると再発しません。
1. CLAUDE.md を太らせすぎない
プロジェクトとグローバルの CLAUDE.md は毎セッション自動で読み込まれるので、長いほど常に容量を食います。目安は200行以下。膨らんできたら、特定の手順(デプロイ手順・レビュー手順など)はスキル(skill)に移すのがおすすめです。スキルは使うときだけ読み込まれるので、普段はゼロコストです。
2. 巨大ファイルの全文読みを避ける
「このファイル全部読んで」ではなく、「auth.ts のこのバグを直して」のように具体的に頼むと、Claude Code は必要な箇所だけを grep して読み込みます。読ませる量が減れば、それだけ軽くなります。
3. 調べ物はサブエージェントに任せる
広い範囲を探す調査系の作業は、サブエージェント(Agent)にまかせると、その読み込みは別のところで完結し、手元の会話には要約だけが返ってきます。本体の会話に余計なものを増やさずに済むので、長い作業でも重くなりにくいです。
4. 中断は /clear でなく保存・再開で
文脈を残したまま一旦離れたいときは、リセットせずにセッションを保存して後で /resume で戻る運用にすると、毎回読み直しが減ります。
━━━━
まとめ:迷ったらこの順番
重い・遅いと感じたら、上から順に試すだけです。
/contextで原因を見る(だいたいファイル読み込みか会話の長さ)- 続けたいなら
/compact、別件に移るなら/clear - 急ぎ・単純作業なら
/modelで軽いモデルへ - 詰まって自動圧縮が効かないなら、早めに
/clearで仕切り直し - 予防として CLAUDE.md を200行以下・具体的な指示・調査はサブエージェント
遅さの9割は「読ませすぎ」です。まず /context で中身を見て、原因に合った1手を打つ。これだけで、Claude Code はぐっと軽くなります。
関連記事もどうぞ。
のむが普段どんなツールで何を作っているかはプロフィールにまとめています。