1. Giriş
Bu codelab'de, Antigravity IDE'yi kullanarak bilgisayarınızda eğlenceli ve yapay zeka destekli bir bağımsız yapay zeka geliştirme ekibini nasıl kuracağınızı göstereceğiz. Güçlü bir skills.md ve agents.md iş akışı kullanarak bir gereksinimi teknik özelliklerden son dağıtıma kadar tüm yaşam döngüsü boyunca yönlendirerek çalışan bir uygulama oluşturacaksınız.
Belirli bir teknoloji yığınına bağlı kalmak veya karmaşık Python düzenleme komut dosyaları yazmak yerine, gereksinimlerinizin üç temel Antigravity ilkesiyle desteklenen otomatik bir döngüden geçtiği, kullanıcı dostu bir sıfır kod yaklaşımı kullanacağız:
agents.md: Yapay zeka ekibinizde kimlerin yer aldığını (ürün yöneticisi, ön uç, kalite güvencesi, DevOps) tam olarak tanımlamak için.- Skills ve skills.md: Güçlü teknik becerileri ve yapay ürün teslim kurallarını modüler
.mddosyaları olarak tanımladığınız özel bir dizin. - İş akışları (workflows/): Yapay zeka ekip üyelerinizi sorunsuz bir şekilde birbirine bağlayarak özerk bir ardışık düzen oluşturmak için özel eğik çizgi komutları tanımlamak üzere kullanılır.
Bu üç öğeyi Antigravity'de yerel olarak birleştirerek Gemini'ı, üretime hazır bir uygulamanın geliştirilmesini baştan sona tamamen otomatikleştirmeye yönlendirebilirsiniz.
Neler öğreneceksiniz?
- Workspace'i başlatın: Projenizi Antigravity tarafından ayrıntılı bir şekilde anlaşılacak şekilde ayarlayın.
- Ekibi tanımlayın: Uzmanlaşmış yapay zeka karakterlerinizi oluşturmak için bir
agents.mddosyası oluşturun. - Becerileri Programlama: Sıkı teknik kuralları ve yinelemeli yeniden çalışma döngülerini tanımlamak için
.mddizininde ayrıntılıskills/dosyaları oluşturun. - Özel İş Akışları Tanımlama: Stüdyonun iş akışını otomatikleştirmek için
/startcycleeğik çizgi komutu oluşturun. - Zincirleme Reaksiyonu Başlatın: Tüm çoklu ajan ardışık düzenini tek bir komutla otomatik olarak ve verimli bir şekilde çalıştırın.
Deneyecekleriniz
- Yapay zeka istem mühendisliğini uygulama kodundan ayırma
- Oluşturulan Markdown dosyalarındaki kullanıcı yorumlarını ve düzenlemelerini yorumlamak için aktif olarak duraklayan bir aracı nasıl oluşturulur?
- Dinamik, dilden bağımsız kod oluşturma ve dağıtma becerilerini nasıl geliştireceğinizi öğrenin.
- Bir aracı IDE'sinde özel makro komutları (iş akışları) oluşturma
Gerekenler
- Antigravity
- Chrome tarayıcı
- Yerel olarak yüklenmiş Node.js (v18+) veya Python 3.14
- (İsteğe bağlı) Yerel olarak yüklenmiş gcloud CLI
Başlamadan önce
Google Cloud kredileri için: Antigravity'yi Google Cloud projeleriyle kullanmanıza yardımcı olmak üzere bu bağlantıyı kullanarak ücretsiz Google Cloud kredilerinizi kullanın. Krediyi etkinleştirmek ve yeni bir proje oluşturmak için buradaki talimatları uygulayabilirsiniz.
- Antigravity IDE'nin yüklü olduğundan emin olun (antigravity.google adresinde mevcuttur).
- Antigravity IDE'nizi açın ve yeni, özel bir çalışma alanı başlattığınızdan emin olun.
- Düzenleyici modunda çalışırken bir terminal açık olmalıdır.
2. Workspace'i başlatma
Antigravity, .agents dizinine yerleştirilen iş akışı dosyalarını doğal olarak anladığı için bağımsız geliştirici ardışık düzeninizi kurmak birkaç standart klasör oluşturmak kadar basittir.
Çalışma alanınızı şu şekilde ayarlayabilirsiniz:
- Antigravity IDE'yi açın.
- Agent Manager'ı açın. İstediğiniz zaman CMD+E (Mac) veya CTRL+E (Windows) tuşlarına basarak ya da menü çubuğunun sağ üst kısmındaki Open Editor (Düzenleyiciyi Aç) ve Open Agent Manager (Agent Manager'ı Aç) düğmelerini kullanarak Agent Manager ile düzenleyici arasında geçiş yapabilirsiniz. .
- + Çalışma alanını aç'ı tıklayın.
Çalışma alanında yeni bir görüşme başlatmak için Görüşme başlat sekmesinden istediğiniz çalışma alanını seçin veya kenar çubuğunda çalışma alanı adının yanındaki artı düğmesine basın.

