1. Introduzione
Gemini CLI è un agente open source basato sull'AI per il tuo terminale che porta la potenza dei modelli Gemini direttamente nella riga di comando. Sebbene sia potente di per sé, il suo vero potenziale si sblocca tramite le estensioni della CLI di Gemini.
Le estensioni sono il modo ufficiale e standardizzato per aumentare le funzionalità della CLI Gemini. Prima delle estensioni, la personalizzazione della CLI spesso comportava la modifica manuale dei file di configurazione come settings.json, un processo che poteva essere "complicato e soggetto a errori".
Pensa a un'estensione come a un "container" per le personalizzazioni dell'interfaccia a riga di comando di Gemini. È un pacchetto autonomo, con controllo delle versioni e facilmente distribuibile che raggruppa tutti i componenti necessari per insegnare a Gemini un nuovo insieme di competenze. Questo "container di spedizione" può includere :
- Configurazioni del server MCP: collegano Gemini a strumenti e API esterni, come le API di Google Cloud o servizi di terze parti.
- File di contesto (GEMINI.md): si tratta di "playbook" che forniscono al modello istruzioni e linee guida specifiche su come utilizzare efficacemente i nuovi strumenti.
- Comandi slash personalizzati (file .toml): questi racchiudono prompt complessi in più passaggi in comandi semplici e facili da usare, come /deploy.
- Limitazioni degli strumenti (excludeTools): possono disattivare gli strumenti integrati per creare un ambiente più sicuro o più mirato.
Il valore principale delle estensioni è la trasformazione dell'interfaccia a riga di comando di Gemini da assistente personale a piattaforma scalabile e pronta per l'uso aziendale. Un team può raggruppare l'intero stack cloud in una singola estensione, consentendo ai nuovi sviluppatori di diventare produttivi con un solo comando.
In questo codelab imparerai a utilizzare questo potente ecosistema. Non creerai un'estensione, ma ne installerai e utilizzerai quattro diverse per aggiungere al tuo terminale funzionalità di deployment di applicazioni, analisi della sicurezza, analisi dei dati e infrastruttura come codice.
Attività previste
- Installa e configura la CLI Gemini e i relativi prerequisiti di Google Cloud.
- Sfoglia la galleria ufficiale delle estensioni dell'interfaccia a riga di comando di Gemini per trovare le estensioni.
- Utilizza l'interfaccia a riga di comando
gemini extensionsper installare, elencare e gestire le estensioni. - Esplora alcune estensioni dell'interfaccia a riga di comando di Gemini
Cosa imparerai a fare
- Che cosa sono le estensioni dell'interfaccia a riga di comando di Gemini e perché sono lo standard per la personalizzazione dell'interfaccia a riga di comando.
- Come trovare e installare le estensioni dalla galleria delle estensioni o da un URL GitHub.
- La funzione dei comandi di gestione delle chiavi:
gemini extensions install,gemini extensions listegemini extensions update. - Installazione e utilizzo di un paio di estensioni Gemini CLI
Che cosa ti serve
- Browser web Chrome
- Un account Gmail
- Un progetto cloud con fatturazione abilitata
Questo codelab è pensato per utenti e sviluppatori di tutti i livelli (inclusi i principianti). È necessario avere una certa familiarità con l'interfaccia a riga di comando di Gemini, anche se verranno forniti i passaggi per installarla da zero. Se vuoi familiarizzare con l'interfaccia a riga di comando di Gemini, prova il codelab: Hands-on with Gemini CLI.
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>
- Abilita le API richieste tramite il comando mostrato di seguito. L'operazione potrebbe richiedere alcuni minuti.
gcloud services enable cloudresourcemanager.googleapis.com \
servicenetworking.googleapis.com \
run.googleapis.com \
cloudbuild.googleapis.com \
Se il comando viene eseguito correttamente, dovresti visualizzare un messaggio simile a quello mostrato di seguito:
Operation "operations/..." finished successfully.
Se manca un'API, puoi sempre abilitarla durante l'implementazione.
Consulta la documentazione per i comandi e l'utilizzo di gcloud.Prima di eseguire la configurazione ed eseguire l'interfaccia a riga di comando di Gemini, creiamo una cartella che utilizzerai come cartella principale per tutti i progetti che potresti creare al suo interno. Questo è un punto di partenza per l'interfaccia a riga di comando di Gemini, 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 alla cartella:
cd gemini-cli-projects
Puoi avviare direttamente l'interfaccia a riga di comando di Gemini tramite il comando gemini in un nuovo terminale Cloud Shell oppure è già stata avviata in un terminale Cloud Shell separato.
La nostra prima interazione con Gemini CLI
Dobbiamo assicurarci che l'ambiente dell'interfaccia a riga di comando di Gemini funzioni correttamente, in modo da poter dare il primo prompt come mostrato di seguito:
Give me a famous quote on Artificial Intelligence and who said that?
Noterai che la nostra query ha generato uno strumento GoogleSearch (uno strumento integrato nell'interfaccia a riga di comando di Gemini) che è stato richiamato. In altre parole, hai già utilizzato uno dei potenti strumenti integrati di Gemini CLI, ovvero GoogleSearch, che basa le sue risposte sulle informazioni che ottiene dal web. Dovresti ricevere una risposta alla tua query.
Iniziamo con le estensioni.
3. Che cos'è un'estensione?
Un'estensione è un pacchetto autonomo, con controllo delle versioni e facilmente distribuibile. Consideralo come il "container di spedizione" per le personalizzazioni dell'interfaccia a riga di comando di Gemini, che raggruppa tutto il necessario per un flusso di lavoro 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.
Perché utilizzare le estensioni? Vantaggi principali
L'adozione delle estensioni per le personalizzazioni offre diversi vantaggi:
- Installazione con un solo comando: è fondamentale. Invece di una configurazione manuale in più passaggi, un utente può installare un insieme completo e complesso di strumenti con un unico comando:
gemini extensions install <URL>ogemini extensions install --path=some/local/path. <URL> nel comando precedente potrebbe essere l'URL di GitHub in cui hai ospitato l'estensione. - Distribuzione semplificata: condividere il tuo lavoro diventa semplice come condividere un singolo URL del repository Git. Non dovrai più scambiarti singoli file e snippet di configurazione.
- Controllo delle versioni e gestione delle dipendenze: poiché le estensioni sono in genere ospitate in repository Git, il controllo delle versioni è senza costi. Esistono
gemini extensions update commandper aggiornare un'estensione all'ultima versione. - Rilevabilità ed ecosistema: le estensioni sono la base di un ecosistema ricco e aperto, proprio come i marketplace per VS Code o Chrome. Il meccanismo delle estensioni potrebbe costituire la base di un futuro marketplace in cui queste estensioni saranno disponibili per la revisione, il download e altro ancora, in vero stile community.
L'introduzione del framework di estensioni è un chiaro segnale che Gemini CLI sta evolvendo da potente strumento autonomo a vera e propria piattaforma estensibile.
4. Comprendere le nozioni di base delle estensioni
Questa sezione tratta le parti dell'ecosistema delle estensioni rivolte agli utenti: trovare le estensioni e gestirle.
Esplorare la galleria di estensioni
La Galleria delle estensioni è il marketplace centrale per scoprire tutte le estensioni ufficiali create da Google e di terze parti:
- Apri il seguente URL nel browser:
https://geminicli.com/extensions/browse/. - Questa galleria è il motore di rilevabilità dell'ecosistema. Puoi vedere le estensioni di aziende come GitHub, Redis e DynaTrace, che mostrano l'ampiezza degli strumenti disponibili.
- Scorri verso il basso e trova la scheda dell'estensione per Cloud Run.
- Tieni presente che la scheda fornisce una descrizione, l'autore (Google) e un pulsante di comando
Copy installcon un solo clic. Questo è il modo più semplice per ottenere il comando di installazione di un'estensione.
Estensioni della CLI Gemini - Comandi di gestione
Il comando gemini extensions è il punto di accesso per gestire le estensioni locali.
Eseguilo nel terminale per visualizzare l'elenco dei comandi disponibili.

I comandi sono semplici (installazione/disinstallazione, elenco, aggiornamento, attivazione/disattivazione e così via) e ne utilizzeremo alcuni in questo codelab.
Controllare lo stato attuale
Prima di installare qualsiasi cosa, controlliamo di avere una "tabula rasa".
- Esegui il comando
gemini extensions list: - Dovresti vedere il seguente output, che conferma che non sono ancora installate estensioni.
No extensions installed.
5. L'estensione Cloud Run (deployment di un'app)
L'estensione Cloud Run disponibile nella galleria delle estensioni della CLI Gemini è un server MCP che ci consente di eseguire il deployment delle nostre applicazioni su Cloud Run.
Di seguito è riportata la scheda dell'estensione Cloud Run della galleria delle estensioni:

