1. Giriş
Bu codelab'de, Gemini CLI Conductor uzantısı ile yazılım uygulamalarını planlamayı ve oluşturmayı öğreneceksiniz. Tamamen sıfırdan bir "yeni proje" uygulaması oluşturarak başlayacaksınız. Ardından, kimlik doğrulama ve depolama eklemek için üzerinde yineleme yaparak "brownfield" projesi olarak ele alacaksınız.
Yapacaklarınız
- Gemini CLI ve Conductor uzantısını yükleyin.
- Conductor'ın planlama ve uygulama özelliklerini kullanarak sıfırdan"Picker Wheel" web uygulaması oluşturma
- Firebase kullanarak kimlik doğrulama ve depolama ekleyerek uygulamaya kişiselleştirme özelliği ekleme
Neler öğreneceksiniz?
- Conductor uzantısını kullanarak "sıfırdan" bir uygulamayı planlama, uygulama ve inceleme
- Conductor uzantısını kullanarak "brownfield" uygulamasına özellik ekleme
İhtiyacınız olanlar
- Chrome gibi bir web tarayıcısı
- Faturalandırmanın etkin olduğu bir Google Cloud projesi
- Node.js yüklü olmalıdır (18 veya daha yeni bir sürüm önerilir).
- Visual Studio Code gibi yerel bir kod düzenleyici
2. Başlamadan önce
Google Cloud projesi oluşturma
- Google Cloud Console'daki proje seçici sayfasında bir Google Cloud projesi seçin veya oluşturun.
- Cloud projeniz için faturalandırmanın etkinleştirildiğinden emin olun. Bir projede faturalandırmanın etkin olup olmadığını kontrol etmeyi öğrenin.
Cloud Shell'i Başlatma
Cloud Shell, Google Cloud'da çalışan ve gerekli araçların önceden yüklendiği bir komut satırı ortamıdır.
- Google Cloud Console'un üst kısmından Cloud Shell'i etkinleştir'i tıklayın.
- Cloud Shell'e bağlandıktan sonra kimlik doğrulamanızı onaylayın:
gcloud auth list - Projenizin yapılandırıldığını onaylayın:
gcloud config get project - Projeniz beklendiği gibi ayarlanmamışsa şu şekilde ayarlayın:
export PROJECT_ID=<YOUR_PROJECT_ID> gcloud config set project $PROJECT_ID
API'leri etkinleştir
Google Cloud projenizde Firebase Management API'yi etkinleştirin.
gcloud services enable firebase.googleapis.com
Firebase'i projenize ekleme
Firebase CLI, Cloud Shell'e önceden yüklenmiştir. Cloud Shell'den, Google Cloud projesine erişmenizi sağlayan Google Hesabı ile oturum açın. Yerel olarak çalışıyorsanız talimatları uygulayarak Firebase CLI'yı yükleyin.
firebase login
Firebase'i Google Cloud projenize eklemek için aşağıdaki komutu çalıştırın:
firebase projects:addfirebase
firebase CLI'yı ilk kez çalıştırıyorsanız sorulan soruları yanıtlayın.
Cloud Shell'den çıkma
Cloud Shell penceresini kapatabilirsiniz. Aşağıdaki bölümde yerel ortamınızı yapılandıracağız.
3. Gemini CLI ve Conductor'ı yerel olarak yükleme
Bu adımda, yerel kod düzenleyicinizi ve terminalinizi kullanarak Gemini CLI'ı ve Conductor uzantısını yükleyerek yerel geliştirme ortamınızı hazırlayacaksınız.
Gemini CLI'yı yükleme
- npm kullanarak Gemini KSA'nın en yeni sürümünü genel olarak yükleyin:
npm install -g @google/gemini-cli gemini'nin PATH'inize eklenmesi için terminalinizi yeniden başlatın.- Yüklemenin en son sürümü yüklediğini doğrulayın:
gemini --version - Yeni bir proje dizini oluşturma ve bu dizine geçme: Sonraki bir bölümde
picker-wheeldizininde bir proje oluşturacağız. Bu dizini şimdi oluşturun ve bu dizine geçin:mkdir picker-wheel cd picker-wheel - Kimlik doğrulama:
- Gemini KSA'yı başlatın.
gemini - "Bu klasördeki dosyalara güveniyor musunuz?" sorusu sorulduğunda Klasöre güven (seçim tekerleği)'ni seçin.
- "Bu proje için kimlik doğrulamayı nasıl yapmak istersiniz?" sorusuna Vertex AI'ı seçin. Google Cloud API anahtarı almak ve
GOOGLE_API_KEYortam değişkenini ayarlamak için kimlik doğrulama kılavuzunu inceleyin. Farklı kullanım katmanlarını ve bunlara karşılık gelen API hız sınırlarını inceleyin.
- Gemini KSA'yı başlatın.
- Gemini CLI'dan çıkma: Devam etmeden önce canlı Gemini CLI oturumunuzu sonlandırmak için CLI terminalinden
/quityazın.
Conductor uzantısını yükleme
Conductor, Google tarafından geliştirilen, açık kaynaklı bir Gemini CLI uzantısıdır. Planlama ve uygulama takibi gibi bağlama dayalı geliştirme özelliklerini etkinleştirir.
- Uzantıyı yükleyin:
gemini extensions install https://github.com/gemini-cli-extensions/conductor - Yüklemeyi doğrulama:
- Gemini KSA'yı başlatın.
gemini /conductoryazın.setup,newTrack,implementgibi komutların listesini görürsünüz.
- Gemini KSA'yı başlatın.
- Gemini CLI'dan çıkma: Devam etmeden önce canlı Gemini CLI oturumunuzu sonlandırmak için CLI terminalinden
/quityazın.
4. Greenfield Development: The Picker Wheel
Ortamınız ayarlandığına göre artık sıfırdan yeni bir uygulama oluşturabilirsiniz. Rastgele bir seçeneği belirlemek için dönen basit bir web uygulaması olan "Seçim Çarkı" oluşturacaksınız.
Ürün bağlamını ayarlama
- Önceki bölümde oluşturduğunuz
picker-wheeldizininde olduğunuzu onaylayın:pwd - Gemini CLI'yı başlatma: Proje dizininizden yeni bir Gemini CLI oturumu başlatın.
gemini - Conductor'ı başlatın: Projeyi iskeletlendirmek ve Conductor ortamını ayarlamak için kurulum komutunu çalıştırın.
/conductor:setup - Etkileşimli istemleri uygulayın: Gördüğünüz etkileşimli istemler bu örneklerle tam olarak eşleşmez. Conductor iş akışına alışmak için daha basit bir tasarıma odaklanın.
- Ürün hedefi: Bir listeden rastgele bir öğe seçmek için yapılandırılabilir bir çark gösteren web uygulaması.
- Hedef Kitle → Genel Kitle
- Etkileşim → Döndürmek için Dokunma/Tıklama
- Özelleştirme → Temel
- Platform → Masaüstü Öncelikli
- Ürün kuralları: Otomatik oluşturma.
- Teknoloji yığını:
- Diller → TypeScript/JavaScript: Tam yığın web için idealdir.
- Ön uç → Vue.js - Sezgisel web arayüzleri
- Arka uç → Express.js - Hızlı Node arka ucu
- Veritabanı → Yok - Veritabanı gerekmez
- İş akışı: Standart.
- Ürün şartları:
- Kullanıcı Hikayeleri → Özelleştirilebilir Seçenekler, Net Kazanan Gösterimi
- Temel Özellikler → Düzenlenebilir Seçenek Listesi, Rastgele Renkler
- Kısıtlamalar → Yalnızca İstemci Tarafı, Yüksek Performans
- İşlevsel Olmayan (Non-Functional) → Yüksek Test Kapsamı, TypeScript ve Vue.js, Duyarlı Tasarım
conductor/dizininde bağlam dosyaları oluşturur. - Ürün hedefi: Bir listeden rastgele bir öğe seçmek için yapılandırılabilir bir çark gösteren web uygulaması.
Yeni parça oluşturma
Conductor'daki "Parça", bir özelliği veya iş birimini temsil eder.
/conductor:newTrackkullanarak yeni bir parça başlatın. Conductor, ürün bağlamına göre ilk parçayı önerebilir. Alternatif olarak, kendi parçanızı önerebilir veya orkestra şefinden bir parça önermesini isteyebilirsiniz.- Oluşturulan planı inceleyin: Conductor,
conductor/tracks/{track-id}/içinde birindex.md, birspec.mdve birplan.mdoluşturur. Biraz zaman ayırarak bunları okuyun. Her şey yolundaysa Conductor, ilk kurulum dosyalarını kaydetmenizi ve işlemenizi ister.
Track'i uygulama
- Uygulamaya başlama:
Conductor artık proje için kod yazarak plan üzerinden çalışacak./conductor:implement - Uygulamayı doğrulama: Conductor, uygulama aşaması boyunca uygulamayı manuel olarak test etmenizi ister. Örneğin, yerel web sunucusunu açmanızı, uygulamayı tarayıcınızda önizlemenizi ve değişiklikleri doğrulamanızı ister. Uygulama tamamlandığında işlevsel bir seçici tekerlek görmeniz gerekir.
- Uygulamayı inceleme: Son adım olarak Conductor'dan uygulamayı incelemesini isteyebilirsiniz. Kaynak kodu incelemeli, proje belgelerini senkronize etmeli ve parçayı arşivlemelidir.
/conductor:review
5. Mevcut alan yinelemesi: Kişiselleştirme ekleme
Şimdi "brownfield" geliştirmeye geçeceksiniz. Önceki bölümde yer alan seçici çarkı web uygulamasını, oturum açmış kullanıcıların seçici çarkı yapılandırmalarını kaydedip geri yükleyebilecekleri şekilde iyileştireceksiniz.
Kişiselleştirme parçası oluşturma
- Aşağıdaki "brownfield" örneğinde kimlik doğrulama ve depolama için Firebase'i kullanacağız. Conductor'ın kullanabilmesi için Gemini CLI Firebase uzantısını yükleyin.
gemini extensions install https://github.com/gemini-cli-extensions/firebase - Gemini CLI'yı başlatma: Proje dizininizden yeni bir Gemini CLI oturumu başlatın.
gemini - Yeni parça başlatma: Yeni bir parça başlatın.
/conductor:newTrack "I want users to be able to log in to their accounts and save their picker wheel configurations." - Etkileşimli istemleri uygulayın: Gördüğünüz etkileşimli istemler bu örneklerle tam olarak eşleşmez. Conductor iş akışına alışmak için daha basit bir tasarıma odaklanın.
- Hedefi izle:
- Auth Provider → Firebase Auth
- Kayıtlı Yapılandırmalar → Tekerlek Seçenekleri
- Veri Depolama → Firestore
- Firestore Login UI → Modal Overlay
conductor/tracks/{track-id}içinde yeni bir parça için bağlam dosyaları oluşturur. - Hedefi izle:
- Oluşturulan planı inceleyin:
conductor/tracks/{track-id}/içindekiindex.md,spec.mdveplan.mdbölümlerini okumak için zaman ayırın. - Uygulama: Her şey yolunda görünüyorsa uygulamaya başlayabilirsiniz.
/conductor:implement - Doğrulama: Uygulamanızı yeniden yükleyin. Güncellenmiş bir uygulama görürsünüz.

