Google Antigravity'yi kullanmaya başlama

1. Giriş

Bu codelab'de, entegre geliştirme ortamını artık temsilcilerin öne çıktığı yeni bir döneme taşıyan, ajan tabanlı geliştirme platformu Google Antigravity (belgenin geri kalanında Antigravity olarak anılacaktır) hakkında bilgi edineceksiniz.

Yalnızca satırları otomatik olarak tamamlayan standart kodlama asistanlarının aksine Antigravity, geliştirme sürecinde size yardımcı olmak için planlama, kodlama ve hatta web'de gezinme gibi işlemleri yapabilen bağımsız ajanları yönetmek için "Görev Kontrol Merkezi" sunar.

Antigravity, ajanların öncelikli olduğu bir platform olarak tasarlanmıştır. Bu yaklaşım, yapay zekanın yalnızca kod yazma aracı olmadığını, aynı zamanda karmaşık mühendislik görevlerini planlama, yürütme, doğrulama ve yineleme yeteneğine sahip bağımsız bir aktör olduğunu varsayar. Bu görevler için minimum düzeyde insan müdahalesi gerekir.

Neler öğreneceksiniz?

  • Antigravity'yi yükleme ve yapılandırma
  • Antigravity'nin temel kavramlarını (ör. Agent Manager, Editor, Browser) keşfetme
  • Antigravity'yi kendi kurallarınız ve iş akışınızla birlikte güvenlik hususlarını da göz önünde bulundurarak özelleştirme

Gerekenler

Antigravity şu anda kişisel Gmail hesaplarında önizleme olarak kullanılabilir. Birinci sınıf modelleri kullanmak için ücretsiz kota sunar.

Antigravity'nin sisteminize yerel olarak yüklenmesi gerekir. Ürün Mac, Windows ve belirli Linux dağıtımlarında kullanılabilir. Kendi makinenize ek olarak aşağıdakilere ihtiyacınız olacaktır:

  • Chrome web tarayıcısı.
  • Gmail hesabı (kişisel Gmail hesabı)

Bu codelab, her seviyeden kullanıcı ve geliştirici (yeni başlayanlar dahil) için tasarlanmıştır.

Sorun bildirme

Bu codelab'i ve Antigravity'yi kullanırken sorunlarla karşılaşabilirsiniz.

Codelab ile ilgili sorunlar (yazım hataları, yanlış talimatlar) için lütfen bu codelab'in sol alt köşesindeki Report a mistake düğmesini kullanarak bir hata kaydı açın:

b06b582bcd847f6d.png

Antigravity ile ilgili hatalar veya özellik istekleri için lütfen sorunu Antigravity'de bildirin. Bu işlemi, sol alt köşedeki Provide Feedback bağlantısını kullanarak Agent Manager'da yapabilirsiniz:

281ac826fb44d427.png

Ayrıca, profil simgenizin altındaki Report Issue bağlantısını kullanarak da düzenleyiciye gidebilirsiniz:

e8afd782a8f92129.png

2. Kurulum

Antigravity'yi henüz yüklemediyseniz Antigravity'yi yükleyerek başlayalım. Ürün şu anda önizleme sürümündedir ve kullanmaya başlamak için kişisel Gmail hesabınızı kullanabilirsiniz.

İndirilenler sayfasına gidip durumunuza uygun işletim sistemi sürümünü tıklayın. Uygulama yükleyiciyi başlatın ve uygulamayı makinenize yükleyin. Yüklemeyi tamamladıktan sonra Antigravity uygulamasını başlatın. Aşağıdakine benzer bir ekran görmeniz gerekir:

29fada39721093c.png

Lütfen her seferinde Next simgesini tıklayarak devam edin. Önemli adımlar aşağıda ayrıntılı olarak açıklanmıştır:

  • Kurulum akışını seçin: Bu seçenek, mevcut VS Code veya Cursor ayarlarınızdan içe aktarma yapmanıza olanak tanır. Yeni bir başlangıç yapacağız.
  • Bir düzenleyici teması türü seçin: Koyu temayı kullanacağız ancak bu tamamen size bağlıdır.
  • Antigravity aracını nasıl kullanmak istiyorsunuz?

7ca55560ec377130.png

Bu konuyu biraz daha ayrıntılı olarak inceleyelim. Ayarların Antigravity Kullanıcı Ayarları (Linux/Windows: Ctrl + , Mac: Cmd + ,) üzerinden dilediğiniz zaman değiştirilebileceğini unutmayın.

Seçeneklere geçmeden önce, bazı belirli özelliklere (iletişim kutusunun sağında gördüğünüz) göz atalım.

Terminal Yürütme Politikası

Bu, ajana terminalinizde komut (uygulama/araç) yürütme olanağı verme ile ilgilidir:

  • Her zaman devam et: Terminal komutlarını (yapılandırılabilir bir izin verilmeyenler listesindekiler hariç) her zaman otomatik olarak yürütün.
  • İnceleme iste: Terminal komutlarını yürütmeden önce kullanıcı incelemesi ve onayı isteyin.

Yorum politikası

Aracı, görevini yerine getirirken çeşitli yapılar (görev planı, uygulama planı vb.) oluşturur. Yorum politikası, incelenmesi gerekip gerekmediğine kimin karar vereceğini belirleyebileceğiniz şekilde ayarlanır. Her zaman incelemek mi yoksa ajanın bu konuda karar vermesine izin vermek mi istediğinizi seçin. Bu nedenle, burada da üç seçenek vardır.

  • Her Zaman Devam Et: Temsilci asla inceleme istemez.
  • Ajan Karar Verir: Ajan, inceleme isteğinde bulunma zamanına karar verir.
  • İnceleme İste: Temsilci her zaman inceleme ister.

JavaScript yürütme politikası