Innanzitutto, installa l'estensione Cloud Run facendo clic su Copia comando di installazione come mostrato sopra. Poi incolla il comando nel terminale Cloud Shell (dovrebbe essere simile al seguente):
gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp
Dopo aver eseguito il comando precedente, ti verrà richiesta una conferma. Procedi con l'approvazione. L'estensione Cloud Run dovrebbe essere installata correttamente.
Installing extension "cloud-run".
**Extensions may introduce unexpected behavior. Ensure you have investigated the extension source and trust the author.**
This extension will run the following MCP servers:
* cloud-run (local): npx -y @google-cloud/cloud-run-mcp
This extension will append info to your gemini.md context using gemini-extension/GEMINI.md
Do you want to continue? [Y/n]: Y
Extension "cloud-run" installed successfully and enabled.
Se ora esegui il comando di elenco delle estensioni Gemini, dovresti vedere l'estensione Cloud Run installata come mostrato di seguito:
✓ cloud-run (1.0.0)
Path: <HOME_FOLDER>/.gemini/extensions/cloud-run
Source: https://github.com/GoogleCloudPlatform/cloud-run-mcp (Type: github-release)
Release tag: v1.5.0
Enabled (User): true
Enabled (Workspace): true
Context files:
<HOME_FOLDER>/.gemini/extensions/cloud-run/gemini-extension/GEMINI.md
MCP servers:
cloud-run
Se avvii Gemini CLI ora ed esegui il comando /mcp, vedrai quanto segue:

