15 puan yazan GN⁺ 2026-01-31 | 4 yorum | WhatsApp'ta paylaş
  • Next.js 16 API hedefli bir değerlendirmede, proje köküne eklenen AGENTS.md belge indeksi, skills tabanlı yaklaşımdan daha yüksek doğruluk elde etti
  • Skills, ajanın gerektiğinde çağırdığı bir alan bilgisi paketi biçiminde olsa da, çağrının kararsız olması nedeniyle varsayılan yapılandırmada yalnızca %53 geçiş oranında kaldı
  • Buna karşılık, 8KB’ye sıkıştırılmış AGENTS.md indeksi, tüm testlerde (Build, Lint, Test) %100 geçiş oranına ulaştı
  • Bu yöntem, karar noktalarını ortadan kaldırması, her zaman erişilebilir olması ve sıra sorununu çözmesi sayesinde etkin çağrı yaklaşımından daha istikrarlı sonuçlar verdi
  • Framework bakımcıları, sürümle eşleşen belge indeksini AGENTS.md içine ekleyerek kod üretim doğruluğunu artırabilir

Sorunun arka planı

  • AI kodlama ajanlarının, eğitim verilerinin eski API sürümlerine dayanması nedeniyle en güncel framework’leri doğru şekilde ele alamama sınırı bulunuyor
    • Next.js 16’daki 'use cache', connection(), forbidden() gibi yapılar mevcut model eğitim verilerinde yer almıyor
  • Tersine, eski sürüm projelerde modelin var olmayan yeni API’leri önermesi sorunu da ortaya çıkıyor
  • Bunu çözmek için sürümle eşleşen belge erişim yaklaşımı denendi

İki yaklaşım

  • Skills: prompt, araç ve belgeleri bir araya getiren açık standart paketler; ajan gerektiğinde çağırıp kullanıyor
  • AGENTS.md: proje kökünde bulunan kalıcı bağlam dosyası; her sohbet turunda sürekli başvurulabiliyor
  • Aynı Next.js belgeleri temel alınarak iki yaklaşım karşılaştırmalı olarak değerlendirildi

Skills yaklaşımının sınırları

  • Değerlendirme sonucunda, testlerin %56’sında skill çağrılmadı ve temel geçiş oranı %53 ile iyileşme göstermedi
  • Bazı kalemlerde hatta başlangıç düzeyinden daha düşük puanlar (ör. testte %58’e karşı %63) görüldü
  • Bunun, mevcut modellerin araç kullanımını istikrarlı şekilde gerçekleştirememesi sorununa işaret ettiği belirtiliyor

Açık talimat ekleme deneyi

  • AGENTS.md içine “kod yazmadan önce skill çağır” şeklinde açık bir talimat eklendiğinde geçiş oranı %79’a çıktı
  • Ancak talimat ifadesindeki küçük farklar sonucu ciddi biçimde etkiledi
    • “Önce skill çağır” → belge örüntülerine saplanma, proje bağlamını kaçırma
    • “Projeyi inceledikten sonra skill çağır” → daha iyi sonuç
  • Bu tür dilsel kırılganlık, gerçek kullanımda güvenilirliği düşürüyor

Güvenilir değerlendirme kurma

  • İlk testler, belirsiz prompt’lar ve yinelenen doğrulama sorunları nedeniyle yeterince güvenilir değildi
  • Bunu iyileştirmek için davranış temelli doğrulama ve Next.js 16’nın eğitim verisinde bulunmayan API’lerine odaklı testler kullanıldı
  • Başlıca test API’leri: connection(), 'use cache', cacheLife(), forbidden(), proxy.ts, cookies(), headers(), after(), refresh() vb.

AGENTS.md yaklaşımının deneyi

  • Ajanın seçim süreci ortadan kaldırılarak, belge indeksi doğrudan AGENTS.md içine yerleştirildi
  • İndeks, belgelerin tamamı yerine sürüme göre belge yolu listelerinden oluşuyordu
  • Ek talimat:
    IMPORTANT: Prefer retrieval-led reasoning over pre-training-led reasoning for any Next.js tasks.
    • Bu, modelin mevcut eğitim verisi yerine belge temelli akıl yürütmeyi öncelemesini teşvik etti

