1. Introduzione
In questo codelab, imparerai a pianificare e creare applicazioni software con l'estensione Conductor di Gemini CLI. Inizierai creando un'applicazione "greenfield" completamente da zero. Poi, la tratterai come un progetto "brownfield", iterando su di essa per aggiungere autenticazione e spazio di archiviazione.
In questo lab proverai a:
- Installare Gemini CLI e l'estensione Conductor
- Creare da zero un'app web "Picker Wheel" utilizzando le funzionalità di pianificazione e implementazione di Conductor
- Aggiungere la personalizzazione all'applicazione aggiungendo l'autenticazione e lo spazio di archiviazione utilizzando Firebase
Obiettivi didattici
- Come utilizzare l'estensione Conductor per pianificare, implementare e rivedere un'applicazione "greenfield"
- Come utilizzare l'estensione Conductor per aggiungere funzionalità a un'applicazione "brownfield"
Che cosa ti serve
- Un browser web come Chrome
- Un progetto cloud Google Cloud con la fatturazione abilitata
- Node.js installato (versione 18 o successive consigliata)
- Un editor di codice locale come Visual Studio Code
2. Prima di iniziare
Crea un progetto Google Cloud
- Nella console Google Cloud, nella pagina di selezione del progetto, seleziona o crea un progetto Google Cloud.
- Verifica che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata in un progetto.
Avvia Cloud Shell
Cloud Shell è un ambiente a riga di comando in esecuzione in Google Cloud che viene precaricato con gli strumenti necessari.
- Fai clic su Attiva Cloud Shell nella parte superiore della console Google Cloud.
- Una volta eseguita la connessione a Cloud Shell, verifica l'autenticazione:
gcloud auth list - Verifica che il progetto sia configurato:
gcloud config get project - Se il progetto non è impostato come previsto, impostalo:
export PROJECT_ID=<YOUR_PROJECT_ID> gcloud config set project $PROJECT_ID
Abilita API
Abilita l'API Firebase Management nel tuo progetto Google Cloud.
gcloud services enable firebase.googleapis.com
Aggiungi Firebase al tuo progetto
L'interfaccia a riga di comando di Firebase è preinstallata in Cloud Shell. Da Cloud Shell, accedi con lo stesso Account Google che ti dà accesso al progetto Google Cloud. Se lavori in locale, installa l'interfaccia a riga di comando di Firebase seguendo le istruzioni.
firebase login
Esegui questo comando per aggiungere Firebase al tuo progetto Google Cloud:
firebase projects:addfirebase
Se è la prima volta che esegui l'interfaccia a riga di comando firebase, rispondi a tutte le domande che ti vengono poste.
Esci da Cloud Shell
Puoi chiudere la finestra di Cloud Shell. Nella sezione seguente configureremo l'ambiente locale.
3. Installa Gemini CLI e Conductor in locale
In questo passaggio, preparerai il tuo ambiente di sviluppo locale installando Gemini CLI e l'estensione Conductor utilizzando l'editor di codice locale e il terminale.
Installa Gemini CLI
- Installa l'ultima versione di Gemini CLI a livello globale utilizzando npm:
npm install -g @google/gemini-cli - Riavvia il terminale in modo che
geminivenga aggiunto al tuo PATH. - Verifica che l'installazione abbia installato la versione più recente:
gemini --version - Crea una nuova directory di progetto e passa a questa directory: in una sezione successiva creeremo un progetto in una
picker-wheeldirectory. Crea subito la directory e passa a questa directory:mkdir picker-wheel cd picker-wheel - Autenticati:
- Avvia Gemini CLI.
gemini - Quando ti viene chiesto "Vuoi considerare attendibili i file in questa cartella?", seleziona Considera attendibile la cartella (picker-wheel).
- Quando ti viene chiesto "Come vuoi autenticarti per questo progetto?", seleziona Vertex AI. Segui la guida all'autenticazione per ottenere una chiave API Google Cloud e impostare la variabile di ambiente
GOOGLE_API_KEY. Prenditi un momento per esplorare i diversi livelli di utilizzo e i relativi limiti di frequenza delle API .
- Avvia Gemini CLI.
- Esci da Gemini CLI: digita
/quitdal terminale CLI per terminare la sessione live di Gemini CLI prima di continuare.
Installa l'estensione Conductor
Conductor è un'estensione Gemini CLI open source creata da Google che abilita funzionalità di sviluppo basate sul contesto, come la pianificazione e il monitoraggio dell'implementazione.
- Installa l'estensione:
gemini extensions install https://github.com/gemini-cli-extensions/conductor - Verifica l'installazione:
- Avvia Gemini CLI.
gemini - Digita
/conductore vedrai un elenco di comandi comesetup,newTrack,implemente così via.
- Avvia Gemini CLI.
- Esci da Gemini CLI: digita
/quitdal terminale CLI per terminare la sessione live di Gemini CLI prima di continuare.
4. Sviluppo greenfield: la ruota di selezione
Ora che l'ambiente è configurato, creerai una nuova applicazione da zero. Creerai una "ruota di selezione", un'app web leggera che gira per selezionare un'opzione casuale.
Configura il contesto del prodotto
- Verifica di trovarti nella
picker-wheeldirectory che hai creato nella sezione precedente:pwd - Avvia Gemini CLI: avvia una nuova sessione di Gemini CLI dalla directory del progetto.
gemini - Inizializza Conductor: esegui il comando di configurazione per creare lo scaffolding del progetto e configurare l'ambiente Conductor.
/conductor:setup - Segui i prompt inter1attivi: i prompt interattivi che visualizzi non corrisponderanno esattamente a questi esempi. Concentrati su un design più semplice per familiarizzare con il flusso di lavoro di Conductor.
- Obiettivo del prodotto: un'applicazione web che visualizza una ruota girevole configurabile per selezionare un elemento casuale da un elenco.
- Segmento di pubblico di destinazione → Pubblico generale
- Interazione → Tocca/fai clic per girare
- Personalizzazione → Di base
- Piattaforma → Priorità al desktop
- Linee guida relative ai prodotti: genera automaticamente.
- Stack tecnologico:
- Linguaggi → TypeScript/JavaScript: ideale per il web full-stack
- Frontend → Vue.js: interfacce web intuitive
- Backend → Express.js: backend Node veloce
- Database → Nessuno: non è necessario alcun database
- Flusso di lavoro: standard.
- Requisiti del prodotto:
- Storie utente → Opzioni personalizzabili, visualizzazione chiara del vincitore
- Funzionalità principali → Elenco di opzioni modificabile, colori casuali
- Vincoli → Solo lato client, prestazioni elevate
- Non funzionali → Elevata copertura dei test, TypeScript e Vue.js, design adattabile
conductor/. - Obiettivo del prodotto: un'applicazione web che visualizza una ruota girevole configurabile per selezionare un elemento casuale da un elenco.
Crea una nuova traccia
Una "traccia" in Conductor rappresenta una funzionalità o un'unità di lavoro.
- Avvia una nuova traccia utilizzando
/conductor:newTrack. Conductor potrebbe proporre una traccia iniziale in base al contesto del prodotto. In alternativa, puoi proporre la tua o chiedere a Conductor di suggerire una traccia. - Esamina il piano generato: Conductor genererà un file
index.md, un filespec.mde un fileplan.mdall'interno diconductor/tracks/{track-id}/. Prenditi un momento per leggerli. Se tutto sembra a posto, Conductor ti chiederà di salvare ed eseguire il commit dei file di configurazione iniziali.
Implementa la traccia
- Avvia l'implementazione:
Conductor ora elaborerà il piano, scrivendo il codice per il progetto./conductor:implement - Verifica l'applicazione: durante la fase di implementazione, Conductor ti chiederà di testare manualmente l'applicazione. Ad esempio, ti chiederà di aprire il server web locale, visualizzare l'anteprima dell'applicazione nel browser e verificare le modifiche. Al termine dell'implementazione, dovresti vedere una ruota di selezione funzionante.
- Esamina l'implementazione: come ultimo passaggio, puoi chiedere a Conductor di esaminare l'implementazione. Dovrebbe esaminare il codice sorgente, sincronizzare la documentazione del progetto e archiviare la traccia.
/conductor:review
5. Iterazione brownfield: aggiungi la personalizzazione
Ora passerai allo sviluppo "brownfield". Migliorerai l'applicazione web della ruota di selezione della sezione precedente in modo che gli utenti che hanno eseguito l'accesso possano salvare e ripristinare le configurazioni della ruota di selezione.
Crea una traccia di personalizzazione
- Nel seguente esempio "brownfield", utilizzeremo Firebase per l'autenticazione e lo spazio di archiviazione. Installa l'estensione Firebase di Gemini CLI in modo che Conductor possa utilizzarla.
gemini extensions install https://github.com/gemini-cli-extensions/firebase - Avvia Gemini CLI: avvia una nuova sessione di Gemini CLI dalla directory del progetto.
gemini - Avvia una nuova traccia: avvia una nuova traccia.
/conductor:newTrack "I want users to be able to log in to their accounts and save their picker wheel configurations." - Segui i prompt inter1attivi: i prompt interattivi che visualizzi non corrisponderanno esattamente a questi esempi. Concentrati su un design più semplice per familiarizzare con il flusso di lavoro di Conductor.
- Obiettivo della traccia:
- Provider di autenticazione → Firebase Auth
- Configurazioni salvate → Opzioni della ruota
- Archiviazione dati → Firestore
- Interfaccia utente di accesso a Firestore → Overlay modale
conductor/tracks/{track-id}. - Obiettivo della traccia:
- Esamina il piano generato: prenditi un momento per leggere un file
index.md, un filespec.mde un fileplan.mdall'interno diconductor/tracks/{track-id}/. - Implementa: se tutto sembra a posto, puoi avviare l'implementazione.
/conductor:implement - Verifica: ricarica l'applicazione. Dovresti vedere un'applicazione aggiornata.

Di seguito è riportato il codice golden per un'implementazione di riferimento. Devi fornire il tuo progetto Firebase in .firebaserc e le configurazioni Firebase in firebase.ts per avviare correttamente l'applicazione.
6. Libera spazio
Per evitare addebiti continui sul tuo account Google Cloud, elimina le risorse create durante questo codelab.
Elimina il progetto Firebase (e il progetto Google Cloud)
Il modo più semplice per liberare spazio è eliminare completamente il progetto.
- Nella console Google Cloud, seleziona il progetto che hai creato.
- Fai clic su ELIMINA.
In alternativa, se vuoi conservare il progetto ma eliminare le risorse:
- Elimina il database Firestore: vai alla console Firebase > Firestore ed elimina il database.
- Elimina l'autenticazione: vai alla console Firebase > AutenticazioneMetodo di accesso, disattiva Google.
7. Complimenti
Complimenti! Hai utilizzato correttamente l'estensione Conductor di Gemini CLI per creare un'applicazione web da zero e poi iterare su di essa con funzionalità complesse come l'autenticazione e l'integrazione del database.
Passaggi successivi
- Esplora la modalità di pianificazione di Gemini CLI per una pianificazione leggera
- Esplora altre estensioni di Gemini CLI