- Yeni Çalışma Alanı Aç'ı tıklayın, çalışma alanını
skills-codelabolarak adlandırın ve yerel bir dizin seçin. Bu sayede, Agent'ın diğer projeleri karıştırmadan dosyaları oluşturabileceği belirli bir kök klasörü olur. İşlem tamamlandıktan sonra Düzenleyici Görünümü'ne ve ardından (5), (6) ve (7) numaralı adımlara gidin.

- Sağ tıklayıp
skills-codelabklasörü oluşturun. - Bu klasörün içinde
production_artifactsveapp_buildolmak üzere iki dizin oluşturun. .agentsdizini oluşturun ve bu dizinin içindeworkflowsveskillsklasörlerini oluşturun.
(Alternatif olarak) Terminali kullanmayı tercih ederseniz aşağıdaki komutu çalıştırarak bu yapıyı anında oluşturabilirsiniz:
mkdir skills-codelab && cd skills-codelab
mkdir -p .agents/workflows .agents/skills
mkdir production_artifacts app_build
Klasörünüzün şu şekilde göründüğünden emin olun:

Bu yeni klasörler ne işe yarar?
.agents/: Bu, Antigravity tarafından doğal olarak tanınan özel bir dizindir. Dosyaları buraya yerleştirerek Antigravity'nin yerleşik yapay zeka davranışını genişletirsiniz.skills/: Bu klasör, yapay zekanızla ilgili belirli teknik talimat kılavuzlarını (.mddosyaları) depolamak için kullanılır. Bu, yapay zekaya kod yazma veya uygulama dağıtma gibi belirli görevlerin nasıl yapılacağını söyler. Böylece, kafa karıştırıcı tek bir istem yerine modüler adımlar kullanılır.- p
roduction_artifacts/: Bu, otomatik ekip üyelerimizin, bir sonraki temsilcinin okuması için dosyaları kasıtlı olarak bıraktığı paylaşılan klasörümüzdür. app_build/: Gerçek uygulama kodu için belirlenen çalışma alanı. Full-Stack Engineer aracısı tüm kodu (ör.package.json,app.py, React bileşenleri) oluşturur ve doğrudan bu klasöre kaydederek uygulama kaynağını yapay zekanın talimatlarından ayırır.
3. Ekibi tanımlama (agents.md)
Öncelikle Antigravity'ye bu proje üzerinde kimin çalıştığını söylememiz gerekiyor. Talimatları dört farklı iç içe proje klasöründe tutmak yerine ekibimizin kimliğini merkezileştiriyoruz. .agents/agents.md konumunda dosya oluşturma:
Neden farklı karakterlere ihtiyacımız var?
Bir yapay zekadan sıfırdan bir uygulama oluşturmasını istediğinizde, aynı anda hem mimar, hem kodlayıcı, hem test uzmanı hem de dağıtım yöneticisi olmaya zorlarsanız kolayca bunalabilir. Bu rolleri agents.md'da merkezileştirerek yapay zekanın kafasının karışmasını önlersiniz. PM yalnızca gereksinimlere, mühendis yalnızca kod oluşturmaya, QA ise yalnızca hata düzeltmeye odaklanır. Ardışık düzeninizin her aşaması için uzmanlardan destek alırsınız.
agents.md dosyası, ekibinizin farklı karakterlerini merkezileştirerek bu sorunu çözer:
- Ürün yöneticisi (
@pm): Yalnızca genel resme odaklanır. Technical_Specification.md dosyasını yazarlar ve sizinle (insan) onay sürecini yönetirler. - Tam yığın mühendisi (
@engineer): Planlama konusunda endişelenmez. Yalnızca proje yöneticisinin spesifikasyonunu alır ve tamamen onayladığınız dilde yüksek kaliteli kod yazmaya odaklanır. - Kalite Güvencesi Mühendisi (
@qa): Yeni bir göz olarak hareket eder. Yeni özellikler yazmak yerine, mühendisin kodundaki eksik bağımlılıkları, söz dizimi hatalarını veya mantık hatalarını bulmaya odaklanırlar. - DevOps Master (
@devops): Kesinlikle çalışma zamanı ortamına odaklanır. Terminali okumayı, paketleri yüklemeyi (npm install, pip install) ve yerel sunucuyu başlatmayı bilirler.
# 🤖 The Autonomous Development Team
## The Product Manager (@pm)
You are a visionary Product Manager and Lead Architect with 15+ years of experience.
**Goal**: Translate vague user ideas into comprehensive, robust, and technology-agnostic Technical Specifications.
**Traits**: Highly analytical, user-centric, and structured. You never write code; you only design systems.
**Constraint**: You MUST always pause for explicit user approval before considering your job done. You are highly receptive to user feedback and will enthusiastically re-write specifications based on inline comments.
## The Full-Stack Engineer (@engineer)
You are a 10x senior polyglot developer capable of adapting to any modern tech stack.
**Goal**: Translate the PM's Technical Specification into a beautiful, perfectly structured, production-ready application.
**Traits**: You write clean, DRY, well-documented code. You care deeply about modern UI/UX and scalable backend logic.
**Constraint**: You strictly follow the approved architecture. You do not make assumptions—if the spec says Python, you use Python. You always save your code into the `app_build/` directory.
## The QA Engineer (@qa)
You are a meticulous Quality Assurance engineer and security auditor.
**Goal**: Scrutinize the Engineer's code to guarantee production-readiness.
**Traits**: Detail-oriented, paranoid about security, and relentless in finding edge cases.
**Focus Areas**: You aggressively hunt for missing dependencies in configurations, unhandled promises, syntax errors, and logic bugs. You proactively fix them.
## The DevOps Master (@devops)
You are the elite deployment lead and infrastructure wizard.
**Goal**: Take the final code in `app_build/` and magically bring it to life on a local server.
**Traits**: You excel at terminal commands and environment configurations.
**Expertise**: You fluently use tools like `npm`, `pip`, or native runners. You install all necessary modules seamlessly and provide the local URL directly to the user so they can see the final product!
Her karakter için Hedefler, Özellikler ve Kısıtlamalar'ı nasıl tanımladığımıza dikkat edin.
- Hedefler, ajana işlem hattındaki tam sorumluluğunun ne olduğunu söyler.
- Özellikler, nasıl davranması gerektiğini söyleyerek (ör. "10 kat daha iyi kıdemli geliştirici" veya "güvenlik konusunda paranoyak") bir davranışsal kişilik verir.
- Kısıtlamalar katı koruma bariyerleri olarak işlev görür (ör. "asla kod yazma", "onaylanmış mimariye kesinlikle uy").
İstemlerinizi bu şekilde yapılandırmak, yapay zeka halüsinasyonlarını önemli ölçüde azaltır ve aracının gerekli iş akışınıza kesinlikle uymasını sağlar.
Klasörünüzün şu şekilde göründüğünden emin olun:
4. Uzmanlık Becerilerini Programlama (skills/)
Ayrıntılı istem mühendisliği, kodsuz sihrin anahtarıdır. Her beceri için son derece spesifik metin dosyaları oluştururuz. Böylece, yeniden çalışma isteğinde bulunursanız PM'nin aktif olarak geriye dönmesini sağlarız.
1. Spesifikasyon Becerisi
Bu beceri, başlangıç noktası olarak kullanılır. PM aracısı, kod yazılmadan önce sizinle görüşmek ve mimariyi ayrıntılandırmak için bu bilgileri kullanır. Böylece, saatlerce sürebilecek ve boşa gidebilecek kodlama süresini önler.
Oluşturma .agents/skills/write_specs.md:
# Skill: Write Specs
## Objective
Your goal as the Product Manager is to turn raw user ideas into rigorous technical specifications and **pause for user approval**.
## Rules of Engagement
- **Artifact Handover**: Save all your final output back to the file system.
- **Save Location**: Always output your final document to `production_artifacts/Technical_Specification.md`.
- **Approval Gate**: You MUST pause and actively ask the user if they approve the architecture before taking any further action.
- **Iterative Rework**: If the user leaves comments directly inside the `Technical_Specification.md` or provides feedback in chat, you must read the document again, apply the requested changes, and ask for approval again!
## Instructions
1. **Analyze Requirements**: Deeply analyze the user's initial idea request.
2. **Draft the Document**: Your specification MUST include:
- **Executive Summary**: A brief, high-level overview.
- **Requirements**: Functional and non-functional requirements.
- **Architecture & Tech Stack**: Suggest the absolute best framework (e.g., Python/Django, Node/Express, React/Next.js) for the job and outline the layout/API structure.
- **State Management**: Briefly outline how data should flow.
3. Save the document to disk.
4. **Halt Execution**: Explicitly ask the user: "Do you approve of this tech stack and specification? You can safely open `Technical_Specification.md` and add comments or modifications if you want me to rework anything!" Wait for their "Yes" or feedback before the sequence continues!
Sıkı "onay kapısı"na dikkat edin. Uygulamanın tamamını tek seferde oluşturup doğru olmasını beklemek yerine, yapay zekaya açıkça duraklaması, son kararınızı beklemesi ve satır içi yorumlar bıraktıysanız belgeyi aktif olarak yeniden okuması talimatı verilir.
2. The Full-Stack Generation Skill
Bu beceri, temel oluşturucudur. Mühendis aracısı, proje yöneticisinin spesifikasyonundan tam teknoloji yığınını okur ve gerekli tüm ön uç ve arka uç kod dosyalarını dinamik olarak oluşturur.
Oluşturma .agents/skills/generate_code.md:
# Skill: Generate Code
## Objective
Your goal as the Full-Stack Engineer is to write the physical code based entirely on the PM's approved specification.
## Rules of Engagement
- **Dynamic Coding**: You are not limited to HTML/JS. You must write code in the exact language/framework defined in the approved `Technical_Specification.md`.
- **Save Location**: Save all your raw code, accurately retaining necessary folder structures, directly inside `app_build/`.
## Instructions
1. **Read the Spec**: Open and carefully study `production_artifacts/Technical_Specification.md`.
2. **Scaffold Structure**: Generate all core backend and frontend application files.
3. **Output**: Dump your code perfectly into the `app_build/` directory. Do not skip or summarize any code blocks. Ensure all `package.json` or `requirements.txt` files are present.
Bu becerinin önceden tanımlanmış bir yığını (ör. Next.js veya Django) yok. Bu, PM tarafından seçilen dinamik teknoloji yığınına açıkça bağlıdır. Bu sayede, tek kod oluşturma beceriniz, spesifikasyonda onayladığınız tüm çerçeveler için çalışır.
3. Denetleme becerisi
Bu beceri, bir güvenlik ağı sağlar. Kalite güvencesi aracısı, özellikle yeni oluşturulan koddaki eksik bağımlılıkları ve mantık hatalarını bulmakla görevlendirilmiş bağımsız bir inceleyici olarak hareket eder.
Oluşturma .agents/skills/audit_code.md:
# Skill: Audit Code
## Objective
Your goal as the QA Engineer is to ensure the generated code is perfectly functional natively.
## Rules of Engagement
- **Target Context**: Your focus area is the `app_build/` directory.
## Instructions
1. **Assess Alignment**: Compare the raw code against the approved `Technical_Specification.md`.
2. **Bug Hunting**: Find and fix dependency mismatches, unhandled errors, and logic breaks.
3. **Commit Fixes**: Overwrite any flawed files in `app_build/` with your polished revisions.
Üretken yapay zeka, çok miktarda kod yazarken doğal olarak küçük söz dizimi hataları yapar. Tek görevi hataları aramak olan ayrı bir denetleme becerisi sayesinde nihai uygulamanın çalıştırılma başarı oranını önemli ölçüde artırırız.
4. Dinamik Dağıtım Becerisi
Bu beceri, uygulamaya hayat verir. DevOps aracısı, hangi tür uygulamanın oluşturulduğunu (Node, Python vb.) belirler ve modülleri yüklemek ve sunucuyu başlatmak için gereken terminal komutlarını güvenli bir şekilde çalıştırır.
Oluşturma .agents/skills/deploy_app.md:
# Skill: Deploy App
## Objective
Your goal as DevOps is to intelligently package the application and fire up a server based on the chosen stack.
## Instructions
1. **Stack Detection**: Inspect the `Technical_Specification.md` and the files in `app_build/` to figure out what stack is being used.
2. **Install Dependencies**: Use your native terminal to navigate into `app_build/` and run `npm install`, `pip install -r requirements.txt`, or whatever is appropriate!
3. **Host Locally**: Execute the appropriate native terminal command (e.g., `npm run dev`, `python3 app.py`) to start a background server.
4. **Report**: Output the clickable localhost link to the user and celebrate a successful launch!
IDE'nin yerel terminal komutlarını güvenli bir şekilde çalıştırma özelliğinden yararlanırız.
Aracı, gerçek bir DevOps mühendisi gibi davranarak app_build/ klasöründe gördüğü dosyalara göre hangi yükleme komutunun çalıştırılacağını dinamik olarak belirler.
(İsteğe bağlı) 5. Cloud Run Deployment Skill
Uygulamanızı yalnızca yerel olarak çalıştırmak yerine doğrudan üretime almak istiyorsanız alternatif bir dağıtım becerisi oluşturabilirsiniz. Antigravity doğrudan yerel makinenizde çalıştığından yapay zeka, yerel olarak kimliği doğrulanmış gcloud CLI'nizi sorunsuz bir şekilde kullanabilir.
Oluşturma .agents/skills/deploy_cloud_run.md:
# Skill: Deploy to Cloud Run
## Objective
Your goal as DevOps is to package the application into a container and deploy it to Google Cloud Run.
## Instructions
1. **Verify Environment**: Ensure the necessary files for the chosen tech stack are in `app_build/`.
2. **Containerize**: Use the IDE terminal to navigate to `app_build/` and run `gcloud run deploy --source .`.
3. **Configure**: If prompted by the CLI tool, automatically select the default region and allow unauthenticated invocations so the web app is public.
4. **Report**: Output the live production Google Cloud Run URL to the user!
5. Özel Slash komutu tanımlama
Özel eğik çizgi komutu ne işe yarar?
Bu metin dosyasını .agents/workflows/ içine kaydederek doğrudan Antigravity'nin sohbet arayüzüne yepyeni bir komut kaydediyorsunuz.
Yapay zekaya adım adım manuel olarak istem girmek ("PM gibi davran ve bir spesifikasyon yaz..." ardından "Tamam, şimdi mühendis gibi davran ve kod yaz...") yerine, /startcycle komutu otomatik bir düzenleyici görevi görür. Tanımladığınız karakterleri ve becerilerini kesintisiz ve otomatik bir sırayla birbirine bağlar. Temsilciler arasındaki devri yöneten ve PM aşamasındaki yeniden çalışma döngüsünü açıkça yöneten tek bir makro oluşturacağız.
Oluşturma .agents/workflows/startcycle.md:
---
description: Start the Autonomous AI Developer Pipeline sequence with a new idea
---
When the user types `/startcycle <idea>`, orchestrate the development process strictly using `.agents/agents.md` and `.agents/skills/`.
### Execution Sequence:
1. Act as the **Product Manager** and execute the `write_specs.md` skill using the `<idea>`.
*(Wait for the user to explicitly approve the spec. If the user provides feedback or adds comments directly to the Markdown file, act as the PM again to re-read and revise the document. Loop this step until they type "Approved").*
2. Shift context, act as the **Full-Stack Engineer**, and execute the `generate_code.md` skill.
3. Shift context, act as the **QA Engineer**, and execute the `audit_code.md` skill.
4. Shift context, act as the **DevOps Master**, and execute the `deploy_app.md` skill.
Klasörünüzün şu şekilde göründüğünden emin olun:

6. Zincirleme tepkiyi başlatın
Antigravity'de ekibiniz ve kurallarınız resmi olarak tanımlandığında tüm iş akışını zahmetsizce tetikleyebilirsiniz.
Antigravity istemi:
- Özel komutlar menüsünü açmak için Agent Manager sohbet kutusuna / yazın.
startcycleseçin veya yazın. - Fikrinizi girin:
/startcycle "I need a fast, real-time chat application for customer support on my ecommerce website."
Arkanıza Yaslanın ve Ortak Çalışın:
- Gemini, PM rolünü üstlenir, sağlam bir spesifikasyon taslağı oluşturur ve onayınızı ister.
- IDE düzenleyicinizde
Technical_Specification.mddosyasını açın, birkaç not ekleyin (ör. "Node yerine Python kullanalım") ve aracıya dosyayı yeniden düzenlemesini söyleyin. Dosyayı bağımsız olarak revize eder. - Onayladığınızda Gemini, arka uç/ön uç kodunu yazmak için onaylanan spesifikasyonu kullanarak bağlamı mühendise aktarır.
- Kalite güvencesi mühendisi olur, hataları düzeltir ve son kodu kaydeder.
- Son olarak DevOps Master, modülleri dinamik olarak yükler ve uygulamayı tarayıcınıza sunar.
Technical_Specification.md için örnek bir çalıştırma ve onay ya da yorum bekleme

Kullanıcı istemi onayladıktan sonra iş akışının tamamı başlar.

7. Özet ve Sonraki Adımlar
Tebrikler! Ortak çalışma iterasyon döngülerini ve dinamik, full-stack uygulama oluşturmayı bir ajan tabanlı ardışık düzene nasıl yerleştireceğinizi öğrendiniz.
Bu codelab'de şu konuları ele aldık:
- .agents/agents.md kullanarak yapay zeka karakterlerini nasıl eşleştireceğinizi öğrenin.
.agents/skills/write_specs.mdiçinde ortak çalışma ile yeniden düzenleme döngüleri oluşturun. Böylece, aracı satır içi Markdown yorumlarınızı okur.- Onaylanan spesifikasyona bağlı olarak herhangi bir çerçevede (Python, React) kod yazan dinamik
.mdbecerileri oluşturdu.