Bu özellik etkinleştirildiğinde, aracı URL'leri açmak, web sayfalarını okumak ve tarayıcı içeriğiyle etkileşimde bulunmak için tarayıcı araçlarını kullanabilir. Bu politika, JavaScript'in tarayıcıda nasıl yürütüleceğini kontrol eder.

  • Her Zaman Devam Et: Aracı, tarayıcıda JavaScript'i çalıştırmak için izin istemek üzere durmaz. Bu, aracıya tarayıcıda karmaşık işlemler ve doğrulama gerçekleştirme konusunda maksimum özerklik sağlar ancak güvenlik açıklarına karşı en yüksek riski de beraberinde getirir.
  • İnceleme iste: Tarayıcıda JavaScript kodu çalıştırmak için aracı her zaman durup izin ister.
  • Devre dışı: Temsilci, tarayıcıda hiçbir zaman JavaScript kodu çalıştırmaz.

Farklı politikaları anladığımıza göre, soldaki 4 seçenek, 3'ü için terminal yürütme, inceleme ve JavaScript yürütme politikalarına yönelik belirli ayarlardan, 4. seçenek ise tamamen özel olarak kontrol edebileceğimiz bir seçenektir. Bu 4 seçenek, terminalde komut yürütme ve göreve devam etmeden önce yapay zeka tarafından oluşturulan öğeleri inceleme konusunda ne kadar özerklik vermek istediğinizi seçebilmeniz için sunulur.

Bu 4 seçenek şunlardır:

  • Güvenli mod: Güvenli mod, aracı için gelişmiş güvenlik kontrolleri sunar. Bu sayede, aracının harici kaynaklara ve hassas işlemlere erişimini kısıtlayabilirsiniz. Güvenli mod etkinleştirildiğinde ortamınızı korumak için çeşitli güvenlik önlemleri uygulanır.
  • İnceleme odaklı geliştirme (önerilir): Temsilci, sık sık inceleme isteğinde bulunur.
  • Temsilci odaklı geliştirme: Temsilci hiçbir zaman inceleme istemez.
  • Özel yapılandırma

İncelemeye dayalı geliştirme seçeneği, aracının karar vermesine ve onay için kullanıcıya geri dönmesine olanak tanıdığı için iyi bir denge sağlar ve önerilen seçenektir.

Ardından, aşağıdaki tercihleriniz için seçim yapabileceğiniz Editörünüzü yapılandırın ayarları sayfası gelir:

  • Tuş bağlamaları: Tuş bağlamalarınızı yapılandırabilirsiniz.
  • Uzantılar: Popüler dil uzantılarını ve diğer önerilen uzantıları yükleyebilirsiniz.
  • Komut satırı: Antigravity'yi agy ile açmak için komut satırı aracını yükleyebilirsiniz.

Artık Google'da oturum açmaya hazırsınız. Daha önce de belirtildiği gibi, Antigravity önizleme modunda kullanılabilir ve kişisel bir Gmail hesabınız varsa ücretsizdir. Hesabınızla hemen oturum açın. Bu işlem, oturum açmanıza olanak tanıyan tarayıcıyı açar. Kimlik doğrulama başarılı olduğunda aşağıdaki mesaja benzer bir mesaj görürsünüz ve Antigravity uygulamasına yönlendirilirsiniz. Her şeyi akışına bırakın.

Son olarak, Kullanım Şartları. Dahil olmak isteyip istemediğinize karar verip Next simgesini tıklayabilirsiniz.

Bu sizi, Antigravity'nin sizinle işbirliği yapmak için beklediği gerçek anına götürecek.

3. Temsilci Yöneticisi

Başlamaya hazırız.

Antigravity, açık kaynaklı Visual Studio Code (VS Code) temelini kullanır ancak kullanıcı deneyimini kökten değiştirerek metin düzenleme yerine aracı yönetimine öncelik verir. Arayüz, Editor ve Agent Manager olmak üzere iki ayrı birincil pencereye ayrılmıştır. Bu sorumluluk ayrımı, bireysel katkı ile mühendislik yönetimi arasındaki ayrımı yansıtır.

Agent Manager: Mission Control

Antigravity başlatıldığında kullanıcı genellikle bir dosya ağacıyla değil, aşağıdaki resimde gösterildiği gibi Aracı Yöneticisi ile karşılaşır:

d5ae91fc746e1bba.png

Bu arayüz, Mission Control kontrol paneli görevi görür. Üst düzey düzenleme için tasarlanmıştır. Geliştiricilerin farklı çalışma alanlarında veya görevlerde eşzamansız olarak çalışan birden fazla aracı oluşturmasına, izlemesine ve bunlarla etkileşimde bulunmasına olanak tanır.

Bu görünümde geliştirici, mimar rolündedir. Üst düzey hedefler tanımlarlar. Örneğin:

  • Kimlik doğrulama modülünü yeniden düzenleme
  • Bağımlılık ağacını güncelleme
  • Faturalandırma API'si için test paketi oluşturma

Yukarıdaki şemada belirtildiği gibi, bu isteklerin her biri özel bir aracı örneği oluşturur. Kullanıcı arayüzü, bu paralel iş akışlarının görselleştirilmesini sağlar. Her aracının durumunu, ürettiği Artifacts'i (planlar, sonuçlar, farklılıklar) ve insan onayı bekleyen tüm istekleri gösterir.

Bu mimari, önceki IDE'lerin temel bir sınırlamasını (doğrusal ve eşzamanlı olan, daha çok chatbot deneyimi sunan IDE'ler) ele alıyor. Geleneksel bir sohbet arayüzünde, geliştiricinin bir sonraki soruyu sormadan önce yapay zekanın kodu oluşturmayı bitirmesini beklemesi gerekir. Antigravity'nin Yönetici Görünümü'nde bir geliştirici, beş farklı hatayı aynı anda düzeltmek için beş farklı temsilci gönderebilir ve bu sayede verimliliğini etkili bir şekilde artırabilir.

Yukarıdaki Next simgesini tıkladığınızda bir çalışma alanı açma seçeneği sunulur.

ec72712ea24bf6d5.png

Workspace'i VS Code'dan bildiğiniz gibi düşündüğünüzde işiniz tamamlanır. Bu nedenle, düğmeyi tıklayıp başlayacağımız klasörü seçerek yerel bir klasör açabiliriz. Benim durumumda, ana klasörümde my-agy-projects adlı bir klasör vardı ve onu seçtim. Tamamen farklı bir klasör kullanabilirsiniz. Dilerseniz bu adımı tamamen atlayabilir ve daha sonra istediğiniz zaman bir çalışma alanı açabilirsiniz.

