/compact(会話圧縮)とは?
読み方: コンパクト
定義
Claude Code の会話履歴を要約・圧縮して、コンテキストウィンドウの空きを回復するスラッシュコマンド。長い会話で応答品質が低下したときに実行する。
詳しい解説
/compact は Claude Code の対話中に使えるスラッシュコマンドで、これまでの会話履歴を短い要約に圧縮し、コンテキストウィンドウの空き容量を大幅に回復させます。Claude Code はトークン数に上限があるコンテキストウィンドウの中で動作しており、会話が長くなるほど空きが減り、最終的に応答品質が低下したり、ファイルの内容を保持できなくなります。/compact を実行すると、会話全体を要約した短いサマリーに置き換えることで、この問題を解決します。Claude Code はコンテキスト使用率が 95% を超えると自動的に compact の実行を提案しますが、手動でいつでも実行できます。/compact にカスタムプロンプトを渡して要約の方針を指定することも可能です。たとえば /compact Focus on the API changes and ignore the CSS discussion と入力すれば、API 関連の文脈を優先的に保持しながら CSS の議論を省略した要約が生成されます。compact が保持する情報には、現在作業中のファイルパス、直近の変更内容、未完了のタスク、重要な意思決定の経緯などが含まれます。一方、初期の雑談やすでに完了した作業の詳細、長いエラーログの全文などは省略されるため、文脈を失わずに効率的な圧縮が実現できます。使いどころとしては、大量のファイルを読み込んだ後にウィンドウが逼迫した場合、複数のタスクを連続で行っている途中、エラーの試行錯誤で会話が膨らんだ場合などが挙げられます。なお、CLAUDE.md に記述したプロジェクト設定は compact 後も自動で再読み込みされるため、プロジェクト固有のルールやコーディング規約は常に維持されます。/compact と似たコマンドに /clear がありますが、こちらは会話を完全にリセットして白紙の状態に戻します。同じタスクを続けるなら /compact、まったく別の作業に切り替えるなら /clear を使い分けるのが効果的です。また、compact 実行後もこれまでに行ったファイル変更や Git コミットはそのまま残るため、作業成果が失われることはありません。あくまで Claude の記憶(会話履歴)が圧縮されるだけで、実際のコードやファイルシステムには一切影響しません。長時間の開発セッションでは /compact を定期的に挟むことで、常に高品質な応答を維持できます。
使用例
/compact