← Radar

Konu: Ajanlar3 dk okuma

Ajan değiştirirken bağlamı kaybetmemek: Devir notu, görev dosyası ve yapay zekâya yazdırılan skill'ler

Bu neden önemli?

Kullanım sınırı dolunca ya da daha ucuz bir modele geçince, sohbette biriken bilgi bir anda kayboluyor. Bağlamı depoda tutarsan hangi ajanı kullandığının önemi kalmıyor. Skill'leri de düşünmeden biriktirirsen, ajan senin unuttuğun talimatlarla çalışmaya başlıyor.

Sorun: Bilgi sohbetin içinde kalıyor

Bir kodlama ajanıyla bir saat çalıştın. Neyi neden yaptığınızı, hangi dosyalara dokunduğunuzu, hangi yolun işe yaramadığını konuştunuz. Sonra kullanım sınırın doldu ya da işin kalanını daha ucuz bir modele vermek istedin. Yeni ajan bunların hiçbirini bilmiyor.

Syntax’ın 1051. bölümü dinleyici sorularına ayrılmıştı ve ilk soru tam buydu. Wes Bos ve Scott Tolinski’nin cevabı kısaca şu: Önemli olan her şeyi sohbetten çıkarıp projenin içine yaz.

Aynı fikir tek bir ajanla çalışırken de işe yarıyor: Araştırmayı ve planı dosyaya yazıp temiz bir oturumla devam etmeyi bağlam mühendisliği yazısında anlattık.

Üç yol, küçükten büyüğe

1. Devir notu (handoff). En basit yol, ajana “kaldığımız yeri anlatan bir not yaz” demek. Scott, sınır dolmak üzereyken ajandan kopyalayıp yapıştırabileceği kısa bir devir prompt’u istiyor: hangi dosyalara bakıyordu, hangi adımdaydı. Bunun için hazır skill’ler de var, ama Scott’ın şikâyeti şu: Not ya geçici bir klasöre gidiyor ve uzun yolunu elle vermen gerekiyor, ya da projede unutulup kalan bir dosyaya dönüşüyor. Wes ise kalıcı olması gereken bilgiyi markdown dosyasına ya da kodun yanına yorum olarak yazdırıyor. Yorum, kod değiştiğinde güncellendiği sürece en iyi bağlam taşıyıcılarından biri.

2. Görev dosyası. Her ajanın kendi yapılacaklar listesi var ve bu liste o ajanın içinde kalıyor. Scott bunun yerine görevleri depoda tutan dex’i kullanıyor. Sentry’nin kurucusu David Cramer’ın yazdığı bu açık kaynak araçta her görevin bir açıklaması, bağlamı (neden, nasıl, nelere dikkat) ve bittiğinde yazılan bir sonucu var. Görevler satır başına bir kayıt olan JSONL dosyasında duruyor, yani git’e girebiliyor. Yeni bir oturumda ajana “sıradaki görevi al” demen yetiyor, çünkü gereken bağlam zaten görevin içinde. Aynı fikrin daha büyük bir örneği olan Beads’i vibe coding yazımızda anlatmıştık. Scott’a göre dex daha hafif.

3. GitHub issue’ları. Wes planlama aşamasında ucuz bir ajana yapılacakları araştırtıp her biri için bir issue açtırıyor. Böylece işler tek bir sohbete sıkışmıyor: Üç dört ajanı aynı anda farklı issue’lar üzerinde çalıştırabiliyor, sonra açılan PR’ları birleştirme işini de başka bir ajana veriyor.

Yapay zekânın yazdığı skill’ler işe yarıyor mu?

Skill, ajana bir işi nasıl yapacağını anlatan küçük bir klasör (Agent skill nedir?). Wes’in kuralı şu: Bir işi ajanla uzun uzun konuşarak çözdüysen ve aynı şekilde tekrarlamak istiyorsan, o noktada ajandan sonucu bir skill’e dönüştürmesini iste. Sıfırdan “bana şunu yapan bir skill yaz” dersen gereksiz şeylerle dolu bir dosya çıkıyor.

Scott’ın andığı araştırma büyük ihtimalle SkillsBench. Şubat’ta yayımlanan ilk sürümünde, uzmanların hazırladığı skill’ler ajanların başarı oranını ortalama 16 puan artırıyor, ama modelin görevden önce kendi yazdığı skill’ler ortalamada hiçbir fayda sağlamıyordu. Makalenin son sürümünde öne çıkan bir bulgu da şu: En fazla üç parçalı, odaklı skill’ler, her şeyi anlatan büyük paketlerden daha iyi sonuç veriyor.

İkisinin pratik önerileri de buna uyuyor:

  • Skill’i script’e çevir. Skill klasörü sadece metin değil, çalıştırılabilir betikler de içerebiliyor. Wes’in skill’lerinin çoğunda betik kısmı metinden ağır. Her seferinde aynı şekilde yapılan bir iş, ajanın yorumuna bırakılmamalı.
  • Ne yüklendiğini bil. Scott bir projede hiç istemediği hâlde ajanın SvelteKit önerdiğini anlattı. Sebep, unuttuğu bir global talimat dosyasıymış. Bir anda 18 skill yüklüyse ve bazıları birbiriyle çelişiyorsa, ajan sadece söyleneni yapıyor. Talimatları ve skill’leri arada bir temizlemek, yenilerini eklemekten daha çok işe yarayabiliyor.

Aynı fikir ajanın kendisi için de geçerli. Scott, küçük tutulmuş açık kaynak kodlama ajanı Pi’de eklentileri ihtiyaç duydukça eklemeyi öneriyor. Ona göre katalogdaki her paketi kurmak işleri iyileştirmiyor.

Bölümde ayrıca uygulamaların ajanlarla konuşma yolları karşılaştırıldı. Tarayıcıya gömülü yaklaşımı WebMCP yazımızda, CopilotKit ekibinin olay tabanlı AG-UI protokolünü de üretken arayüz yazımızda anlatmıştık.

Düşün

  • Şu an açık olan ajan sohbetin kapansa, kaybolacak en önemli bilgi ne? O bilgi neden henüz bir dosyada değil?
  • Yüklü skill’lerinden hangisi aslında her seferinde aynı adımları izliyor ve bir betik olabilirdi?

Videoyu izle

Tıklayınca video YouTube'dan yüklenir; o ana kadar bu sayfa YouTube'a hiçbir istek göndermez.
Kaynaklar (7, İngilizce)

Kendi cümlelerimizle yazılmış bir özettir, çeviri değildir. Tüm kaynaklar yukarıda.

Konu: Ajanlar3 dkVideo: Better Stack

Claude Code'un ajan paneli: Üç beş kelimelik etiketin gizli maliyeti

Claude Code, arka planda çalışan her ajanın panelde görünen kısa durum yazısını üretmek için yaklaşık 30 saniyede bir o ajanın bütün konuşmasını modele yeniden gönderiyor. Ölçümlere göre bu, oturumun maliyetinin %2'si ile %18'i arasında bir pay alabiliyor. Belgelenmiş bir kapatma ayarı yok.

Konu: Ajanlar3 dkVideo: Better Stack

Context Mode ağ geçidi: Claude Code'un araç çıktısını modele gitmeden küçültmek

Context Mode'un yeni barındırılan ağ geçidi, Claude Code ile model arasına giriyor ve test sonuçları, loglar, büyük JSON gibi araç çıktılarını modele göndermeden önce özetliyor. Better Stack'in iki denemesinde aynı cevaplar yaklaşık %30 daha ucuza geldi. Karşılığında her istem ve araç çıktısı üçüncü bir şirketin sunucusundan geçiyor.