Bu adımı tamamladığınızda, aşağıda gösterilen Agent Manager penceresine yönlendirilirsiniz:

156224e223eeda36.png

Uygulamanın, seçilen çalışma alanı klasöründe (my-agy-projects) yeni bir sohbet başlatmaya hemen hazır olduğunu fark edeceksiniz. Diğer yapay zeka uygulamalarıyla (Cursor, Gemini CLI) çalışma konusundaki mevcut bilginizi kullanabilir ve istem oluştururken ek bağlam eklemek için @ ile diğer yöntemlerden yararlanabilirsiniz.

Hem Planning hem de Model Selection açılır listelerine göz atın. Model Seçimi açılır menüsünden, Agent'ınızın kullanması için şu anda kullanılabilen modellerden birini seçebilirsiniz. Liste aşağıda gösterilmektedir:

fb0744dc43911365.png

Benzer şekilde, aracının varsayılan Planning modunda olacağını görüyoruz. Ancak Fast modunu da kullanabiliriz.

f403e40ad480efc9.png

Bu konuyla ilgili belgelerde neler söylendiğine bakalım:

  • Planning: Bir Temsilci, görevleri yürütmeden önce plan yapabilir. Derinlemesine araştırma, karmaşık görevler veya ortak çalışmalar için kullanın. Bu modda, Ajan çalışmasını görev grupları halinde düzenler, yapay içerikler üretir ve en iyi kalite için çalışmasını kapsamlı bir şekilde araştırmak, üzerinde düşünmek ve planlamak üzere diğer adımları atar. Burada çok daha fazla çıktı göreceksiniz.
  • Fast: Agent, görevleri doğrudan yürütür. Değişkenleri yeniden adlandırma, birkaç bash komutunu başlatma veya diğer küçük ve yerel görevler gibi daha hızlı tamamlanabilecek basit görevler için kullanın. Bu yöntem, hızın önemli bir faktör olduğu ve görevin, kalitenin düşmesi konusunda endişelenmeyecek kadar basit olduğu durumlarda faydalıdır.

Ajanlardaki düşünme bütçesi ve benzer terimlere aşinaysanız bunu, ajanın düşünme sürecini kontrol etme ve dolayısıyla düşünme bütçesini doğrudan etkileme yeteneği olarak düşünebilirsiniz. Şimdilik varsayılan ayarları kullanacağız ancak lansman sırasında Gemini 3 Pro modelinin herkes için sınırlı kotalar dahilinde kullanılabileceğini unutmayın. Gemini 3 kullanımına yönelik ücretsiz kotalarınızı tükettiyseniz bu durumu belirten mesajlar alırsınız.

Şimdi biraz zaman ayırarak buradaki Agent Manager (pencere) hakkında birkaç şey öğrenelim. Böylece temel yapı taşları, Antigravity'de gezinme ve daha fazlası hakkında net bir fikir edinebilirsiniz. Temsilci Yöneticisi penceresi aşağıda gösterilmiştir:

eaba0c6ee17369e2.png

Lütfen yukarıdaki numaralı diyagrama bakın:

  1. Start Conversation: Yeni bir görüşme başlatmak için bunu tıklayın. Bu işlem sizi doğrudan Ask anything yazan girişe yönlendirir.
  2. Workspaces: Çalışma alanlarından ve istediğiniz çalışma alanında çalışabileceğinizden bahsettik. Dilediğiniz zaman daha fazla çalışma alanı ekleyebilir ve sohbete başlarken herhangi bir çalışma alanını seçebilirsiniz.
  3. Editor View: İstediğiniz zaman düzenleyici görünümüne geçebilirsiniz. Bu işlem, çalışma alanı klasörünüzü ve oluşturulan tüm dosyaları gösterir. Dosyaları doğrudan düzenleyebilir veya düzenleyicide satır içi rehberlik sağlayabilir, komut verebilirsiniz. Böylece Aracı, değiştirilen önerilerinize/talimatlarınıza göre işlem yapabilir veya değişiklik yapabilir. Düzenleyici görünümünü ilerleyen bölümlerde ayrıntılı olarak ele alacağız.

4. Antigravity Browser

Belgelere göre, temsilci tarayıcıyla etkileşim kurmak istediğinde, söz konusu görevi yerine getirmek için bir tarayıcı alt temsilcisi çağırır. Tarayıcı alt aracısı, Antigravity tarafından yönetilen tarayıcıda açık olan sayfalarda çalışmak üzere uzmanlaşmış bir model kullanır. Bu model, ana aracı için seçtiğiniz modelden farklıdır.

Bu alt aracı, tarayıcınızı kontrol etmek için gerekli olan çeşitli araçlara erişebilir. Bunlar arasında tıklama, kaydırma, yazma, konsol günlüklerini okuma ve daha fazlası yer alır. Ayrıca, DOM yakalama, ekran görüntüleri veya Markdown ayrıştırma yoluyla açık sayfalarınızı okuyabilir ve video çekebilir.

Bu nedenle, Antigravity tarayıcı uzantısını başlatıp yüklememiz gerekir. Bunu yapmak için bir görüşme başlatalım ve adımları inceleyelim.

Çalışma alanında yeni bir görüşme başlatın ve şu görevi verin: go to antigravity.google

Görevi gönderin. Temsilcinin görevi analiz ettiğini görürsünüz ve düşünce sürecini inceleyebilirsiniz. Bir noktada doğru şekilde devam edecek ve tarayıcı aracısını aşağıdaki gibi ayarlaması gerektiğini belirtecektir. Setup simgesini tıklayın.

e7119f40e093afd2.png

Bu işlemle tarayıcı açılır ve aşağıdaki gibi bir mesaj gösterilerek uzantının yüklenmesi istenir:

82fb87d7d75b4a6c.png

Devam ettiğinizde, yükleyebileceğiniz Chrome uzantısına yönlendirilirsiniz.

f3468f0e5f3bb075.png

