Claude Codeで作業していて会話が長くなると、動作が重くなったり、前の話を忘れ始めたりします。そんなときに使うのが /compact です。流れを切らずに、会話を軽くできます。
そもそもどれだけ覚えていられるのかという上限の話は、Claude Codeのコンテキストウィンドウに分けて書いています。
なぜ会話が長くなると忘れるのかは、別記事に書きました。
/compactは「これまでの要約」を作る
/compact は、それまでの会話を要約して圧縮するコマンド(入力欄に打ち込む命令)です。Claude Codeの入力欄に /compact と打つだけで使えます。
# 入力欄に打つ
/compact
長くなったやりとりを、要点だけ残した短い形にまとめ直す。これにより、AIが覚えておく量が減って動作が軽くなり、大事な文脈は要約として残るので、作業の流れも途切れません。会話の「これまでのあらすじ」を作って、続きから再開するイメージです。ドラマの冒頭で「前回までのあらすじ」が流れると、本編にすぐ入れるのと同じ感覚です。
/clearとの違い
似たコマンドに /clear があります。違いを押さえておくと使い分けられます。
/clear は会話をまっさらに消す。これまでの文脈はすべて消えて、ゼロから始まります。一方 /compact は、要約という形で文脈を残したまま圧縮する。
つまり、「今の話の続きをやりたいけど会話が重い」なら /compact、「まったく別の作業に切り替えるから前の文脈は要らない」なら /clear。私はこう使い分けています。
コマンド | 文脈 | 使う場面 |
|---|---|---|
| 要約して残す | 同じ作業を続けたい |
| 全部消す | 別の作業に切り替える |
使うタイミング
/compact を使うべきタイミングは、いくつかあります。
会話が長くなって動作が重いと感じたとき。前に伝えた前提を忘れ始めたと感じたとき。ひとつの作業に区切りがついて、同じ流れで次に進むとき。このあたりが目安です。
私の場合、大きな作業のあいだに「ここまでできた」という区切りがついたら、一度 /compact を挟みます。これで後半も最初の頃と同じ調子で進められます。
圧縮で抜け落ちることもある
正直に注意点も書きます。要約である以上、細かいニュアンスが抜け落ちることがあります。
私が一度やらかしたのは、細かい指定をいろいろ伝えた直後に /compact して、その細部が要約から漏れていたこと。圧縮後に「さっきの細かい条件、覚えてる?」と確認したら、ざっくりしか残っていませんでした。大事な前提は、圧縮に頼らず、前提を書いておく専用のメモファイル(CLAUDE.md)に書いておくのが確実です。
自動で圧縮されることもある
手動で /compact を打つほかに、会話がコンテキストの上限(AIが一度に覚えていられる量の限界)に近づくと、自動で圧縮が走ることもあります。
そのため、急に応答の調子が変わったように感じたら、裏で圧縮が起きて、細かい文脈が要約に置き換わった可能性があります。これを知っていれば、「さっきまでできていたのに」と戸惑わずに、必要な前提をもう一度伝え直せます。自動・手動どちらの圧縮でも、抜け落ちる前提がある前提で付き合うのが安全です。
長時間セッションを安定させる
/compact は、長時間の作業を安定させる地味だけど効くコマンドです。
長いセッションを守る工夫は、ターミナル側の記事も参考になります。
会話を区切って圧縮しながら進める。この習慣があると、半日がかりの作業でも、最後まで頭のさえたClaudeと付き合えます。
まとめ
/compactはこれまでの会話を要約して圧縮し、文脈を保ったまま軽くするコマンド/clearは文脈を全部消す。続けるなら/compact、切り替えるなら/clear- 動作が重い・前提を忘れ始めた・作業に区切りがついた、が使うタイミング
- 要約なので細かいニュアンスは抜け落ちることがある
- 大事な前提は圧縮に頼らずCLAUDE.mdに書いておく
- 区切って圧縮しながら進めると、長時間の作業も最後まで安定する





