1. Introduzione
In questo codelab, imparerai a utilizzare Gemini CLI, un agente AI open source che porta la potenza di Gemini direttamente nel tuo terminale.
Cosa imparerai a fare
- Installazione e configurazione di Gemini CLI
- Esplorare gli strumenti, i comandi integrati e configurare i server MCP in Gemini CLI
- Personalizzare Gemini CLI tramite il file
GEMINI.md - Esplorare alcuni casi d'uso con Gemini CLI
Che cosa ti serve
Questo codelab può essere eseguito interamente in Google Cloud Shell, in cui è preinstallata Gemini CLI.
In alternativa, se preferisci lavorare sulla tua macchina, c'è una sezione per installare Gemini CLI in locale.
Ti serviranno:
- Browser web Chrome
- Un account Gmail
Questo codelab è progettato per utenti e sviluppatori di tutti i livelli (inclusi i principianti). I casi d'uso nel codelab sono stati suddivisi in attività per sviluppatori e non sviluppatori. I casi d'uso per gli sviluppatori mostrano come vibrare il codice con Gemini CLI e come lavorare con un repository GitHub per eseguire attività di sviluppo comuni come la spiegazione/comprensione del codice, la generazione di documentazione, la risoluzione di problemi e altro ancora. Ti consigliamo di completare questi casi d'uso nel codelab. Alla fine è presente una sezione facoltativa che copre diverse attività quotidiane non incentrate sugli sviluppatori.
2. Prima di iniziare
Crea un progetto
- 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 per un progetto.
- Utilizzerai Cloud Shell, un ambiente a riga di comando in esecuzione in Google Cloud precaricato con bq. Fai clic su Attiva Cloud Shell nella parte superiore della console Google Cloud.

- Una volta eseguita la connessione a Cloud Shell, verifica di essere già autenticato e che il progetto sia impostato sul tuo ID progetto utilizzando il seguente comando:
gcloud auth list
- Esegui questo comando in Cloud Shell per verificare che il comando gcloud conosca il tuo progetto.
gcloud config list project
- Se il progetto non è impostato, utilizza il seguente comando per impostarlo:
gcloud config set project <YOUR_PROJECT_ID>
3. Installazione
Prima di eseguire la configurazione ed eseguire Gemini CLI, creiamo una cartella che utilizzeremo come cartella principale per tutti i progetti che creeremo al suo interno. Questo è un punto di partenza per Gemini CLI, anche se farà riferimento anche ad altre cartelle del sistema, che verranno utilizzate in un secondo momento, se necessario.
Crea una cartella di esempio (gemini-cli-projects) e vai alla cartella tramite i comandi mostrati di seguito. Se preferisci utilizzare un altro nome per la cartella, fallo pure.
mkdir gemini-cli-projects
Andiamo a questa cartella:
cd gemini-cli-projects
Puoi avviare direttamente Gemini CLI tramite il comando gemini.
Vai direttamente alla sezione successiva (configurazione di Gemini CLI tramite settings.json).
Se vuoi installare Gemini CLI in locale, segui le istruzioni riportate di seguito. Tieni presente che l'interfaccia a riga di comando di Gemini è preinstallata su Cloud Shell e Cloud Workstations.
Il primo passo consiste nell'installare Node 20+ sulla tua macchina. Una volta completata questa operazione, puoi installare ed eseguire Gemini CLI utilizzando uno dei seguenti metodi:
- Puoi installare Gemini CLI a livello globale sul tuo sistema. Per eseguire questo passaggio, potresti aver bisogno dell'accesso amministrativo.
# option 1: install Gemini CLI
npm install -g @google/gemini-cli
# .. and then run
gemini
- Esegui il comando seguente:
# option 2: run without installing Gemini CLI
npx https://github.com/google-gemini/gemini-cli
Puoi verificare che la CLI sia installata eseguendo:
gemini --version
Supponendo che tu abbia avviato Gemini CLI con uno dei metodi sopra indicati, al primo avvio potrebbe esserti chiesto di selezionare un tema. In caso affermativo, puoi scegliere il tema predefinito o uno a tua scelta.
La cosa importante successiva è l'autenticazione. Ti verrà chiesto il metodo di autenticazione. In questo lab ti consigliamo di utilizzare il tuo Account Google personale e non account non Google o correlati a Google Workspace.
Se raggiungi i limiti con la quota senza costi attuale assegnata agli Account Google, puoi scegliere di utilizzare la chiave API Gemini o anche Google Cloud Vertex AI, dove dovrai disporre di un ID progetto e del nome della località per quel progetto. Se prevedi di utilizzare altri metodi di autenticazione, consulta la sezione Autenticazione della documentazione.