Uzantıyı başarıyla yükledikten sonra Antigravity Agent çalışmaya başlar ve görevini yapabilmesi için izin vermenizi beklediğini belirtir. Açılan tarayıcı penceresinde bazı etkinlikler görmeniz gerekir:

7f0367e00ac36d5a.png

Temsilci Yöneticisi görünümüne geri döndüğünüzde aşağıdakileri görmeniz gerekir:

b9d89e1ebefcfd76.png

Agent'tan antigravity.google web sitesini ziyaret etmesini istediğimiz için tam olarak beklediğimiz şey oldu. İzni verdiğinizde, web sitesine güvenli bir şekilde gidildiğini görürsünüz (aşağıda gösterildiği gibi):

77fcc38b5fb4ca7c.png

5. Yapılar

Antigravity, çalışmalarını planlayıp tamamlayarak Artifacts oluşturur. Bu sayede, çalışmalarını paylaşır ve kullanıcıdan geri bildirim alır. Bunlar; zengin markdown dosyaları, mimari diyagramlar, resimler, tarayıcı kayıtları, kod farklılıkları vb.

Yapay nesneler, "güven boşluğunu" kapatır. Bir temsilci "Hatayı düzelttim" dediğinde geliştiricinin doğrulamak için kodu okuması gerekiyordu. Antigravity'de, ajan bunu kanıtlamak için bir eser üretiyor.

Antigravity tarafından üretilen başlıca yapay nesneler şunlardır:

  • Task Lists: Temsilci, kod yazmadan önce yapılandırılmış bir plan oluşturur. Bu planı genellikle düzenlemeniz gerekmez ancak inceleyebilir ve gerekirse değiştirmek için yorum ekleyebilirsiniz.
  • Implementation Plan: Bu, bir görevi tamamlamak için kod tabanınızdaki değişiklikleri tasarlamak amacıyla kullanılır. Bu planlar, hangi revizyonların gerekli olduğuna dair teknik ayrıntılar içerir ve yapay ürün yorum politikası "Her Zaman Devam Et" olarak ayarlanmadığı sürece kullanıcı tarafından incelenmek üzere tasarlanmıştır.
  • Walkthrough: Bu, temsilci görev uygulamasını tamamladıktan sonra, değişikliklerin özeti ve nasıl test edileceği hakkında bilgi vermek için oluşturulur.
  • Code diffs: Antigravity, teknik olarak bir yapay nesne olmasa da inceleyip yorum yapabileceğiniz kod farklılıkları da oluşturur.
  • Screenshots: Temsilci, kullanıcı arayüzünün durumunu değişiklikten önce ve sonra yakalar.
  • Browser Recordings: Dinamik etkileşimler için (ör. "Giriş düğmesini tıklayın, yükleme çubuğunun bitmesini bekleyin, kontrol panelinin yüklendiğini doğrulayın") temsilci, oturumunun videosunu kaydeder. Geliştirici, uygulamayı kendisi çalıştırmadan işlevsel şartın karşılandığını doğrulamak için bu videoyu izleyebilir.

Yapay öğeler hem Ajan Yöneticisi hem de Düzenleyici görünümlerinde oluşturulur ve gösterilir.

Düzenleyici görünümünün sağ alt köşesinde Artifacts simgesini tıklayabilirsiniz:

5deff47fe0a93aa1.png

Aracı Yöneticisi görünümünde, sağ üstte Review changes simgesinin yanında, yapay nesneleri açıp kapatabileceğiniz bir düğme veya yapay nesneler açıksa oluşturulan yapay nesnelerin listesini görebilirsiniz:

5320f447471c43eb.png

Aşağıda gösterildiği gibi Artifacts (Yapılar) görünümünü görmeniz gerekir. Buradaki örneğimizde, Aracı'ya antigravity.google sayfasını ziyaret etmesi talimatını verdik. Bu nedenle, ekran görüntüsü alındı ve aynı ekran görüntüsünün videosu oluşturuldu:

19d9738bb3c7c0c9.png

Kod farklılıklarını düzenleyici görünümündeki Review Changes bölümünde görebilirsiniz:

e1d8fd6e7df4daf3.png

Geliştiriciler, "Google Dokümanlar tarzı yorumlar" kullanarak bu yapıtlarla ve kod farklılıklarıyla etkileşimde bulunabilir. Belirli bir işlemi veya görevi seçebilir, komutu istediğiniz şekilde verebilir ve ardından bunu aracıya gönderebilirsiniz. Ardından temsilci bu geri bildirimi alıp buna göre yineleme yapar. Yazara geri bildirimde bulunduğunuz ve yazarın bu geri bildirimi yinelediği etkileşimli Google Dokümanlar'ı kullanmayı düşünebilirsiniz.

6. Düzenleyici

Düzenleyici, VS Code'un alışkanlıklarını koruyarak deneyimli geliştiricilerin kas hafızasına saygı gösterir. Standart dosya gezgini, söz dizimi vurgulama ve uzantı ekosistemi içerir.

Düzenleyici'ye gitmek için Agent Manager'ın sağ üst kısmındaki Open Editor düğmesini tıklayabilirsiniz.

Kurulum ve Uzantılar

Normal bir kurulumda düzenleyici, terminal ve aracı görünür durumda olur:

7996408528de93e1.png