Değerlendirme sonuçları

  • AGENTS.md indeksinin eklenmesiyle %100 geçiş oranı elde edildi
    • Build, Lint, Test sonuçlarının tümü kusursuzdu
  • Karşılaştırmalı istatistikler:
    • Baseline %53, Skill varsayılan %53, Skill+talimat %79, AGENTS.md %100
  • Pasif bağlam yaklaşımının etkin çağrıdan daha üstün olmasının nedenleri
    1. Karar noktası yok — bilgi her zaman mevcut
    2. Tutarlı erişilebilirlik — her turda sistem prompt’una dahil
    3. Sıra sorununu ortadan kaldırır — belge keşif sırasına bağlı değildir

Bağlam kapasitesi sorununun çözümü

  • İlk indeks 40KB idi, ancak sıkıştırma ile 8KB’ye düşürüldü (%80 azalma)
  • Boru (|) ayraçlı yapı ile belge yolları ve dosya adları minimum alanda saklandı
  • Ajan, .next-docs/ dizininden yalnızca gerekli dosyaları okuyarak doğru sürüm bilgisini kullandı

Uygulama yöntemi

  • Kurulum tek satırlık bir komutla yapılabiliyor
    npx @next/codemod@canary agents-md
    
  • Bu komut
    1. Next.js sürümünü algılıyor
    2. İlgili sürüm belgelerini .next-docs/ içine indiriyor
    3. Sıkıştırılmış indeksi AGENTS.md içine ekliyor
  • Cursor gibi AGENTS.md’yi tanıyan ajanlarda da aynı şekilde çalışıyor

Framework geliştiricileri için çıkarımlar

  • Skills hâlâ faydalı, ancak genel kod üretim doğruluğunu artırmada AGENTS.md yaklaşımı daha etkili
  • Skills, “sürüm yükseltme”, “App Router geçişi” gibi belirli görev odaklı iş akışları için daha uygun
  • Öneriler:
    • skills iyileşmesini beklemeyin, AGENTS.md’yi hemen kullanın
    • Bağlamı düşük tutmak için yalnızca belge indeksini ekleyin
    • Eğitim verisinde olmayan API’lere odaklı değerlendirmelerle doğrulayın
    • Belgeleri ince taneli bir arama yapısı ile tasarlayın
  • Hedef, ön eğitim merkezli akıl yürütmeden arama tabanlı akıl yürütmeye geçiş ve bunu en istikrarlı biçimde uygulayan yöntem AGENTS.md olarak öne çıkıyor

4 yorum

 
channprj 2026-01-31

> Yapay zeka kodlama ajanlarının, eğitim verilerinin eski API sürümlerine dayanması nedeniyle en güncel framework’leri doğru şekilde ele alamama gibi bir sınırlaması var.

Context7 kullanınca bu sorun bir ölçüde çözülüyor.

https://context7.com

 
slowandsnow 2026-02-04

context7 verimsiz olduğu için yukarıdaki iki yöntemi kullanıyoruz...

 
channprj 2026-02-05

Ne demek istediğinizi anlıyorum ama her seferinde AGENTS.md veya Skills içine şu anda kullanılan tüm framework/kütüphanelerin en güncel dokümantasyon bağlantılarını tek tek derleyip eklemektense, context7’yi yardımcı olarak kullanmak o kadar da kötü bir tercih gibi gelmiyor.

Ayrıca ne GeekNews’te ne de Vercel’in ana metninde context7’den bahsediliyor. Bu yüzden, sanki içeriği yarım adım kadar ileriden yorumlamışsınız gibi geldiği için bu yanıtı bırakıyorum.

