Kabul edelim, hepimiz aynı şeyi yaşıyoruz. Yapay zekayla bir proje geliştiriyorsunuz; saatlerce konuşuyorsunuz, mimariyi anlatıyorsunuz, kurallar koyuyorsunuz, kod yazdırıyorsunuz… Ertesi gün yeni bir oturum açıyorsunuz ve karşınızda sizi hiç tanımayan bir model buluyorsunuz. Sanki dün hiç yaşanmamış.
Bu yazıda bu sorunun kökenine ineceğiz: context (bağlam) tam olarak nedir, context kirliliği neden olur ve kalıcı hafıza sistemleriyle bu dert nasıl çözülür. Örnek araç olarak claude-mem üzerinden gideceğim, kendi projelerimde edindiğim notları da araya serpiştireceğim.
Mesele model değil, bağlam
Piyasada neredeyse her hafta yeni bir model çıkıyor ve sosyal medya hangisi daha iyi tartışmasıyla çalkalanıyor. Claude bir şey çıkarıyor, OpenAI cevap veriyor, Google araya giriyor… Benim baştan söyleyeceğim şey net: bu yarışı takip etmesi gereken biz değiliz. O işi zaten model üreticilerinin kendisi yapıyor; onlar birbiriyle yarışıyor, biz de bu rekabetin meyvesini topluyoruz. Fiyatlar düşüyor, kotalar artıyor, ücretsiz seçenekler çoğalıyor.
Çok karmaşık bir iş yapmıyorsanız, mesela aklınızdaki fikri hayata geçirmek, bir araç üretmek ya da bir otomasyon kurmak istiyorsanız, bütçe dostu bir modelle bile şaşırtıcı derecede iyi sonuçlar alabilirsiniz. Fark yaratan şey modelin gücünden çok, ona verdiğiniz bağlamın kalitesi. Formül şu:
Güçlü model ≠ kalıcı hafıza.
Doğru context + hafıza = tutarlı sonuç.
Sahada gördüğüm de aynısı: iyi kurgulanmış bir bağlamla çalışan orta sınıf bir model, bağlamsız kullanılan amiral gemisi bir modelden çok daha istikrarlı iş çıkarıyor. Model size özgünlük katar, fikir üretir; ama işin omurgası bağlamdır.
Peki bu context tam olarak ne?
Büyük dil modelleri token’la çalışır. Oturum boyunca modele verdiğiniz her şey (yazdığınız promptlar, yüklediğiniz dosyalar, koyduğunuz kurallar, aldığınız mimari kararlar, terminal çıktıları, geçmiş konuşmalar) modelin aktif hafızasını, yani context penceresini doldurur. Model bu pencerenin içindekini bilir; dışında kalanı bilmez. Bu kadar basit.
Sorun şurada başlıyor: o pencere oturuma özeldir. Yeni bir sohbet açtığınızda pencere sıfırlanır. Model yazdığı kodu hatırlamaz, aldığınız kararları hatırlamaz, sizin istediklerinizi hatırlamaz. 250 bin token’lık bir yolculuğun sonunda mecburen yeni oturuma geçtiyseniz, her şeye baştan başlarsınız. Tanıdık geldi mi?
Pencere büyüsün, olsun bitsin? Keşke o kadar basit olsa
İlk akla gelen çözüm bu oluyor: madem pencere doluyor, daha büyük pencereli model kullanalım. Bazı modeller 1 milyon token’a kadar pencere vaat ediyor. Ama pratikte işler öyle yürümüyor. Projelerde birebir yaşadığım gerçek şu: pencere büyüdükçe context kirliliği diye bir dert ortaya çıkıyor.
Şöyle bir benzetme yapayım: diyelim ki modele upuzun, bol betimlemeli bir roman verdiniz. Güneşli bir gündü, gökyüzünde tek bulut yoktu gibi sayfalarca betimleme. Model bunların hepsini okuyor, hepsine token harcıyor. Peki projenizde bu betimlemeleri kullanacak mı? Hayır. Ama o kalabalığın içinde asıl önemli bilgi gözden kaçmaya başlıyor. Fazla ve alakasız bilgi, modelin doğru noktaya odaklanmasını zorlaştırıyor; halüsinasyon artıyor, çıktı kalitesi düşüyor. Hele bazı model ailelerinde 250 bin token sonrasında bu bozulma gözle görülür hale geliyor.
Kısacası: uzun context, net sonuç demek değil. Üstelik okutulan her gereksiz token, cebinizden çıkan para ve kaybettiğiniz zaman.
Bu arada ufak bir gözlem: prompt engineering tartışmaları hızla yerini context engineering‘e bırakıyor. Modeller artık üstünkörü yazılmış bir promptu bile anlıyor; asıl fark, bağlamı doğru kurgulamakta. Burada siz yönetici koltuğundasınız; ajanı siz yönetiyorsunuz, kurguyu siz yapıyorsunuz. Bunu doğru yaptığınız sürece model tartışmalarına takılmanıza gerek yok.
Çözüm: kalıcı hafıza ve claude-mem
Bu sorunu çözen bir araç ailesi var: yapay zekanın çalışmalarını özetleyip yerel bir hafızada saklayan ve yeni oturumda geri getiren sistemler. Mem0, Obsidian tabanlı çözümler… Seçenek bol. Benim bu yazıda örnek alacağım araç ise claude-mem. İsmine bakıp aldanmayın: sadece Claude’a özel değil, CLI üzerinden çalışan hemen her kodlama ajanıyla (Codex, Gemini CLI ve benzerleri) kullanılabiliyor.
Mimarisi dört adımda özetlenebilir:

