Antigravity

Google Antigravity Skills: Ajana “Yetkinlik Paketleme” Standardı

AI ajanları artık sadece sohbet eden asistanlar değil. Kod yazıyor, terminal komutları çalıştırıyor, tarayıcıda doğrulama yapıyor. Google Antigravity de bu yaklaşımı “agent-first” bir geliştirme platformuna dönüştürüyor: Bir yanda klasik editör deneyimi, diğer yanda ajanları planlatıp yürüttüğün bir yönetim yüzeyi.

Bu noktada kritik bir problem ortaya çıkıyor: Ajanı her seferinde tüm kod tabanı, tüm araçlar ve tüm prosedürlerle beslemek.

Problem: Context Saturation ve Tool Bloat

Modern ajanlar yüzlerce aracı, entegrasyonu ve kurumsal prosedürü aynı anda “aktif bellekte” taşımaya zorlanınca iki şey olur:

  1. Bağlam şişer: Kullanılmayan talimat ve araçlar token tüketir.

  2. Kalite düşer: İlgisiz bilgi modeli dağıtır, gecikme ve maliyet artar.

Bu durum “context saturation” ve “tool bloat” olarak adlandırılır. Çözüm ise her şeyi baştan yüklemek değil, ihtiyaç olduğunda çağırmaktır.

Çözüm: Agent Skills ve Progressive Disclosure

Antigravity Skills yaklaşımı, “progressive disclosure” fikrine dayanır: Ajan başlangıçta yalnızca hafif bir “menü” görür. Bu menü, her yetkinliğin kısa tanımını taşır. Kullanıcının isteği bir yetkinlikle eşleştiği anda, ajan o yetkinliğin ağır içeriğini, yani talimatları, örnekleri ve varsa scriptleri bağlama alır. Böylece bağlam yalın kalır, uzmanlık gerektiği anda devreye girer.

Skill nedir

Antigravity dokümantasyonunda Skill, ajan kabiliyetini genişletmek için kullanılan açık bir standart olarak konumlanır. Pratik tanım nettir:

  • Bir Skill, içinde bir SKILL.md dosyası olan bir klasördür.

  • Klasörde ayrıca opsiyonel olarak script, şablon, referans doküman ve varlık dosyaları bulunabilir.

Bu, “tek seferlik prompt yazma” yerine tekrar kullanılabilir bir operasyonel paket üretmek demektir.

Peki, Antigravity ekosisteminde Skill nerede durur

Skills’i doğru konumlandırmak için üç kavramı ayırmak gerekir:

  • MCP ve Tools: Ajanın “elleri”. GitHub, veritabanı, servisler gibi sistemlere kalıcı bağlantı ve eylem kabiliyeti sağlar.

  • Rules ve Workflows: Kurallar ve tetiklenen makrolar. Rules genellikle sürekli kısıtlar, Workflows genellikle komutla çağrılır.

  • Skills: Ajanın “metodolojisi”. Ajanın belirli bir işi nasıl yapacağını, hangi adımları izleyeceğini, neyi asla yapmayacağını paketler. Üstelik ajan niyet eşleşmesiyle otomatik devreye alır.

Kısaca: Tools altyapıdır, Skills prosedürdür. Rules güvenlik şerididir, Skills uygulama kılavuzudur.

Skill yapısı nasıl: Klasör ve dosyalar

Antigravity’de Skills iki kapsamda tutulabilir:

  • Proje kapsamı: <workspace-root>/.agent/skills/

  • Global kapsam: ~/.gemini/antigravity/skills/

Önerilen tipik yapı:

  • SKILL.md (zorunlu tanım dosyası)

  • scripts/ (Python, Bash vb. çalıştırılabilirler)

  • references/ (dokümanlar, şablonlar, standartlar)

  • assets/ (görsel veya statik dosyalar)

Bu ayrım, yazılım mühendisliğindeki “talimat, mantık, bilgi” ayrımını doğrudan skill paketine taşır.

SKILL.md: Router metadatası + yürütme talimatı

SKILL.md iki bölümden oluşur:

  1. YAML Frontmatter

    • Router’ın indekslediği kısımdır.

    • Özellikle description, ajanın niyet eşleştirmesinde en kritik alanıdır.

  2. Markdown Body

    • Skill aktifleştiğinde bağlama enjekte edilen talimattır.

    • Hedef, adımlar, örnekler ve kısıtlar burada net biçimde yazılır.

Aşağıdaki örnek, blog amaçlı sade bir şablondur:

yaml


name: api-change-reviewer
description: Kullanıcı bir API değişikliği, endpoint revizyonu veya breaking change etkisi sorarsa bu skill’i kullan. Sözleşme uyumu, geriye dönük uyumluluk ve versiyonlama öner.

md

# API Change Reviewer

## Goal
API değişikliklerini geriye dönük uyumluluk, sürümleme ve sözleşme (contract) açısından incelemek.

## Instructions
1. Değişikliğin türünü sınıflandır: additive, non-breaking, breaking.
2. Etki analizi yap: istemciler, dokümantasyon, testler.
3. Versiyonlama öner: semver, deprecate süresi, migration plan.

## Constraints
– Kanıtsız iddia üretme.
– Breaking change varsa mutlaka migration adımları ver.

## Examples
Kullanıcı: “GET /users response’una yeni field ekledim, breaking mi?”
Çıktı: “Additive; breaking değil. Ancak istemci deserialization kurallarını kontrol et…”

Bu şablonun ana fikri şudur: Router doğru skill’i bulsun diye description operasyonel ve keskin olmalı; yürütme kısmı da adım adım ve kısıtlarıyla yazılmalıdır.

Script entegrasyonu: Skill’in “okumaktan” “yapmaya” geçmesi

Skills’in güçlü yanı sadece talimat vermek değildir. scripts/ altına koyduğun scriptleri SKILL.md içinde referanslayarak ajanı deterministik bir yürütmeye yönlendirebilirsin. Bu yaklaşım, LLM’in tek başına zorlanacağı işleri, kontrollü bir araca devreder.

Örnek: Veritabanı inceleme skill’i yalnızca SELECT çalıştıracak şekilde kısıtlanabilir; ajan SQL’i üretir ama icrayı script yapar, çıktı da tablo olarak raporlanır. Bu desen, güvenlik ve tekrarlanabilirlik sağlar.

Refereans: 1. https://antigravity.google/docs/skills