Bu durum geçerli değilse terminal ve aracı panellerini aşağıdaki şekilde değiştirebilirsiniz:

  • Terminal panelini açıp kapatmak için Ctrl + ` kısayolunu kullanın.
  • Aracı panelini açıp kapatmak için Cmd + L kısayolunu kullanın.

Ayrıca Antigravity, kurulum sırasında bazı uzantıları yükleyebilir ancak kullandığınız programlama diline bağlı olarak daha fazla uzantı yüklemeniz gerekebilir. Örneğin, Python geliştirme için yüklemeyi seçebileceğiniz uzantılar şunlardır:

bd33a79837b5a12a.png

Düzenleyici

Otomatik tamamla

Düzenleyiciye kod yazarken akıllı otomatik tamamlama özelliği devreye girer. Bu özelliği Tab tuşuna basarak kabul edebilirsiniz:

e90825ed7a009350.png

İçe aktarmak için Tab tuşuna basın.

Eksik bağımlılıkları eklemek için içe aktarma sekmesi önerisini alırsınız:

bcab60794caa0aec.png

Sekme tuşuyla atlama

İmleci kodda bir sonraki mantıksal yere taşımak için sekme ile atlama önerileri alırsınız:

8610ae5217be7fe5.png

Komutlar

Doğal dil kullanarak satır içi tamamlama için düzenleyicide veya terminalde Cmd + I ile komutları tetikleyebilirsiniz.

Düzenleyicide, Fibonacci sayılarını hesaplama yöntemi isteyebilir ve ardından bunu kabul edebilir veya reddedebilirsiniz:

13a615e515cea100.png

Terminalde terminal komutu önerileri alabilirsiniz:

5a75e560f998cedc.png

Temsilci Yan Paneli

Düzenleyicide, aracı yan panelini çeşitli şekillerde açıp kapatabilirsiniz.

Manuel açma

Sağdaki temsilci panelini Cmd + L kısayoluyla manuel olarak açıp kapatabilirsiniz.

Soru sormaya başlayabilir, @ simgesini kullanarak dosya, dizin, MCP sunucuları gibi daha fazla bağlam ekleyebilir veya / simgesini kullanarak bir iş akışına (kaydedilmiş bir istem) başvurabilirsiniz:

95c5a6d31d771748.png

Ayrıca iki sohbet modu arasından seçim yapabilirsiniz: Fast veya Planning :

d3d1449f12510e3e.png

Fast, hızlı görevler için önerilirken Planning, temsilcinin onaylayabileceğiniz bir plan oluşturduğu daha karmaşık görevler için önerilir.

Ayrıca, görüşme için farklı modeller de seçebilirsiniz:

af709bcc03c1e21e.png

Açıklama ve düzeltme

Aracıyı tetiklemenin bir başka yolu da bir sorunun üzerine gelip Explain and fix simgesini seçmektir:

e45cbe02ed76b9c1.png

Sorunları temsilciye gönderme

Ayrıca, Problems bölümüne gidip Send all to Agent seçeneğini belirleyerek temsilcinin bu sorunları düzeltmesini sağlayabilirsiniz:

e4992d14708005d0.png

Terminal çıkışını temsilciye gönderme

Hatta terminal çıkışının bir bölümünü seçip Cmd + L ile aracıya gönderebilirsiniz:

c40293bab474c9b1.png

Düzenleyici ve Temsilci Yöneticisi arasında geçiş yapma

Dilediğiniz zaman, düzenleyici modundayken sağ üstteki Open Agent Manager düğmesini tıklayarak düzenleyici modu ile tam aracı yöneticisi modu arasında geçiş yapabilir, aracı yöneticisi modundayken sağ üstteki Open Editor düğmesini tıklayarak da geri dönebilirsiniz.

Alternatif olarak, iki mod arasında geçiş yapmak için Cmd + E klavye kısayolunu da kullanabilirsiniz.

7. Geri Bildirim Gönder

Antigravity'nin temelinde, deneyimin her aşamasında geri bildirimlerinizi kolayca toplama özelliği yer alır. Aracı bir görev üzerinde çalışırken farklı eserler oluşturur:

  • Uygulama planı ve görev listesi (kodlamadan önce)
  • Kod farklılıkları (kod oluştururken)
  • Sonuçları doğrulama (kodlamadan sonra)

Bu yapıtlar, Antigravity'nin planlarını ve ilerleme durumunu iletme yöntemidir. Daha da önemlisi, Google Dokümanlar tarzı yorumlarla aracıya geri bildirimde bulunabilirsiniz. Bu, aracı istediğiniz yöne etkili bir şekilde yönlendirmek için çok yararlıdır.

Basit bir yapılacaklar listesi uygulaması oluşturmayı deneyelim ve bu süreçte Antigravity'ye nasıl geri bildirim sağlayabileceğimizi görelim.

Planlama modu

Öncelikle Antigravity'nin Planning modunda (Fast modu yerine) olduğundan emin olmanız gerekir. Bu modu, aracı tarafı panel sohbetinde seçebilirsiniz. Bu sayede Antigravity, kod yazmaya başlamadan önce bir uygulama planı ve görev listesi oluşturur. Ardından, Create a todo list web app using Python gibi bir istem deneyin. Bu işlem, ajanın planlama yapmaya ve bir uygulama planı oluşturmaya başlamasını sağlar.

Uygulama planı

Uygulama planı, Antigravity'nin ne yapmayı planladığına, hangi teknoloji yığınını kullanacağına ve önerilen değişikliklerin üst düzey bir açıklamasına dair genel bir bakış sunar.

Implementation Plan - Python Todo App
Goal
Create a simple, functional, and aesthetically pleasing Todo List web application using Python (Flask).

Tech Stack
Backend: Python with Flask
Frontend: HTML5, CSS3 (Vanilla), Jinja2 templates
...

Geri bildirim gönderebileceğiniz ilk yer de burasıdır. Örneğimizde, aracı Python web çerçevesi olarak Flask'ı kullanmak istiyor. Bunun yerine FastAPI kullanmak için uygulama planına bir yorum ekleyebiliriz. Yorumu ekledikten sonra yorumu gönderin veya Antigravity'den güncellenmiş uygulama planıyla Proceed yapmasını isteyin.

Görev listesi

Uygulama planı güncellendikten sonra Antigravity bir görev listesi oluşturur. Bu, Antigravity'nin uygulamayı oluşturmak ve doğrulamak için uygulayacağı adımların somut bir listesidir.

Task Plan
 Create requirements.txt
 Create directory structure (static/css, templates)
 Create static/css/style.css
 Create templates/index.html
 Create main.py with FastAPI setup and Database logic
 Verify application

Bu, geri bildirimde bulunabileceğiniz ikinci yerdir.

Örneğin, kullanım alanımızda aşağıdaki yorumu ekleyerek daha ayrıntılı doğrulama talimatları ekleyebilirsiniz: Verify application by adding, editing, and deleting a todo item and taking a screenshot.

Kod değişiklikleri

Bu noktada Antigravity, yeni dosyalarda bazı kodlar oluşturur. Ayrıntılara bakmadan bu değişiklikleri temsilci sohbeti yan panelinde Accept all veya Reject all yapabilirsiniz.

Değişikliklerin ayrıntılarını görmek ve koda ayrıntılı yorumlar eklemek için Review changes simgesini de tıklayabilirsiniz. Örneğin, main.py içine şu yorumu ekleyebiliriz: Add basic comments to all methods

Bu, Antigravity ile kod üzerinde yineleme yapmanın harika bir yoludur.

Adım adım açıklamalı kılavuz

Antigravity kodlamayı tamamladıktan sonra sunucuyu başlatır ve uygulamayı doğrulamak için bir tarayıcı açar. Görev ekleme, görev güncelleme gibi bazı manuel testler yapar. Tüm bunlar Antigravity tarayıcı uzantısı sayesinde gerçekleşir. Son olarak, uygulamayı doğrulamak için yaptığı işlemleri özetleyen bir açıklama dosyası oluşturur. Bu dosyada, tarayıcı kaydı içeren bir ekran görüntüsü veya doğrulama akışı yer alır.

Ayrıca, ekran görüntüsü veya tarayıcı kaydı hakkında yorum da yapabilirsiniz. Örneğin, Change the blue theme to orange theme yorumunu ekleyip gönderebiliriz. Yorum gönderildikten sonra Antigravity değişiklikleri yapar, sonuçları doğrular ve adım adım açıklamayı günceller.

Değişiklikleri geri al

Son olarak, her adımdan sonra değişiklikten memnun kalmazsanız sohbetten geri alma seçeneğini kullanabilirsiniz. Sohbette ↩️ Undo changes up to this point simgesini seçmeniz yeterlidir.

8. Kurallar ve İş Akışları

Antigravity'de birkaç özelleştirme seçeneği bulunur: Kurallar ve İş Akışları.

Düzenleyici modundayken sağ üst köşedeki ... simgesini tıklayın ve Customizations seçeneğini belirleyin. Rules ve Workflows simgelerini görürsünüz:

ff8babd8d8bcfa83.png

Kurallar, aracının davranışını yönlendirmeye yardımcı olur. Bunlar, aracı kod oluşturup test ederken uymasını sağlamak için sağlayabileceğiniz yönergelerdir. Örneğin, aracının belirli bir kod stilini izlemesini veya yöntemleri her zaman belgelemesini isteyebilirsiniz. Bunları kural olarak ekleyebilirsiniz. Ajan, bu kuralları dikkate alır.

İş akışları, temsilciyle etkileşim kurarken / ile isteğe bağlı olarak tetikleyebileceğiniz kayıtlı istemlerdir. Ayrıca aracının davranışını yönlendirirler ancak kullanıcı tarafından talep üzerine tetiklenirler.

Kurallar, sistem talimatlarına benzerken iş akışları, istediğiniz zaman seçebileceğiniz kayıtlı istemlere benzer.

Hem Kurallar hem de İş Akışları global olarak veya çalışma alanı başına uygulanabilir ve aşağıdaki konumlara kaydedilebilir:

  • Genel kural: ~/.gemini/GEMINI.md
  • Global iş akışı: ~/.gemini/antigravity/global_workflows/<YOUR_WORKFLOW_NAME>.md
  • Çalışma alanı kuralları: your-workspace/.agents/rules/
  • Workspace iş akışları: your-workspace/.agents/workflows/

Çalışma alanına bazı kurallar ve iş akışları ekleyelim.

Kural ekle

Öncelikle bir kod stili kuralı ekleyelim. Rules simgesine gidin ve +Workspace düğmesini seçin. Aşağıdaki kod stili kurallarıyla birlikte code-style-guide gibi bir ad verin:

* Make sure all the code is styled with PEP 8 style guide
* Make sure all the code is properly commented

İkinci olarak, kodun code-generation-guide kuralındaki örneklerle modüler bir şekilde oluşturulmasını sağlamak için başka bir kural ekleyelim:

* The main method in main.py is the entry point to showcase functionality.
* Do not generate code in the main method. Instead generate distinct functionality in a new file (eg. feature_x.py)
* Then, generate example code to show the new functionality in a new method in main.py (eg. example_feature_x) and simply call that method from the main method.

İki kural kaydedilir ve hazır hale gelir:

bfd179dfef6b2355.png

İş akışı ekleyin

Ayrıca birim testleri oluşturmak için bir iş akışı tanımlayalım. Bu sayede, koddan memnun olduğumuzda birim testlerini tetikleyebiliriz (temsilcinin sürekli olarak birim testleri oluşturması yerine).

Workflows simgesine gidin ve +Workspace düğmesini seçin. Aşağıdaki bilgilerle birlikte generate-unit-tests gibi bir ad verin:

* Generate unit tests for each file and each method
* Make sure the unit tests are named similar to files but with test_ prefix

İş akışı da artık kullanıma hazır:

d22059258592f0e1.png

Deneyin

Şimdi kuralları ve iş akışlarını uygulamalı olarak görelim. Çalışma alanınızda bir iskelet main.py dosyası oluşturun:

def main():
    pass

if __name__ == "__main__":
    main()

Şimdi temsilci sohbet penceresine gidin ve temsilciye şunu sorun: Implement binary search and bubble sort.

Bir veya iki dakika sonra çalışma alanında üç dosya görürsünüz: main.py, bubble_sort.py, binary_search.py. Ayrıca tüm kuralların uygulandığını da fark edeceksiniz: Ana dosya karmaşık değil ve örnek kodu içeriyor, her özellik kendi dosyasında uygulanıyor, tüm kodlar belgelenmiş ve iyi bir tarzda yazılmış:

from binary_search import binary_search, binary_search_recursive
from bubble_sort import bubble_sort, bubble_sort_descending


def example_binary_search():
    """
    Demonstrate binary search algorithm with various test cases.
    """
    ...

def example_bubble_sort():
    """
    Demonstrate bubble sort algorithm with various test cases.
    """
    ...

def main():
    """
    Main entry point to showcase functionality.
    """
    example_binary_search()
    example_bubble_sort()
    print("\n" + "=" * 60)


if __name__ == "__main__":
    main()

Koddan memnun olduğumuza göre şimdi birim testi oluşturma iş akışını tetikleyip tetikleyemeyeceğimize bakalım.

Sohbete gidin ve /generate yazmaya başlayın. Antigravity, iş akışımız hakkında bilgi sahibidir:

8a3efd9e3be7eb6f.png

generate-unit-tests simgesini seçip girin. Birkaç saniye sonra çalışma alanınızda yeni dosyalar (test_binary_search.py, test_bubble_sort.py) görünür. Bu dosyalarda, halihazırda uygulanmış bir dizi test bulunur.

11febd7940ef8199.png

Güzel!

9. Beceri

Antigravity'nin temelini oluşturan modeller (ör. Gemini) güçlü genellemeciler olsa da projenizin bağlamını veya ekibinizin standartlarını bilmezler. Her kuralı veya aracı aracının bağlam penceresine yüklemek "araç şişmesine", daha yüksek maliyetlere, gecikmeye ve kafa karışıklığına yol açar.

Antigravity Skills, bu sorunu aşamalı ifşa ile çözer. Beceri, ihtiyaç duyulana kadar kullanılmayan özel bir bilgi paketidir. Yalnızca belirli isteğiniz becerinin açıklamasıyla eşleştiğinde aracının bağlamına yüklenir .

Yapı ve Kapsam

Beceriler, dizine dayalı paketlerdir. İhtiyaçlarınıza bağlı olarak bunları iki kapsamda tanımlayabilirsiniz:

  • Genel Kapsam (~/.gemini/antigravity/skills/): Tüm projelerinizde kullanılabilir (ör. "JSON'u Biçimlendir", "Genel Kod İncelemesi").
  • Çalışma alanı kapsamı (<workspace-root>/.agents/skills/): Yalnızca belirli bir proje içinde kullanılabilir (ör. "Bu uygulamanın hazırlık aşamasına dağıt", "Bu çerçeve için standart metin oluştur").

Beceri Anatomisi

Tipik bir beceri dizini şu şekilde görünür :

my-skill/
├── SKILL.md    #(Required) metadata & instructions.
├── scripts/    # (Optional) Python or Bash scripts for execution.
├── references/ # (Optional) text, documentation, or templates.
└── assets/     # (Optional) Images or logos.

Şimdi bazı beceriler ekleyelim.

Kod İnceleme Becerisi

Bu, yalnızca talimat içeren bir beceridir. Yani yalnızca meta verileri ve beceri talimatlarını içeren SKILL.md dosyasını oluşturmamız gerekir. Aracıya, kod değişikliklerini hatalar, stil sorunları ve en iyi uygulamalar açısından incelemesi için ayrıntılar sağlayan bir global beceri oluşturalım.

Öncelikle bu global beceriyi içerecek dizini oluşturun.

mkdir -p ~/.gemini/antigravity/skills/code-review

Yukarıdaki dizinde aşağıdaki içeriğe sahip bir SKILL.md dosyası oluşturun:

---
name: code-review
description: Reviews code changes for bugs, style issues, and best practices. Use when reviewing PRs or checking code quality.
---

# Code Review Skill

When reviewing code, follow these steps:

## Review checklist

1. **Correctness**: Does the code do what it's supposed to?
2. **Edge cases**: Are error conditions handled?
3. **Style**: Does it follow project conventions?
4. **Performance**: Are there obvious inefficiencies?

## How to provide feedback

- Be specific about what needs to change
- Explain why, not just what
- Suggest alternatives when possible

Yukarıdaki SKILL.md dosyasının en üstte meta verileri (ad ve açıklama), ardından talimatları içerdiğini unutmayın. Yüklendiğinde aracı yalnızca yapılandırdığınız becerilerin meta verilerini okur ve beceri talimatlarını yalnızca gerekirse yükler.

Deneyin

İçeriği aşağıda gösterildiği gibi olan demo_bad_code.py adlı bir dosya oluşturun:

import time

def get_user_data(users, id):
   # Find user by ID
   for u in users:
       if u['id'] == id:
            return u
   return None

def process_payments(items):
   total = 0
   for i in items:
       # Calculate tax
       tax = i['price'] * 0.1
       total = total + i['price'] + tax
       time.sleep(0.1) # Simulate slow network call
  
   return total

def run_batch():
   users = [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}]
   items = [{'price': 10}, {'price': 20}, {'price': 100}]
  
   u = get_user_data(users, 3)
   print("User found: " + u['name']) # Will crash if None
  
   print("Total: " + str(process_payments(items)))

if __name__ == "__main__":
   run_batch()

Ajana sorun: review the @demo_bad_code.py file. Temsilci, code-review becerisini belirlemeli, ayrıntıları yüklemeli ve ardından code-review/SKILL.md dosyasında verilen talimatlara göre işlemi gerçekleştirmelidir.

Örnek bir çıkış aşağıda gösterilmektedir:

d90a989f4555e2fc.png

Code Header Template Skill

Bazen bir becerinin büyük bir statik metin bloğu (ör. lisans başlığı) kullanması gerekir. Bu metni doğrudan isteme girmek gereksizdir. Bunun yerine, dosyayı resources/ klasörüne yerleştiririz ve aracıya yalnızca gerektiğinde okumasını söyleriz .

İlk olarak, bu çalışma alanı becerisini içerecek dizini oluşturun.

mkdir -p .agents/skills/license-header-adder/resources

Lisans metninizle .agents/skills/license-header-adder/resources/HEADER.txt oluşturun:

/*
 * Copyright (c) 2026 YOUR_COMPANY_NAME LLC.
 * All rights reserved.
 * This code is proprietary and confidential.
 */

Aşağıdaki içeriklere sahip bir .agents/skills/license-header-adder/SKILL.md dosyası oluşturun:

---
name: license-header-adder
description: Adds the standard corporate license header to new source files.
---

# License Header Adder

This skill ensures that all new source files have the correct copyright header.

## Instructions
1. **Read the Template**: Read the content of `resources/HEADER.txt`.
2. **Apply to File**: When creating a new file, prepend this exact content.
3. **Adapt Syntax**: 
   - For C-style languages (Java, TS), keep the `/* */` block.
   - For Python/Shell, convert to `#` comments.