(Referans olması açısından söyleyeyim: iyi yazılmış Skills ve AGENTS.md ile token tasarrufu sağlanabildiği zaten bilinen bir gerçek ve ben de bunun gayet farkındayım.)

 
GN⁺ 2026-01-31
Hacker News yorumları
  • Model AGI değil. Sadece dosya düzenleme veya araç çağırma gibi etkiler üretmesi için eğitilmiş bir metin üreticisi
    Model, kullanıcının becerilerini “anlayıp” kullanmıyor; bunu insan yapımı örnekler ve kullanım kayıtlarına dayanan pekiştirmeli öğrenme (RL) sayesinde bu tür metinler üreterek yapıyor
    Becerileri her zaman kullanmamasının nedeni, bu tür örneklerin henüz yeterince öğrenilmemiş olması. RL ile zorlamak ise modeli daha da aptallaştırabilir
    Şu anda yaptığımız şey, gelecekteki modellerin becerileri ne zaman kullanmaları gerektiğini daha iyi öğrenebilmesi için beceri kullanım kayıtları biriktirmek
    AGENTS.md ise sadece bağlam. Model en başından beri bağlama uyması için eğitildi

    • AGENTS.md ile beceriler arasındaki fark, sonuçta bağlama nasıl eklendikleri meselesi
      Becerilerin frontmatter kısmı da sonuçta bağlama dahil oluyor; dolayısıyla AGENTS.md daha iyi çalışıyorsa bunun nedeni beceri bilgisinin çıkarılıp enjekte edilme biçimindeki fark olabilir
      Bazı ajanlar, hangi beceri bilgisinin büyük modele (ör. Sonnet, Opus) aktarılacağına karar vermek için küçük bir model (ör. Haiku) kullanabilir
      Sonuçta kilit nokta, hangi bilginin “ham prompt” içine girdiği
    • Bu AGI değil. Esasen güçlendirilmiş otomatik tamamlama düzeyinde
      Faydalı ama kusursuz değil. GPT teknolojisinin kendisi ise artık performans durgunluğu dönemine girmiş gibi görünüyor
      Bundan sonra iyileşecek kısım, beceriler gibi yardımcı sistemler olacak. Ama şu anki beceri uygulaması, AGENTS.md’yi doğrudan yazmaktan daha kötü
    • Ben de benzer deneyler yaptım. Sistem prompt’unda ilgili becerileri önceden yükletiyor, kullanıcı prompt’unda ise gerektiğinde yükletiyorum
    • RL’nin ne olduğu sorulmuştu
    • “Model AGI değil” sözüne, GNU/Linux adlandırma tartışması benzetmesi yapan esprili bir yorum vardı
  • Değerlendirmede vakaların %56’sında becerilerin bir kez bile çağrılmadığı sonucu vardı. Yani belgeye sahipti ama kullanmadı. Buna da “Turing testini geçmiş demek ki…” diye şaka eklenmişti

    • “AI da RTFM (kılavuzu okumuyor)” şeklinde hazırcevap bir tepki vardı
    • Ben de güldüm ama ciddi konuşmak gerekirse insanlar da çoğu zaman güvenilir değil
      Aradaki fark şu: AI, gurur yapmadan düzeltme talimatını kabul ediyor
      Henüz kıdemli geliştirici seviyesinde değil ama talimatları bir junior’dan daha iyi izliyor
  • Temel bulgu, belge işaretçilerinin sıkıştırılmasının (compression) etkili olması
    İnsanların okuması zor olsa da LLM için doğrudan ve verimli bir referans yapısı
    İleride agents.md/claude.md/skills.md gibi sezgisel yöntemler yerine, her zaman yüklenen sıkıştırılmış indeks formatı standart hâline gelebilir
    API test paketleri, LLM kod performansını doğrulamak için yeniden kullanılabilir
    LLM kullanımı arttıkça, kütüphaneler ve API’ler de buna uyum sağlayacak şekilde evrilmeli

    • Bir başka ders de, “önce projeyi keşfedip sonra beceri çağırmak” yaklaşımının “ne olursa olsun beceri kullan” yaklaşımından daha iyi olması
      Antigravity’de (=GEMINI.md tabanlı) AGENTS.md kurallarına uyulması istenmiş ama yok sayılmış
      Buna karşılık “projede AGENTS.md olup olmadığını kontrol et” prompt’u her zaman çalışmış
      Eski “let’s think step by step” ifadesinin chain of thought’u tetiklediği dönemler gibi ilginç bir durum
    • “Sıkıştırma” deniyor ama aslında bu daha çok minify seviyesinde değil mi diye yanıt verenler de vardı
    • Pipe yerine satır sonu kullanılsaydı daha okunabilir olurdu diyenler de oldu
  • AGENTS.md sistem prompt’una doğrudan dahil edilirse her zaman bağlamda yer alır
    Ama tüm becerileri her seferinde dahil etmek israftır. Bu yüzden Anthropic’in advanced tool use yaklaşımı gibi, sadece gerektiği anda çağıran bir yöntem gerekir
    Sonuçta mesele bağlam ile maliyet arasındaki denge. Alan varsa AGENTS.md içine sıkıştırarak koymak verimli olabilir

    • Beceriler de sonuçta bağlam içinde tanımlanıyor. Sadece AGENTS.md’ye sıkıştırarak koymak daha iyi çalışıyor gibi görünüyor
    • Vercel beceriler ile bağlam ayarlarını karıştırmış gibi. Bu ikisinin amaçları tamamen farklı, dolayısıyla ikisi de birlikte kullanılmalı
    • RLM yaklaşımının iyi çalışmasının nedeni de bu. Gereken bilgiyi bağlama koyup geri kalanını ortamda bırakıyor
      Bu tür kendi bağlamını yöneten ajanlar bu yıl ciddi ilerleme kaydedecek gibi görünüyor
    • Sonuçta ikisi de gerekli. Bazı şeyler zorunlu olarak bağlama konmalı (index/sparknotes), bazıları ise keşif/arama tabanlı olarak dinamik eklenmeli
    • Bireysel kullanıcılar için sistem prompt’unu değiştirmek yeterli olabilir, ama ekip düzeyinde kod stili gibi standartlar için beceriler gerekli
      Claude’un becerilere uyum oranı düşük
  • Ben de benzer bir alanda çalışıyorum. Proje scaffolding yapısının Claude Code/Opencode sonuçlarını nasıl etkilediğini değerlendirmek istiyorum
    Ama Vercel’in test yöntemi net olmadığı için karşılaştırma yapmak zor

  • AGENTS.md, becerilerden tamamen farklı bir şey değil; becerilerin sadeleştirilmiş bir biçimi
    Asıl mesele beceri tasarımının kalitesi, yani AI’ın doğru bilgiye ulaşana kadar geçmesi gereken adım sayısını en aza indirmek
    Adım sayısı azaldıkça hata birikimi de azalır

    • Ben de bunu ikiye ayırarak yönetiyorum
      1. Kural tabanlı olarak sistem prompt’una zorla eklenenler
      2. Ajanın ihtiyaç duyduğunda keşfettiği şeyler
        Ayrıca token israfını azaltmak için büyük dosyaları sistem prompt’una yalnızca bir kez koyuyorum
  • Bloglarda prompt engineering karşılaştırmaları yapıldığında benim hep merak ettiğim şey, tek çalıştırma mı yapıldı yoksa birden çok tekrar mı olduğudur
    LLM’ler aynı girdide bile tutarlı sonuç vermiyor

    • Böyle deterministik olmayan sonuçların bilimmiş gibi sunulması sinir bozucu
      Çoğu zaman anekdot düzeyindeki veriler bilimsellik kisvesine büründürülüyor gibi geliyor
    • Ben de her zaman birden fazla tekrar çalıştırıp güven aralığı hesaplıyorum
      Ama özenli benchmark yapınca görüntülenme az oluyor, üstünkörü yapınca blog trafiği 9 kat artıyor
      Sorun çarpık teşvik yapısı
  • AGENTS.md’den daha iyi bir yöntem de olabilir
    .context klasörü oluşturup proje belgelerini (README, bağımlılık belgeleri vb.) sembolik bağlantılarla içine koymak ve her zaman bağlama yükletmek
    Böylece LLM en baştan ihtiyaç duyduğu tüm bilgiye sahip olur ve performans artışı ile maliyet düşüşü sağlanabilir

    • Ama bağımlılık belgeleri büyük fark yaratmıyor. Bunun yerine kaynak kodun kendisini _vendor klasörüne koymak çok daha faydalı
      LLM kodu doğrudan analiz ederek nasıl çalıştığını anlayabiliyor
    • Tüm belgeleri her seferinde yüklemek verimsiz. Bunun yerine Claude.md veya Agents.md içinde sadece konumlarını belirtip gerektiğinde okutmak daha iyi olabilir diyenler de vardı
    • Bağlam gereksiz yere şişirilmemeli. Bunun yerine yalnızca belge indeksini sıkıştırarak eklemek daha verimli
    • Büyük dosyaları her seferinde eklemek token israfı. Claude Code blogunda da aynı uyarı vardı
  • Kendi özel ajanımı geliştirirken edindiğim deneyim

    1. Claude Code’un çıkarım yönergelerini referans aldım
    2. AGENTS.md’yi içindekiler ve özet (sparknotes) amacıyla otomatik yüklüyorum
    3. Konu bazlı Markdown dosyalarını beceri olarak yönetiyorum
    4. MCP ile beceriler kavramsal olarak benzer, dolayısıyla asıl önemli olan iyi araçlar yapmak
    5. Sürekli deney yapıyor, keyif alıyor ve geliştiriyorum
      read/write_file öğesini duruma ekleyip sistem prompt’unda görünür hâle getirince çok daha iyi çalıştı
      Şimdi bunu nicel değerlendirmelerle (evals) kanıtlamaya çalışıyorum. Hissedilen performans oldukça iyi