Procedi e fai clic su Invio. Si aprirà una pagina di autenticazione Google nel browser. Procedi con l'autenticazione con il tuo Account Google, accetta i termini e, una volta autenticato correttamente, noterai che la CLI Gemini è pronta e in attesa del tuo comando.
Di seguito è riportato uno screenshot di esempio:

In questo caso, abbiamo selezionato l'opzione Vertex AI, ma nel tuo caso potrebbe essere l'account personale. Noterai che abbiamo selezionato il modello Gemini 2.5 (visibile in basso a destra). Puoi scegliere il modello specifico in qualsiasi momento utilizzando il comando /model.
4. Configurazione di Gemini CLI tramite settings.json
Se scegli Cloud Shell per eseguire Gemini, il tema predefinito per Gemini CLI e il metodo di autenticazione sono già selezionati e configurati.
Se hai installato Gemini CLI sul tuo computer e l'hai avviata per la prima volta, hai selezionato un tema e poi un metodo di autenticazione.
Ora, nelle esecuzioni successive di Gemini CLI, non ti verrà più chiesto di selezionare un tema e un metodo di autenticazione. Ciò significa che viene salvato da qualche parte e il file che utilizza si chiama settings.json ed è il modo per personalizzare Gemini CLI.
Le impostazioni vengono applicate con la seguente priorità (Cloud Shell rende disponibili solo le impostazioni utente):
- Sistema:
/etc/gemini-cli/settings.json(si applica a tutti gli utenti, sostituisce le impostazioni utente e dello spazio di lavoro). - Workspace:
.gemini/settings.json(override delle impostazioni utente). - Utente:
~/.gemini/settings.json.
Utente Windows: %USERPROFILE%.gemini\settings.json (che in genere si espande a C:\Users<YourUsername>.gemini\settings.json)
Sistema: %ProgramData%\gemini-cli\settings.json (che in genere si espande a C:\ProgramData\gemini-cli\settings.json)
Utente Mac: ~/.gemini/settings.json (che si espande in /Users/<YourUsername>/.gemini/settings.json)
Sistema: /etc/gemini-cli/settings.json
Se ricordi, al momento della selezione del tema, hai scelto di salvare le impostazioni nelle Impostazioni utente. Visita la pagina ~/.gemini folder e noterai il file settings.json.
Di seguito è riportato il mio file settings.json. Se avessi selezionato un altro tema, ne vedresti il nome.
{
"security": {
"auth": {
"selectedType": "oauth-personal" or "cloud-shell"
}
},
"ui": {
"theme": "Default"
}
}
5. La nostra prima interazione con Gemini CLI
Iniziamo a utilizzare Gemini CLI e digitiamo la prima query come mostrato di seguito:
Give me a famous quote on Artificial Intelligence and who said that?
La risposta prevista è mostrata di seguito:
> Give me a famous quote on Artificial Intelligence and who said that?
✦ "The only way to do great work is to love what you do." - Steve Jobs (While not directly about AI, it's a famous quote related to technology and innovation, which underpins AI development.)
Alternatively:
"The development of full artificial intelligence could spell the end of the human race." - Stephen Hawking
Un modo rapido per comprendere Gemini CLI e i vari comandi che supporta è digitare /help (barra) per visualizzare una serie di comandi e scorciatoie da tastiera.
Usciamo da Gemini CLI per il momento. Puoi farlo tramite il comando /quit oppure puoi eseguire Ctrl-C due volte nella sessione di terminale interattiva di Gemini CLI. Quando esci da Gemini CLI, vengono visualizzate le statistiche della sessione, che forniscono informazioni sulla sessione, sull'utilizzo del modello e su altre metriche.
6. Gemini CLI - Command Parameters
Esistono alcuni parametri della riga di comando che è possibile fornire all'avvio di Gemini CLI. Per visualizzare un elenco completo delle opzioni, puoi utilizzare --help come mostrato di seguito.
gemini --help
Dovrebbe essere visualizzata l'intera gamma di opzioni disponibili. Ti invitiamo a consultare la documentazione qui.
Diamo un'occhiata ad alcuni. Il primo consiste nel configurare Gemini CLI per utilizzare una modalità Gemini specifica. Al momento dell'aggiornamento di questo lab, ecco l'elenco dei modelli supportati. Per utilizzare un modello specifico, puoi farlo quando avvii Gemini CLI tramite il parametro -m, come mostrato di seguito:
gemini -m "gemini-2.5-flash"
Se inizi nel modo sopra descritto, puoi controllare il modello in basso a destra nel terminale Gemini CLI.
Una volta nell'applicazione Gemini CLI, puoi utilizzare il comando /model per aprire una finestra di dialogo che ti consente di scegliere un modello. Di seguito è riportata una prova di esempio. A seconda dei requisiti e delle indicazioni fornite, puoi continuare a cambiare modello per scegliere quello giusto per l'attività in base alla complessità e alla necessità di controllare i costi.

Modalità non interattiva
Un'opzione interessante è eseguire Gemini CLI in modalità non interattiva. Ciò significa che fornisci direttamente il prompt e il modello risponderà senza aprire il terminale interattivo di Gemini CLI. Questa opzione è molto utile se prevedi di utilizzare Gemini CLI in modo automatico nell'ambito dello script o di qualsiasi altro processo di automazione. Utilizzi il parametro -p per fornire il prompt a Gemini CLI come mostrato di seguito:
gemini -p "What is the gcloud command to deploy to Cloud Run"
Tieni presente che non è possibile continuare la conversazione con domande aggiuntive. Questa modalità non consente inoltre di autorizzare strumenti (incluso WriteFile) o di eseguire comandi shell.
Ricorda che se ometti il parametro -p e fornisci solo quanto segue, Gemini CLI si aprirà con il prompt e continuerà all'interno.
gemini "What is the gcloud command to deploy to Cloud Run"
7. Gemini CLI - Strumenti integrati
Gemini CLI include un insieme di strumenti integrati e la documentazione degli strumenti afferma che "il modello Gemini utilizza questi strumenti per interagire con il tuo ambiente locale, accedere alle informazioni ed eseguire azioni. Questi strumenti migliorano le funzionalità della CLI, consentendole di andare oltre la generazione di testo e di assistere in un'ampia gamma di attività".
Per ottenere un elenco degli strumenti integrati attuali, richiama il comando /tools come mostrato di seguito:
Available Gemini CLI tools:
- Activate Skill (activate_skill)
- Ask User (ask_user)
- Edit (replace)
- Enter Plan Mode (enter_plan_mode)
- FindFiles (glob)
- GoogleSearch (google_web_search)
- Invoke Subagent (invoke_agent)
- List Background Processes (list_background_processes)
- Read Background Output (read_background_output)
- ReadFile (read_file)
- ReadFolder (list_directory)
- SearchText (grep_search)
- Shell (run_shell_command)
- Update Topic Context (update_topic)
- WebFetch (web_fetch)
- WriteFile (write_file)
Una delle cose che dovresti chiederti immediatamente è se Gemini CLI può semplicemente chiamare questi strumenti, quando vuole. La risposta predefinita è no, quando si tratta di operazioni sensibili che potrebbero comportare la scrittura nel sistema locale, la lettura da un sistema esterno, l'accesso alla rete esterna e così via.
Anche se è disponibile un --yolo quando avvii la CLI (in genere non consigliato), Gemini CLI ti chiederà l'autorizzazione per eseguire lo strumento che ha scelto. Puoi rifiutare l'autorizzazione, consentire l'esecuzione una sola volta o concedere l'autorizzazione generale per l'esecuzione continua. Sei e dovresti avere il pieno controllo della situazione.
Utilizziamo un prompt che farà scegliere a Gemini CLI uno degli strumenti integrati da eseguire e che ti darà una buona comprensione di come funziona il tutto.
Immagina uno scenario in cui vuoi ricevere informazioni sulle ultime notizie finanziarie in tutto il mondo e salvarle in un file nella directory di lavoro locale da cui hai avviato Gemini CLI. Utilizza il seguente prompt:
Search for the latest headlines today in the world of finance and save them in a file named finance-news-today.txt
Immagina per un momento cosa dovrebbe fare. Idealmente, deve eseguire una ricerca su Google per ottenere notizie da alcune fonti di informazioni pertinenti che possono fornirgli notizie finanziarie. Dopodiché, deve creare un file denominato finance-news-today.txt (un'operazione di scrittura sul sistema locale che richiederà la tua autorizzazione) con i relativi contenuti.
Vediamo cosa succede (dovresti procedere allo stesso modo sulla tua macchina).
La prima cosa che fa è richiamare lo strumento GoogleSearch per cercare sul web e recuperare i risultati, come mostrato di seguito:
Searching for Finance News:
I will first search for the latest finance headlines and then save them to a file.
✓ GoogleSearch Searching the web for: "latest finance headlines"
→ Search results for "latest finance headlines" returned.
Saving Finance News: I will now save the finance headlines to the file 'finance-news-today.txt'.
Una volta fatto, è pronto per scrivere nel file e utilizzerà lo strumento WriteFile, ma poiché si tratta di un'operazione sensibile (scrittura), ti chiederà l'autorizzazione. Puoi decidere il tipo di autorizzazione, ad esempio Consenti una volta, Consenti sempre e così via. Per ora, seleziona Consenti una volta.
Le informazioni verranno scritte nel file e di seguito verrà visualizzato un messaggio di operazione riuscita:
✦ I have saved the latest finance news to finance-news-today.txt.
Finance News Saved: The task is complete.
Come si verifica se il file è scritto o meno? Puoi utilizzare @file per chiedere di leggere i contenuti. Mentre digiti @, viene visualizzato un elenco di file nella cartella corrente e il file appena creato. Selezionala e invia il prompt. Il mio prompt è mostrato di seguito:
read the contents of @finance-news-today.txt
In questo modo vengono richiamati gli strumenti richiesti (ReadManyFiles, ReadFile) e i contenuti vengono visualizzati come mostrato di seguito:
✓ ReadManyFiles Attempting to read files from finance-news-today.txt → Read 1 file(s)
Topic: Summarizing the financial news headlines.
✦ The latest finance headlines as of May 15, 2026, include:
Global Markets & Economy:
* The Dow Jones Industrial Average surpassed 50,000 for the first time, driven by strong earnings from Cisco
Systems and a 2% rise in Nasdaq due to tech stocks.
* Inflation concerns are growing, hinting at potential Fed interest rate hikes.
* Kevin Warsh has been confirmed as the new Federal Reserve head.
* A "constructive" U.S.-China summit took place in Beijing between President Trump and President Xi, with
markets watching for impacts from proposed tariffs.
Corporate & Tech News:
<REST OF THE CONTENT>
8. Gemini CLI - Modalità shell
È il momento giusto per imparare a lavorare direttamente con la shell da Gemini CLI. Puoi passare alla modalità shell premendo ! nella casella del messaggio. Verrà attivata la modalità Shell. Puoi tornare indietro premendo di nuovo ! o il tasto ESC.
In modalità shell, vedrai ! all'inizio del prompt, come mostrato di seguito:

Puoi eseguire il controllo direttamente utilizzando comandi standard come pwd e ls, come mostrato di seguito. Tieni presente che i comandi presuppongono un sistema operativo di tipo Linux. Se utilizzi un altro sistema operativo (Windows), utilizza comandi equivalenti come (cd, dir e type). Tieni presente che l'output di queste chiamate è incluso nella finestra contestuale del modello.

Puoi stampare i contenuti del file anche tramite il comando cat, ad esempio cat finance-news-today.txt.
Esercizio: ecco un breve esercizio da provare. Scegli un feed RSS a tua scelta. Fornisci un prompt a Gemini CLI per recuperare i contenuti del feed RSS e formattare i risultati in un modo specifico. È un buon modo per automatizzare qualcosa all'inizio della giornata. Puoi anche chiedere a Gemini CLI di verificare se esiste un feed RSS per un'area specifica, ad esempio le note di rilascio di Google Cloud.
Di seguito è riportato un esempio di prompt:
Get the latest release notes for Google Cloud from its RSS Feed and display the key points in a well-formatted list.
Idealmente, questo prompt dovrebbe prima richiamare lo strumento GoogleSearch per trovare il feed RSS di Google Cloud Platform, quindi utilizzare lo strumento WebFetch per recuperare i contenuti del feed RSS e visualizzarli. Potrebbe esserti chiesto di concedere le autorizzazioni per richiamare questi strumenti.
9. Estensioni Gemini CLI
Come indicato nella documentazione, le estensioni Gemini CLI raggruppano prompt, server MCP e comandi personalizzati in un formato familiare e intuitivo. Con le estensioni, puoi ampliare le funzionalità di Gemini CLI e condividerle con altre persone. È il meccanismo principale per estendere la funzionalità di Gemini CLI oltre i suoi strumenti integrati.
Un'estensione è un pacchetto autonomo, con controllo delle versioni e facilmente distribuibile. Consideralo come il "container di spedizione" per le personalizzazioni di Gemini CLI, che raggruppa tutto il necessario per un workflow specifico in un unico pacchetto ordinato.

Un'estensione può raggruppare qualsiasi combinazione di:
- Comandi slash personalizzati (i tuoi file .toml).
- Configurazioni del server MCP (che in precedenza si trovavano in settings.json).
- File di contesto (GEMINI.md) per fornire istruzioni e linee guida specifiche al modello.
- Limitazioni degli strumenti (excludeTools) per creare un ambiente più sicuro e mirato.
Esplorare la galleria di estensioni
La