- Yakalama: Hook’lar, ajanın yaptığı her işlemi gerçek zamanlı yakalar. Çalıştırılan komutlar, dosya değişiklikleri, alınan kararlar, hatalar ve çözümler… Hepsi kayda geçer.
- Özetleme: Toplanan ham veri, seçtiğiniz bir AI modeliyle sıkıştırılıp anlamlı gözlem ve özetlere dönüştürülür. İşin kalbi burası.
- Saklama: Özetler yerel bir SQLite veritabanına yazılır. SQLite’ın tercih edilmesi tesadüf değil: kurulum istemez, yer kaplamaz, tamamen lokaldir ve tam metin arama (full-text search) destekler.
- Geri getirme: Yeni oturum açtığınızda ilgili bilgiler aranır ve context’e eklenir. Bu geri getirme (retrieval) adımı, RAG mimarilerindeki R ile aynı mantık. Bu kavramlara Azure yazılarımda daha sık değineceğim.
İşin asıl zekice kısmı: progressive disclosure
En sevdiğim benzetme şu: kütüphaneye gidiyorsunuz. Önce kitap listesine bakıyorsunuz, ilgili kitabı seçiyorsunuz, içindekiler sayfasından doğru bölüme gidiyor ve sadece o bölümü okuyorsunuz. Kütüphanedeki her kitabı baştan sona okumuyorsunuz.
claude-mem de aynısını yapıyor. Geçmişin tamamını körlemesine context’e yüklemiyor; önce arıyor, sonra zaman çizelgesine bakıyor, gerekirse detaya iniyor. Buna progressive disclosure (aşamalı açığa çıkarma) deniyor. Sonuç: gereksiz token israfı yok, alakasız geçmiş yeni görevi kirletmiyor, ilgili bilgiye hızlı erişim var. Hafıza birikip şişse bile model hepsini okumuyor; içindekiler tablosunu bildiği için doğrudan aradığı yere gidiyor.
Kurulum: beş dakikalık iş
En sevdiğim kısım şu: kurulumu ajanın kendisine yaptırabiliyorsunuz. GitHub reposunun linkini ajana verip kurmasını istemek çoğu durumda yeterli. Ajan repoyu inceliyor, hook’ları bağlıyor, sistemi hazırlıyor. README’nin Türkçe çevirisi de mevcut.
Kurulumdan sonra ekstra bir şey yapmanıza gerek yok: her görev, her kural, her dosya otomatik özetlenip saklanıyor; yeni oturumda kaldığınız yerden devam ediyorsunuz.
İki pratik not:
- Basit işler için dev model kullanmayın. Dosya özetletmek gibi rutin işlerde orta seviye bir model fazlasıyla yeterli. Hem kotanız artar hem maliyetiniz düşer.
- Hafıza aracı, proje dokümanının yerini tutmaz. Kök dizinde kısa bir mimari özeti (AGENTS.md ya da CLAUDE.md gibi) tutmak hâlâ iyi bir alışkanlık. İkisi alternatif değil, tamamlayıcı: biri projenin anayasası, diğeri günlük hafızası.
Toparlayalım
- Model yarışını takip etmek sizin işiniz değil; bağlamı kurgulamak sizin işiniz.
- Context oturuma özeldir; önlem almazsanız her yeni oturum sıfırdan başlar.
- Büyük context penceresi çözüm değil; kirlilik, maliyet ve odak kaybı getirir.
- Kalıcı hafıza araçları bu sorunu üç ayakla çözer: özetleme + yerel saklama + akıllı geri getirme.
Yapay zekayla üretim yapıyorsanız ve her yeni oturumda kendinizi tekrar edip duruyorsanız, bir hafıza sistemi kurmak muhtemelen yapacağınız en yüksek getirili beş dakikalık yatırım. Sorularınız olursa yorumlarda buluşalım.