Ora torniamo a Cloud Shell e proviamo a eseguire il deployment di un'applicazione. Per questo, dobbiamo prima avere un'applicazione semplice da implementare in Cloud Run. Segui i passaggi indicati di seguito:
Assicurati di trovarti nella cartella che abbiamo creato in precedenza, ovvero gemini-cli-projects. Crea un'altra cartella all'interno di questa denominata gemini-cloud-run e accedi alla cartella.
mkdir gemini-cloud-run
cd gemini-cloud-run
Ora crea due file in questa cartella (file app.py e requirements.txt), i cui contenuti sono riportati di seguito:
app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello from Gemini and Cloud Run!'
if __name__ == "__main__":
app.run(debug=True, host='0.0.0.0', port=8080)
requirements.txt
Flask
gunicorn
Ora avvia Gemini CLI dalla cartella gemini-cloud-run e, quando il terminale è pronto, inserisci il seguente prompt:
/deploy --project="PROJECT_ID" --location="PROJECT_LOCATION" --name="SERVICE_NAME"
Dovrai specificare PROJECT_ID (ID progetto Google Cloud), PROJECT_LOCATION e SERVICE_NAME. Se non lo fornisci, il comando Cloud Run richiama gli strumenti appropriati per aiutarti a sceglierli.
Nell'ambito della procedura, verrà selezionato lo strumento giusto dall'estensione del server MCP Cloud Run che abbiamo installato. Ad esempio, dovresti vedere un messaggio simile a questo:

Continua e consenti l'utilizzo dello strumento.
È tutto. L'interfaccia a riga di comando di Gemini ora dispone di tutte le informazioni necessarie, nonché della tua autorizzazione per eseguire gli strumenti. Ora verrà eseguita l'intera pipeline di deployment: creazione dell'immagine Docker, push su Artifact Registry, configurazione e deployment di un nuovo servizio Cloud Run.
Dopo qualche istante (in realtà 2-3 minuti), vedrai un messaggio di operazione riuscita con un URL del servizio. Di seguito è riportato un esempio di esecuzione:
The Cloud Run service SERVICE_NAME has been deployed from the current folder in project PROJECT_ID.
You can view the service in the Cloud Console: https://console.cloud.google.com/run/detail/PROJECT_LOCATION/SERVICE_NAME?project=PROJECT_ID
The service is accessible at: https://SERVICE_NAME-SOME-ID.a.run.app
Fai clic su questo link. Dovresti vedere l'app Flask che mostra la home page:

