入門
/compact でコンテキストウィンドウを最適化する
会話が長くなったときに /compact を使ってコンテキストを圧縮し、パフォーマンスを維持する方法
contextperformanceslash-commands
/compact でコンテキストを圧縮する
長いセッションを続けていると、Claude Code のコンテキストウィンドウが圧迫され、応答品質が低下することがあります。/compact コマンドを使うと、会話履歴を要約して圧縮し、コンテキストの空き容量を回復できます。
基本的な使い方
> /compact
これだけで、Claude Code が会話の重要なポイントを要約し、コンテキストを圧縮します。
圧縮時の指示を追加する
/compact に引数を渡すと、圧縮時に何を優先して残すかを指定できます。
> /compact 認証フローの実装詳細とAPIエンドポイントの設計を残して
これにより、指定したトピックに関する情報が要約内で強調され、後続の会話で参照しやすくなります。
自動圧縮との違い
Claude Code は コンテキスト使用率が95%に達すると自動的に圧縮を実行しますが、これには以下の問題があります。
- 重要な文脈が失われる可能性がある
- 論理的な区切りではないタイミングで圧縮される
推奨プラクティス: 大きなタスクの区切り(機能実装の完了、ファイルのコミット後など)で手動 /compact を実行しましょう。これにより、圧縮のタイミングと内容をコントロールできます。
PreCompact フックの活用
上級者向けとして、圧縮前に状態を保存するフックも設定できます。settings.json の hooks ブロックで PreCompact イベントをリッスンすることで、圧縮前にプロジェクトの状態を退避できます。
いつ使うべきか
| シチュエーション | 推奨アクション |
|---|---|
| 長いリファクタリングセッション | 各ファイル完了後に /compact |
| 複数ファイルの横断変更 | 論理的なまとまりごとに /compact |
| デバッグセッション | 原因特定後に /compact、修正前に再開 |
| 自動圧縮が頻発する | より早いタイミングでの手動圧縮を検討 |
あわせて読む
- CLAUDE.md でプロジェクトのルールを定義する - メモリの階層構造の基本
- # プレフィックスで素早くメモリに追加する - 即座にメモリに追加する方法