Referans uygulaması için altın kod aşağıda verilmiştir. Uygulamanızı düzgün bir şekilde başlatmak için Firebase projenizi .firebaserc içinde ve Firebase yapılandırmalarınızı firebase.ts içinde sağlamanız gerekir.
6. Temizleme
Google Cloud hesabınızın sürekli olarak ücretlendirilmesini önlemek için bu codelab sırasında oluşturulan kaynakları silin.
Firebase projesini (ve Google Cloud projesini) silme
Temizliğin en kolay yolu projeyi tamamen silmektir.
- Google Cloud Console'da oluşturduğunuz projeyi seçin.
- DELETE'i (SİL) tıklayın.
Alternatif olarak, projeyi korumak ancak kaynakları silmek istiyorsanız:
- Firestore veritabanını silme: Firebase Konsolu > Firestore'a gidip veritabanını silin.
- Authentication'ı silme: Firebase Console > AuthenticationOturum açma yöntemi'ne gidin, Google'ı devre dışı bırakın.
7. Tebrikler
Tebrikler! Gemini CLI Conductor uzantısını kullanarak sıfırdan bir web uygulaması oluşturup kimlik doğrulama ve veritabanı entegrasyonu gibi karmaşık özelliklerle yineleme işlemini başarıyla gerçekleştirdiniz.
Sonraki adımlar
- Kolay planlama için Gemini CLI Plan Modu'nu keşfedin
- Diğer Gemini CLI uzantılarını keşfedin.