16 puan yazan GN⁺ 2025-12-22 | 1 yorum | WhatsApp'ta paylaş
  • Agent Skills, Codex'e göreve özel uzmanlık yetenekleri ekleyerek belirli iş akışlarını güvenilir biçimde yürütmesini sağlayan bir genişletme yapısıdır
  • Her skill, SKILL.md dosyası ile isteğe bağlı script, kaynak ve asset'lerden oluşur; böylece ekipler veya topluluklar arasında paylaşılabilir
  • Codex, skill'leri açık çağırma (/skills komutu veya $ girişi) ve örtük çağırma (görev açıklamasıyla eşleştiğinde otomatik kullanım) yoluyla çalıştırır
  • Skill'ler, REPO, USER, ADMIN, SYSTEM gibi birden çok depolama konumu ve öncelik sistemi üzerinden yönetilir; yeni bir skill ise $skill-creator ile oluşturulabilir
  • Bu özellik, Codex'in hem CLI'ında hem de IDE eklentisinde kullanılabilir ve GitHub gibi kaynaklardan skill yüklenerek işlevsellik genişletilebilir

Agent Skills'e genel bakış

  • Agent Skills, Codex'e yeni işlevler ve uzmanlık kazandıran bir yapıdır
    • Skill'ler, belirli görevleri yerine getirmek için talimatları, kaynakları ve isteğe bağlı script'leri paketler
    • Ekipler veya topluluklar arasında paylaşılabilir ve open Agent Skills standard temel alınır
  • Codex'in CLI'ı ve IDE eklentisi içinde kullanılabilir

Skill yapısı ve bileşenleri

  • Her skill, SKILL.md dosyasını merkez alır ve şu klasör yapısına sahiptir
    • SKILL.md: zorunlu, talimatlar ve meta verileri içerir
    • scripts/: isteğe bağlı çalıştırılabilir kod
    • references/: isteğe bağlı dokümantasyon
    • assets/: isteğe bağlı şablonlar ve kaynaklar
  • Codex, bağlamı verimli yönetmek için progressive disclosure yaklaşımını kullanır
    • Başlangıçta yalnızca skill'in adı ve açıklaması yüklenir, gerektiğinde tam talimatlar okunur

Skill çağırma yöntemleri

  • Açık çağırma (Explicit invocation)
    • /skills komutu veya $ girişiyle skill doğrudan belirtilir
    • Codex web ve iOS sürümleri henüz açık çağırmayı desteklemese de, depoya dahil edilen skill'ler prompt olarak kullanılabilir
  • Örtük çağırma (Implicit invocation)
    • Kullanıcının görevi skill açıklamasıyla eşleştiğinde Codex ilgili skill'i otomatik olarak kullanır

Skill depolama konumları ve öncelik

  • Codex, skill'leri birden çok konumdan yükler ve önceliği daha yüksek konumdaki skill, aynı adlı daha düşük öncelikli skill'in üzerine yazar
  • Başlıca kapsamlar ve konumlar
    • REPO: $CWD/.codex/skills, $CWD/../.codex/skills, $REPO_ROOT/.codex/skills
    • USER: $CODEX_HOME/skills veya ~/.codex/skills
    • ADMIN: /etc/codex/skills
    • SYSTEM: Codex'e varsayılan olarak dahil edilen skill'ler
  • Her kapsam, kişisel, ekip ve sistem düzeyinde yönetim amaçlarına göre kullanılır

Skill oluşturma yöntemleri

  • Codex'in yerleşik $skill-creator skill'i kullanılarak yeni bir skill otomatik oluşturulabilir
    • $plan skill'i ile birlikte kullanılırsa, skill oluşturmadan önce bir plan hazırlanabilir
  • Manuel oluşturma durumunda, geçerli bir konumda klasör oluşturulup SKILL.md dosyası yazılır
    • Zorunlu alanlar: name, description
    • İsteğe bağlı alan: metadata.short-description
  • Skill'ler, Agent Skills specification temel alınır

Skill kurulumu ve örnekler

  • $skill-installer skill'i kullanılarak GitHub'daki herkese açık skill deposundan skill kurulabilir
    • Örnek: $skill-installer linear
    • Başka depolardaki skill'ler de kurulabilir
  • Yerleşik skill örnekleri
    • $plan: yeni özellik geliştirme veya karmaşık sorun çözümü için plan oluşturma
    • $skill-installer linear: Linear bağlamına erişim
    • $skill-installer notion-spec-to-implementation: Notion verilerine erişim

