- 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
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
ghCLI kullanımını anlatan bir skill bile yapılabilirBirden 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
Ö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
CRUD odaklı işlerden çok veri bilimi ya da DevOps tarafında daha faydalı olup olmayacağını merak ediyorum
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
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
Bu, LLM'nin kendisinden çok agentic harness tasarımı meselesi
İleride LLM ile harness'in daha sıkı entegre olacağını düşünüyorum
Ben uzun zamandır benzer bir yöntem kullanıyordum
Her işlev için klasörler oluşturup
README.md,scripts,GUIDE.mdyapısını kuruyordumYeniden 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
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
anında kullanabilmesi, sürekli öğrenmeye bir alternatif bile olabilir
Skills, plugins, apps, connectors, MCPs, agents… açıkçası kafa karıştırı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
Araç çalıştırmanın dışında, prompt'a bağlam eklemenin farklı yolları bunlar
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
<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
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
.mddosyası değil, kod ve talimatların paketlenmesiSkills, kod çalıştırma ortamını varsayıyor
Metadata indeksleme ve lazy loading sayesinde context tasarrufu sağlaması büyük avantaj
Eğer bir skills.md pazaryeri olsaydı, teknolojinin yayılmasına yardımcı olabilirdi
MCP çevresindeki spam örneklerine bakmak yeterli
Sonunda muhtemelen sadece güvenilir şirketler veya tanınmış geliştiriciler etrafında ayakta kalırdı
Puan ya da yorum yok ama kalite konusunda umut verici
başkasının prompt'unu kullanmak için güçlü bir teşvik kalmıyor
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
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ı