Deneyin

Ajana şunları sorun: Create a new Python script named data_processor.py that prints 'Hello World'.

Temsilci, şablonu okur, C tarzı yorumları Python tarzına dönüştürür ve bunları yeni dosyanıza otomatik olarak ekler.

Bu becerileri oluşturarak genel amaçlı Gemini modelini projeniz için uzman bir modele dönüştürmüş olursunuz. Kod inceleme yönergelerinizi veya lisans başlıklarınızı takip etmek gibi en iyi uygulamalarınızı kodladınız. Artık "lisansı eklemeyi unutma" veya "commit biçimini düzelt" gibi istemleri yapay zekaya tekrar tekrar göndermek yerine, aracı ekibinizle nasıl çalışacağını içgüdüsel olarak biliyor.

10. Aracıyı Güvenli Hale Getirme

Bir yapay zeka aracısına terminalinize ve tarayıcınıza erişim izni vermek iki ucu keskin bir bıçaktır. Bu özellik, bağımsız hata ayıklama ve dağıtım olanağı sunsa da istem ekleme ve veri sızdırma için vektörler açar.

Antigravity, Terminal Komutu Otomatik Yürütme politikaları, izin verilenler listeleri ve engellenenler listeleri etrafında dönen ayrıntılı bir izin sistemiyle bu sorunu ele alır.

