Görünüm
Metin boyutu
Yazı tipi
Satır aralığı
4
Bölüm 4 · 3 dk

Compaction neyi tutar, neyi kaybeder

Compaction geçmişinizi bir özetle değiştirir, sonra birkaç şeyi kurala göre geri koyar. Hangilerini bilirseniz onu yönlendirebilir, /clear, /compact ve rewind arasında seçim yapabilirsiniz.


Geçmişin yerini bir özet alır

Pencere sınıra yaklaşınca Claude Code compact eder. Uzun geçmiş yapılandırılmış bir özetle değiştirilir ve iş oradan devam eder. Aynısını /compact ile kendiniz de yapabilirsiniz.

Takas basit. Yer geri kazanırsınız, ayrıntıyı kaybedersiniz. Özet bir kararın verildiğini hatırlar. Tam hata mesajını ya da bir diff'in üçüncü satırını hatırlamayabilir.

Önemli olan, compaction'ın boş sayfa olmaması. Birkaç şey kurala göre geri konuyor, birkaçı konmuyor.

Neler geri gelir

Compaction'dan sonra Claude Code şunları yapar:

  • Yakın zamanda dokunulmuş en fazla beş dosyayı yeniden okur. 5.000 token'ı aşan dosya yalnızca yol referansı olarak gelir, yani Claude var olduğunu bilir ama içeriği için yeniden okumalıdır.
  • Çağırdığınız skill'lerin gövdelerini yeniden enjekte eder: her biri en fazla 5.000, toplamda 25.000 token. Önce en eskiler düşer, kesme dosyanın üst kısmını tutar.
  • Eşleyicisi compact olan SessionStart hook'larını yeniden çalıştırır ve çıktılarını compact edilmiş bağlama ekler.
  • Arka plandaki komutları ve arka plan alt ajanlarını çalışır halde tutar, Claude'a da var olduklarını hatırlatır.

Kökteki CLAUDE.md de yerinde durur, çünkü geçmişin değil proje bağlamının parçası. Özetin içine alabileceği şey, konuşma yoluyla gelen metin, örneğin path kapsamlı kurallar.

Kendinizi deneyin

Compaction'dan önce 9.000 token'lık bir dosya açıktı. Sonrasında Claude'da ondan ne kalır?

Yönlendirmek

Genel bir özeti kabul etmek zorunda değilsiniz. Neyin tutulacağını iki kol belirliyor.

$ /compact keep the failing test names and the decision to avoid the new cache✻ Şimdi, bu odakla özetler# Görevin ortasında değil, doğal bir molada çalıştırın.

Birincisi, /compact sonrasına yazılan odak. Rehber, auto-compaction'ın bir işin ortasında devreye girmesini beklemek yerine doğal molalarda odakla compact etmeyi öneriyor.

İkincisi, CLAUDE.md içinde "Compact instructions" başlıklı bir bölüm. Oraya yazdığınız şey, her compaction için neyin hayatta kalması gerektiğini söyler, her seferinde yeniden yazmanız gerekmez.

/clear, /compact ya da rewind

Üçü benzer görünür ama değildir.

/clear: boş pencere, eski oturum /resume için durur
/compact: geçmiş özete dönüşür, iş devam eder
/rewind: daha eski bir noktaya dönülür, kod ve konuşma

/clear yeni, ilgisiz bir iş içindir. Bedava ve eski geçmişi kaldırır. /clear name ile ad verirseniz eski oturum /resume için etiketlenir. /clear'dan hemen sonra, siz çıkana kadar rewind menüsü bile bir /resume <session-id> (previous session) girişi sunar.

/compact, sadece büyümüş aynı iş içindir.

Rewind türce farklıdır. Bir turu başlatan her prompt önce dosya durumunu yakalar. /rewind (ya da /checkpoint, /undo, boş prompt'ta Esc Esc) bir menü açar: kod ve konuşmayı geri yükle, yalnızca konuşma, yalnızca kod, buradan itibaren özetle ya da buraya kadar özetle. Özetleme seçenekleri "add context" satırına yazılan yönlendirmeyi kabul eder.

Rewind'ın sınırları var

Düzenleme araçlarının değiştirdiğini geri yükler. Üç şey dışarıda kalır:

  • Yalnızca Bash ile yapılan değişiklikler izlenmez, Claude o dosyayı oturumda zaten düzenleme araçlarıyla düzenlemediyse.
  • Alt ajan düzenlemeleri genellikle geri yüklenmez. Onlar için git kullanın.
  • Symlink'li ve hard link'li yollar kod geri yüklemesinde uyarıyla atlanır.

Checkpoint'ler en son 100 tanesini kapsar ve son kayıttan yaklaşık 30 gün sonra temizlenir. cleanupPeriodDays bunu uzatır.

Kendinizi deneyin

Bir yaklaşımı yirmi dakika denediniz ve öncesindeki işi kaybetmeden vazgeçmek istiyorsunuz. Hangi araç en uygun?

Devamını okuyun