auto-compactは「会話の要約係」
Claude Codeを使っていると、そのうち画面に「compacting conversation」のようなメッセージが出て、少し待たされることがあります。これがauto-compact(オートコンパクト)です。日本語にすると「自動圧縮」。それまでの会話を要約して短くまとめ、続きを話せるようにしてくれる仕組みです。
正直、最初にこれを見たときは「え、今なんか消えた?」と不安になる人が多いと思います。私も最初はそうでした。でも中身がわかると、むしろありがたい機能だとわかります。
なぜ圧縮が必要なのか
AIには「一度に読める文章の量」に上限があります。これをコンテキストウィンドウと呼びます。会話が長くなると、これまでのやり取り全部がその上限に近づいていきます。
身近な例で言うと、ホワイトボードでの打ち合わせに似ています。議論しながらホワイトボードに書き込んでいくと、いつか書く場所がなくなります。そこで誰かが「ここまでの結論だけ左端にまとめておきますね」と書き直して、残りを消す。空いたスペースでまた議論を続けられる。auto-compactがやっているのは、まさにこれです。
圧縮されると何が起きる?
細かい言い回しや、途中で試して捨てたコマンドの出力といった「もう要らない部分」は落ちます。代わりに、何を作ろうとしているのか、どのファイルを触ったのか、どういう方針で進めているのか、といった要点が残ります。
つまり、会話が消えてゼロに戻るわけではありません。要約という形で引き継がれます。とはいえ、要約は要約です。100%そのまま残るわけではないので、圧縮の直後にAIが少し前提を取り違えることはあります。
初心者がハマりやすいポイント
よくあるのが、圧縮のあとに「さっき言ったあの書き方で」と指示して、AIがピンとこない、というパターン。人間側は覚えているけれど、AIの手元では要約に丸められている、という状態です。
対策はシンプルで、圧縮が走ったあとは大事な前提をもう一度短く伝え直すこと。「今はsrc/api配下を触っていて、エラーハンドリングはtry-catchに統一する方針です」くらいの一行を添えるだけで、だいぶ噛み合います。
圧縮を減らすちょっとしたコツ
- ひとつの作業が終わったら、思い切って新しい会話を始める。長く引きずるほど圧縮の回数は増えます
- 巨大なログやファイル全体を丸ごと貼り付けない。必要な範囲だけ渡す
- プロジェクトの前提(使っている言語、ディレクトリ構成、コーディング規約など)は、会話の中で毎回説明するのではなく、プロジェクト用の設定ファイルに書いておく。そうすれば圧縮で流れてもAIが参照できます
「自動」がつく意味
auto-compactの「auto」は、こちらが何もしなくても、上限が近づいたら勝手に走るという意味です。放っておいても会話が突然行き止まりになりにくい、という安心感がある一方で、自分の意図しないタイミングで割り込んでくることもあります。
そのため、大事な作業の途中で圧縮が入るのが困る場合は、キリのいいところで自分から会話を区切ってしまうほうが結果的に安全です。長距離ドライブで、ガス欠寸前まで走らずに、余裕のあるうちにガソリンスタンドに寄るのと同じ感覚ですね。
覚えておきたいこと
auto-compactは、長い会話を続けるための延命装置であって、記憶を完璧に保つ魔法ではありません。「要約されたんだな」と理解して、必要な前提を自分から補い直せるようになると、長時間の作業でも急に精度が落ちる感じが減っていきます。
このページは役に立ちましたか?