Ana içeriğe geç

Claude Code'un Context ve Oturum Yönetimini Anlamak

Claude Code'u bir süredir kullandıysanız muhtemelen fark etmişsinizdir: bir oturum ne kadar uzun sürerse, yanıtlar o kadar yavaşlar. AI'ın kalitesinin düşmesi değildir -- asıl sorun context şişmesidir. İşte kaputun altında neler olup bittiği ve bununla ilgili ne yapabileceğiniz.

1. "Context" Gerçekte Ne Demektir?

AI terimleriyle context, modelin isteğinizi yanıtlarken üzerinde çalışmak zorunda olduğu bilgi kümesidir. Günümüz LLM'leri durum bilgisi olmayan (stateless) paylaşımlı servislerdir -- çağrılar arasında sizinle veya projenizle ilgili herhangi bir yerleşik hafıza tutmazlar.

Pratikte şu anlama gelir: her mesaj gönderdiğinizde Claude Code, geçerli isteğunuzu tüm sohbet geçmişi ile birlikte paketlemek ve modelin tamamına göndermek zorundadır. Geçmiş ne kadar uzunsa, her payload o kadar ağırlaşır.

Bunu bir brifing klasörü gibi düşünün. Gönderdiğiniz her mesaj, bir uzmana arka plan materyalleriyle dolu bir klasör uzatmak gibidir. Oturumun başlarında klasör ince ve hızlıca gözden geçirilebilir. Ancak ilgisiz konular arasında geçiş yaparsanız -- backend'i refactor edin, frontend'i ince ayar yapın, bir CSS tuhaflığını hata ayıklayın -- o klasör karmakarışık bir yığına dönüşür. Uzman yavaşlar ve hata yapmaya başlar; bunun nedeni yetersiz olması değil, ona çöp bir dosya uzatmış olmanızdır.

2. Neden Yalnızca Sıkıştırma Sizi Kurtarmaz

Claude Code otomatik context sıkıştırma ile birlikte gelir: geçmiş bir eşiği aştığında sistem önemli noktaları özetler ve dosya referanslarını yinelenenlerden arındırır. Yararlıdır, ancak gerçek sınırları vardır:

  • Maliyetlidir. Sıkıştırma geçişinin kendisi genellikle input token bütçenizin yüzde 20 veya daha fazlasını tüketir. Büyük bir kod tabanında bu, asıl işten ziyade özetlemeye giden anlamlı bir zaman ve maliyet parçasıdır.
  • Yön değişikliklerinde yanlış tahmin eder. Sıkıştırma, daha önce gelenlere dayanarak neyin alakalı olduğunu tahmin eder -- gerçek bir context değişimi değildir. Oturum ortasında tamamen farklı bir göreve atladığınızda (örneğin, API route'larını yeniden yazmaktan düğme hizalamasını düzeltmeye geçmek), sıkıştırılmış özet hâlâ eski varsayımları sürükler ve model kafa karışıklığı yaşar.

3. Çözüm: Tek Görev, Tek Oturum

İlke son derece basittir: AI'a aynı anda tek bir iş verin. Deep Code bunu iki komutla kolaylaştırır:

Yeni bir görev başlatmak için /clear komutunu girmek
  • /clear -- Temiz bir başlangıç yapın. Geçerli sohbeti temizler ve yeni bir oturum açar. Kalıcı geçmiş yok, eski dosya referansları yok -- AI yalnızca şu an önündekine odaklanır.
Geçmiş oturumları listelemek için /resume komutunu girmek
  • /resume -- Kaldığınız yerden devam edin. Dünün refactor oturumuna geri mi dönmek istiyorsunuz? /resume, proje için geçmiş tüm oturumları her birinin yanında tek satırlık bir özetle listeler. Listedeki ok tuşlarıyla gezinin, istediğiniz birine Enter'a basın ya da çıkmak için ESC tuşuna basın.

Özet

İşte ele aldığımız konular:

  • Context, sohbet geçmişinizdir -- ve her mesajla birlikte modele gönderilir. Oturum ne kadar uzunsa, payload o kadar ağırdır ve yanıtlar o kadar yavaştır.
  • Otomatik sıkıştırma yardımcı olur, ama bir çare değildir. Özetleme için token tüketir ve oturum ortasında görev değiştirdiğinizde zorlanır.
  • Çözüm basittir: tek görev, tek oturum. Temiz bir sayfayla başlamak için /clear kullanın. Kaldığınız yerden devam etmek için geçmiş bir oturuma geri dönmek üzere /resume kullanın.

Bununla birlikte, /resume'un kendi kaba kenarları vardır -- oturum başına yalnızca tek satırlık bir özet alırsınız, geri yüklemeden önce sohbet içeriğine göz atmanın bir yolu yoktur ve oturumlar arasında geçiş kullanışsızdır. Bu sınırlamalarla boğuştuğunuzu fark ederseniz, Görev Geçmişi Paneli'ne göz atın; tam sohbet geçmişlerine göz atmanıza, mesajları kopyalamanıza ve görevleri tek bir tıklamayla değiştirmenize olanak tanıyan görsel bir arayüzdür.