Antigravity'yi ilk kez yapılandırırken veya ayarlar menüsünden bir Terminal Command Auto Execution politikası seçmeniz gerekir. Bu ayar, aracının kabuk komutlarıyla ilgili özerkliğini belirler. Bu ayarla ilgili mevcut ayarlarınızı görüntülemek için Antigravity — Settings bölümüne gidin. Aşağıdaki seçenekleri içeren Terminal bölümünü ve Terminal Command Auto Execution politikasını görmeniz gerekir:

Politika Modu

Açıklama

İnceleme İsteğinde Bulun

Temsilci, terminal komutlarını (izin verilenler listesindekiler hariç) yürütmeden önce her zaman onay ister.

Her Zaman Devam Et

Temsilci, terminal komutlarını (Reddetme listesindekiler hariç) yürütmeden önce hiçbir zaman onay istemez. Bu, aracıya uzun süre müdahale olmadan çalışabilme konusunda maksimum yetenek sağlar ancak aynı zamanda aracının güvenli olmayan bir terminal komutu yürütme riski de en yüksektir.

İzin verilenler listesini yapılandırma

İzin verilenler listesi, öncelikle İnceleme İste politikasıyla birlikte kullanılır. Bu, olumlu bir güvenlik modelini temsil eder. Yani açıkça izin verilmediği sürece her şey yasaktır. Bu en güvenli yapılandırmadır.