Questo mostra la potenza di un'estensione della CLI Gemini (Cloud Run in questo caso), che ha incapsulato completamente la complessità dei comandi gcloud CLI e si è occupata di tutti i dettagli per te.
Puoi esplorare altri strumenti nel server MCP di Cloud Run.
6. L'estensione BigQuery (analisi di set di dati di grandi dimensioni)
Per seguire l'esercitazione, avrai bisogno di:
- Progetto Google Cloud con l'API BigQuery attivata.
- Autorizzazioni IAM:
- Utente BigQuery (roles/bigquery.user)
- Esegui questo comando per impostare la variabile di ambiente
BIGQUERY_PROJECT. Questo è il progetto che eseguirà i job BigQuery, non necessariamente il progetto in cui si trovano i dati (anche se potrebbero essere lo stesso)
export BIGQUERY_PROJECT=<YOUR_GCP_PROJECT_ID>
- Installa l'estensione BigQuery Data Analytics tramite il comando riportato di seguito. Concedi l'autorizzazione per l'installazione. Una volta installate, nella configurazione saranno presenti due estensioni :
cloud-runebigquery-data-analytics.
gemini extensions install https://github.com/gemini-cli-extensions/bigquery-data-analytics
- Avviamo di nuovo Gemini CLI tramite il seguente comando:
gemini
L'interfaccia a riga di comando di Gemini dovrebbe avviarsi nel terminale: 
I seguenti comandi devono essere inseriti nel terminale della CLI Gemini.
- Verifica che l'estensione BigQuery sia installata e pronta all'uso inserendo il comando slash riportato di seguito:
/extensions list
Dovresti vedere anche l'estensione bigquery-data-analytics.

- Esegui il comando seguente per visualizzare gli strumenti disponibili.
/mcp list

- Poniamo una domanda di analisi di base sul set di dati pubblico BigQuery: l'e-commerce di abbigliamento. Questo set di dati contiene dati su clienti, prodotti e ordini per un sito di e-commerce di abbigliamento fittizio. Inserisci questo prompt nell'interfaccia a riga di comando di Gemini:
Look at BigQuery's the look ecommerce public dataset. Identify the top 5 products that had the most orders.
- Gemini CLI ti chiederà se vuoi consentire l'esecuzione degli strumenti BigQuery. Per continuare, seleziona la terza opzione:
Yes, always allow all tools from server "bigquery_data_analytics".
- Dietro le quinte, Gemini genererà la query SQL appropriata, richiamerà lo strumento
execute_sqle restituirà una risposta in linguaggio naturale insieme ai tuoi dati:

- Ora chiederemo a Gemini di prevedere il tasso di reso dei prodotti in base ai dati storici. Per questo comando, l'interfaccia a riga di comando Gemini non deve tentare di generare un SQL dettagliato per creare questa previsione, ma deve richiamare lo strumento
forecastdal server MCP, che utilizzerà AI.Forecast di BigQuery in background:
Forecast what the return rate will be next month.
- Dovresti visualizzare una risposta simile a questa:

7. Ulteriori esplorazioni
Abbiamo completato il nostro codelab in cui abbiamo trattato cosa sono le estensioni dell'interfaccia a riga di comando di Gemini, i comandi di base per utilizzarle ed esplorato un paio di estensioni : le estensioni cloud-run e bigquery-data-analytics.
Visita la galleria delle estensioni di Gemini all'indirizzo https://geminicli.com/extensions/ per esplorare le estensioni attualmente disponibili (oltre 100 al momento della stesura) che puoi utilizzare oggi. Ogni scheda Estensioni contiene informazioni, il tipo di estensione (MCP, contesto e così via), il link al repository GitHub e un comando per installare l'estensione nel tuo ambiente.

8. Complimenti
Congratulazioni, hai compreso correttamente le estensioni dell'interfaccia a riga di comando di Gemini e come installare e utilizzare varie estensioni dell'interfaccia a riga di comando di Gemini.