Codex geliştiricileri için anlamı

  • Agent Skills, Codex'in genişletilebilirliğini ve iş birliği yeteneğini artıran temel bileşenlerden biridir
  • Geliştiriciler, kendi skill'lerini tanımlayarak otomatikleştirilmiş geliştirme iş akışları kurabilir
  • CLI ve IDE entegrasyonu, GitHub bağlantısı ve standartlaştırılmış skill tanımı sayesinde Codex ekosisteminin genişleme potansiyeli güçlenir

1 yorum

 
GN⁺ 2025-12-22
Hacker News yorumları
  • Skills'ın standart haline gelmesi gerçekten sevindirici
    Basit bir Markdown dosyası olarak yazılabiliyor ve doğası gereği context açısından verimli
    Mevcut araçların üzerine eklenebildiği için, GitHub MCP yerine gh CLI kullanımını anlatan bir skill bile yapılabilir
    Birden fazla skill birlikte kullanılabiliyor ve Python ya da JS script'leri de dahil edilebiliyor
    Bu sayede ayrı bir MCP sunucusu açığa çıkarmadan çok daha basit ve esnek bir yaklaşım mümkün oluyor

    • Buna ek olarak, ajan skill'leri kendisi düzenleyebilir, iyileştirebilir ve ekleyebilir
      Örneğin, “bu oturumun temel noktalarını bir skill olarak ekle” gibi bir otomasyon mümkün
      Sadece başarılı oturumlardan değil, bol deneme-yanılma içeren oturumlardan da öğrenilenler skill olarak bırakılabilir
      MCP'ye kıyasla çok daha hızlı ve erişilebilir bir özellik genişletme akışı sunuyor
    • Orta ölçekli bir Django + PostgreSQL + Python web uygulamasında skill'lerin nasıl kullanılabileceğini düşünüyorum
      CRUD odaklı işlerden çok veri bilimi ya da DevOps tarafında daha faydalı olup olmayacağını merak ediyorum
    • Sonuçta skill, use case / workflow tarifi önbellekleme gibi bir kavram olarak anlaşılıyor
  • Skills'ın kilit noktası şu: spesifikasyona göre skill koduna ya da markdown'un gövde içeriğine RAG uygulanmıyor
    Yani prompt'a sadece front-matter içindeki ad ve açıklama dahil ediliyor ve skill seçimi bununla yapılıyor
    Bu yüzden açıklamada geçmeyen mantık hiç keşfedilmeyebilir
    Ayrıca skill açıklaması bir tür prompt injection olduğu için, genel ton ve token maliyetini de etkiliyor
    İlgili örnek için bu kod bağlantısına bakılabilir

    • Bana göre skill indeksi yardımdan çok yük de olabilir
      Context'i temiz tutmak önemli olduğu için, yalnızca gerektiğinde md dosyasını doğrudan ekleme yöntemini tercih ediyorum
      MCP aşırı karmaşık, skill bile biraz fazla tasarlanmış gibi geliyor
    • Bazı agentic sistemler skill'lere RAG uyguluyor
      Bu, LLM'nin kendisinden çok agentic harness tasarımı meselesi
      İleride LLM ile harness'in daha sıkı entegre olacağını düşünüyorum
    • MCP ve tools da sonuçta aynı sorunu taşıyor
  • Ben uzun zamandır benzer bir yöntem kullanıyordum
    Her işlev için klasörler oluşturup README.md, scripts, GUIDE.md yapısını kuruyordum
    Yeniden kullanılabilir kod bulduğumda (ör. clerk.dev entegrasyonu) onu bir klasörde düzenliyor,
    gerektiğinde merge-to-md ile birleştirip kullanıyordum
    Bu yaklaşım gayet iyi çalışıyordu; şimdi bunun ajana varsayılan olarak gelmesi sevindirici

    • Bu açıklama sayesinde skill kavramı kolay anlaşılır hale geliyor
  • Skills uzun vadede açık kaynak kütüphanesi gibi gelişebilir
    Kimlik doğrulama, multi-tenancy gibi standart çözümler skill olarak sunulursa
    güvenlik ve kod kalitesi ciddi biçimde artar

    • Hatta modelin küresel bir skill indeksinden ihtiyaç duyduğu skill'i arayıp indirerek
      anında kullanabilmesi, sürekli öğrenmeye bir alternatif bile olabilir
  • Skills, plugins, apps, connectors, MCPs, agents… açıkçası kafa karıştırıyor

    • Bu karmaşa teknolojinin olgunlaşmamış ve hızla değişiyor olmasından kaynaklanıyor
      En iyi yaklaşım henüz belirlenmiş değil ve terimler de oturmuş değil
      “Agent” kelimesi bile gruba göre başka anlama geliyor
    • Aslında bunların hepsi sadece context yüklemeyi kolaylaştıran araçlar
      Araç çalıştırmanın dışında, prompt'a bağlam eklemenin farklı yolları bunlar
    • Bunu tamamen geçici bir yama (bandaid) olarak görenler de var
    • Başkalarıysa bunun yalnızca API ve prompt için pazarlama isimleri olduğunu düşünüyor
    • Bu durum, LLM'lerin birbirine benzeyen ama küçük farklar taşıyan fikirleri topluca üretmesine de benziyor
  • Yakın zamanda şu yazıda
    ajan'ın LLM'yi tekrar tekrar çağırıp JSON biçiminde araç kullanım isteği alışverişi yaptığı yapı anlatılıyordu;
    bu çerçevede skill'in nasıl bir form aldığı merak ediliyor

    • İlk döngüden önce harness, LLM'ye bir <Skills> bloğu gönderiyor
      Örnek: <Skill><Name>postgres</Name><Description>pre-prod DB sorgulama yöntemi</Description><File>skills/postgres.md</File></Skill>
      Bu bildirim belirli aralıklarla yeniden gönderilerek LLM'nin skill'i “unutmaması” sağlanıyor
      Sonuçta sadece ad + açıklama + dosya yolu iletildiği için token maliyeti düşük kalıyor
      Ama yeterince akıllı bir LLM varsa, böyle bir yapı olmadan da iyi çalışabilir
    • Ajan, ihtiyaç duyduğunda bir veya daha fazla skill'i seçerek yükler
      Skill prompt'unu ve ilgili script'leri birlikte çağırıp kullanmaya yönelik standartlaştırılmış bir yöntem bu
  • Birçok kişi Skills'ı yanlış anlıyor
    Asıl nokta .md dosyası değil, kod ve talimatların paketlenmesi
    Skills, kod çalıştırma ortamını varsayıyor

    • Çalıştırılabilir kod önceden onaylanıp gerektiğinde prompt içinden çağrılabilir
      Metadata indeksleme ve lazy loading sayesinde context tasarrufu sağlaması büyük avantaj
    • Bunu literate programming'in geri dönüşü olarak tanımlayanlar da var
  • Eğer bir skills.md pazaryeri olsaydı, teknolojinin yayılmasına yardımcı olabilirdi

    • Ama pratikte spam, güvenlik ve gelir modeli eksikliği yüzünden işletmesi zor olurdu
      MCP çevresindeki spam örneklerine bakmak yeterli
      Sonunda muhtemelen sadece güvenilir şirketler veya tanınmış geliştiriciler etrafında ayakta kalırdı
    • Zaten Anthropic'in skills deposu mevcut
      Puan ya da yorum yok ama kalite konusunda umut verici
    • Bu tür girişimler sık sık çıkıyor, ancak özelleştirilmiş skill üretim maliyeti neredeyse sıfır olduğu için
      başkasının prompt'unu kullanmak için güçlü bir teşvik kalmıyor
    • Ben de Anthropic dokümanlarına bakarak skill yazan bir skill oluşturdum
      Sonuçta önemli olan şey, bunu kendi iş akışına ve kod tabanına göre optimize etmek
  • Üretilen skill'leri kullanarak, ajanın birçok denemeden sonra elde ettiği nihai çözümü derleyip toparlayamayacağını merak ediyorum

    • Ben de bir “meta skill” yapıp oturum bittikten sonra kuralları kendi kendine güncellemesini sağlıyorum
      Böylece bir flywheel etkisi oluşturmaya çalışıyorum
  • Anthropic'in OpenAI'nin Chief Product Officer'ı gibi göründüğüne dair bir şaka vardı

    • Ardından buna “üstelik maaşsız” diye ek yapan bir şaka daha geldi