Adım adım yapılandırma

  1. Terminal Command Auto Execution (Terminal Komutunun Otomatik Yürütülmesi) ayarını Request Review (İnceleme İste) olarak belirleyin.
  2. Yanındaki Add (Ekle) düğmesini tıklayarak Allow List Terminal Commands (İzin Verilen Terminal Komutları Listesi) bölümüne aşağıdaki komutu ekleyin : ls -al . İsterseniz başka terminal komutları da ekleyebilirsiniz.

İzin verilenler listesini test etme

  • Ajana sorun: List the files in this directory.
  • Aracı ls otomatik olarak çalışır.
  • Ajana sorun: Delete the <some file>
  • Aracı rm <filepath> deneyecek ancak Antigravity, rm izin verilenler listesinde olmadığı için bunu engelleyip kullanıcı incelemesi yapmaya zorlayacak. Antigravity, komutu çalıştırmadan önce sizden izin istemelidir.

Reddetme listesini yapılandırma

Reddetme Listesi, Her Zaman Devam Et politikasının korumasıdır. Bu, açıkça yasaklanmadığı sürece her şeye izin verildiği anlamına gelen negatif bir güvenlik modelini temsil eder. Bu yöntem, geliştiricinin olası tüm tehlikeleri tahmin etmesine dayanır. Bu riskli bir öneri olsa da maksimum hızı sunar.

Adım adım yapılandırma

  1. Terminal Command Auto Execution (Terminal Komutunun Otomatik Yürütülmesi) ayarını Always Proceed (Her Zaman Devam Et) olarak belirleyin.
  2. Yanındaki Ekle düğmesini tıklayarak İzin Verilmeyenler Listesi Terminal Komutları'na aşağıdaki komutları ekleyin.
  3. rm
  4. sudo
  5. curl
  6. wget

Reddedilecekler listesini test etme

  • Ajana sorun: Check the version of python.
  • Aracı python --version otomatik olarak çalışır.
  • Ajana sorun: Download www.google.com home page.
  • Temsilci, curl işlemini yapmaya çalışır. Antigravity, kara listede curl karakterini algılar ve yürütmeyi engelleyerek manuel onay ister.

Tarayıcı güvenliği

Antigravity'nin web'e göz atma yeteneği hem bir süper güç hem de bir güvenlik açığıdır. Güvenliği ihlal edilmiş bir doküman sitesini ziyaret eden bir temsilci, istem enjeksiyonu saldırısıyla karşılaşabilir. Bunu önlemek için tarayıcı aracısı için Tarayıcı URL'si İzin Verilenler Listesi'ni uygulayabilirsiniz.

Bu ayarla ilgili mevcut ayarlarınızı görüntülemek için Antigravity — Settings ve ardından Browser seçeneğine gidin. Ek URL'ler ekleyebileceğiniz Browser URL Allowlist bölümünü görmeniz gerekir:

7bd38b2b02df521d.png

11. Sonuç ve Sonraki Adımlar

Tebrikler! Antigravity'yi başarıyla yüklediniz, ortamınızı yapılandırdınız ve aracılarınızı nasıl kontrol edeceğinizi öğrendiniz.

Sırada ne var? Antigravity'nin gerçek dünya uygulamaları oluştururken nasıl kullanıldığını görmek için aşağıdaki codelab'lere göz atabilirsiniz:

Referans belgeler