Introduzione ad Antigravity IDE

1. Introduzione

Antigravity è una piattaforma di sviluppo agentica progettata per aiutare chiunque a creare nell'era agent-first. È composta da quattro prodotti principali: Antigravity, Antigravity IDE, Antigravity CLI e Antigravity SDK.

In questo codelab, ci concentreremo esclusivamente sull'IDE Antigravity per gli sviluppatori.

Obiettivi didattici

  • Comprendere la piattaforma Antigravity.
  • Installa Antigravity IDE.
  • Esplora l'editor e il pannello dell'agente di Antigravity.
  • Comandi slash.
  • Personalizzazioni, server MCP e Skill.

Che cosa ti serve

L'IDE Antigravity deve essere installato localmente sul tuo sistema (Mac, Windows e distribuzioni Linux specifiche). Inoltre, avrai bisogno di quanto segue:

  • Browser web Chrome.
  • Un account Gmail (account Gmail personale).

Problemi relativi ai rapporti

Man mano che procedi con il codelab e con Antigravity, potresti riscontrare problemi.

Per problemi relativi al codelab (errori di battitura, istruzioni errate), apri un bug con il pulsante Report a mistake nell'angolo in basso a sinistra del codelab:

e7d8a6055a16a773.png

Per bug o richieste di funzionalità relativi ad Antigravity, segnala il problema all'interno di Antigravity. Per segnalare un feedback sul prodotto, fai clic su Impostazioni, disponibile nell'angolo in basso a sinistra del prodotto Antigravity. e poi scegliendo l'opzione Provide Feedback.

2. Piattaforma Antigravity

Prima di concentrarci su Antigravity IDE, vediamo cos'è la piattaforma Antigravity.

Antigravity è composto da 4 prodotti separati:

  • Antigravity: l'applicazione autonoma di punta e il tuo centro di comando per gestire più agenti locali in parallelo.
  • Antigravity IDE: l'IDE agentico e ricco di funzionalità per gli sviluppatori.
  • Antigravity CLI: un'interfaccia a riga di comando per le interazioni degli agenti basate sul terminale.
  • Antigravity SDK: strumenti per gli sviluppatori per integrare Antigravity nei propri sistemi in modo programmatico.

Sebbene tutti i prodotti forniscano l'accesso agli stessi agenti Antigravity sottostanti, il livello di interazione è diverso.

In Antigravity, lavori a un livello superiore con gli agenti. Nelle conversazioni con l'agente, spieghi cosa vuoi che crei e lasci che si occupi del codice. Puoi vedere il codice generato, ma non devi necessariamente esaminarlo.

In Antigravity IDE, il livello di codifica è inferiore. Puoi comunque parlare con l'agente tramite il pannello dell'agente, ma hai anche una visualizzazione completa del codice e ricevi assistenza dall'agente mentre generi e modifichi il codice.

Nella CLI Antigravity, utilizzi gli agenti dall'interfaccia a riga di comando. Anche in questo caso, puoi comunque parlare con l'agente e chiedergli di generare e modificare il codice, ma tutto avviene nel terminale.

La scelta del livello dipende da te. In genere, inizi a creare in Antigravity a un livello superiore e, man mano che la complessità aumenta, passi ad Antigravity IDE per la programmazione o ad Antigravity CLI per attività più adatte al terminale.

3. Installazione

Se hai già installato l'applicazione Antigravity, ma non ancora l'IDE Antigravity, dovresti vedere un pulsante Installa IDE nell'angolo in alto a destra:

a3afce2c797f070c.png

Puoi fare clic su questo pulsante o andare direttamente alla pagina di download dell'IDE Antigravity per scaricare e installare l'IDE Antigravity per il tuo sistema operativo (macOS, Windows, Linux).

Una volta completata l'installazione, dovrebbe essere visualizzata una schermata di benvenuto:

a7bda49c67b4d971.png

Accedi con il tuo Account Google e continua l'installazione scegliendo il tema.

A un certo punto, ti verrà chiesto come vuoi utilizzare l'agente Antigravity IDE. In questa schermata, puoi regolare la policy di esecuzione del terminale, la policy di revisione e la policy di esecuzione di JavaScript per l'agente. Per ora, scegli Sviluppo guidato dalla revisione.

923299763a029330.png

In una schermata successiva, puoi configurare le estensioni e lo strumento a riga di comando agy-ide. Ti consigliamo di installare solo le estensioni di cui hai bisogno.

c4e8005b3042b401.png

L'IDE Antigravity include anche plug-in, raccolte di competenze e MCP per aiutare gli agenti a lavorare con i prodotti per sviluppatori Google. Scegli quelli che ritieni possano esserti utili per il tuo lavoro:

195da4a9d7b5a075.png

Ora puoi utilizzare Antigravity IDE.

4. Interfaccia di Antigravity IDE

Quando avvii per la prima volta Antigravity IDE, dovresti visualizzare l'interfaccia principale.

4a3bd4e0483365d9.png

Puoi iniziare aprendo una cartella locale. È anche consigliabile aprire un nuovo terminale tramite Terminal e poi la voce di menu New Terminal.

Ora l'editor, il terminale e l'agente sono pronti:

d1465bea8316f991.png

Nell'editor, ricevi assistenza AI da Antigravity mentre digiti il codice. Il pannello dell'agente è il luogo in cui chattare con l'agente, scegliere modelli diversi e fare riferimento a file e comandi. Per impostazione predefinita, il terminale non è assistito dall'AI, ma se installi Antigravity CLI, puoi avviarlo con il comando agy e ricevere assistenza dell'AI anche nel terminale.

Impostazioni di antigravità

È consigliabile dare un'occhiata alle impostazioni di Antigravity nell'angolo in basso a destra del pulsante. Contiene le impostazioni di base dell'agente:

14201a391e0d5955.png

Le impostazioni avanzate forniscono ulteriori impostazioni, ad esempio la modalità di sicurezza dell'agente:

9c2939aafa9724b5.png

In questo modo puoi specificare la libertà dell'agente in relazione ai comandi del terminale, all'accesso al file system e così via. Assicurati di esaminarle e di scegliere le impostazioni che preferisci per il tuo progetto.

5. Editor

Esploriamo l'editor. Crea un file Python, hello.py, per esplorare le funzionalità dell'editor.

Mentre digiti il codice in hello.py nell'editor, si attiva un completamento automatico intelligente che puoi accettare premendo il tasto Tab:

b34cd085032c2d5f.png

Ricevi suggerimenti per saltare da una scheda all'altra per spostare il cursore nel punto logico successivo del codice. Ad esempio, quando finisci di digitare main(), l'editor ti chiede di passare al metodo main:

2dd69707af98c677.png

Viene visualizzato anche un suggerimento Scheda da importare per aggiungere le dipendenze mancanti:

5ce8b0b5b9fdfdcc.png

6. Pannello dell'agente

A destra si trova il riquadro laterale dell'agente. Se non è visibile, puoi attivarla/disattivarla con la scorciatoia Cmd + L.

Puoi scegliere diversi tipi di modelli, utilizzare @ per includere più contesto, ad esempio file, directory, terminale, server MCP o / per i comandi (argomento trattato in un passaggio successivo).

ae98a3c19c2a8fc7.png

Il modo più semplice per interagire con l'agente è iniziare a porre domande in una conversazione, ma esistono diversi modi per interagire con l'agente.

Se hai installato un linter statico (ad es. Pylint), vedrai errori di sintassi nel codice quando commetti un errore. Se passi il mouse sopra un problema nell'editor e selezioni Explain and fix . Si apre il riquadro dell'agente con una spiegazione e una possibile soluzione:

db123f692200e653.png

Puoi anche andare alla scheda Problems dell'IDE e selezionare Send to Agent per chiedere all'agente di provare a risolvere i problemi:

2f95dba053a09dd5.png

Puoi anche selezionare una parte dell'output del terminale con un errore e inviarla alla conversazione con l'agente con Cmd + L:

b1a29237e8efd11a.png

Mentre chatti con l'agente, vedrai alcune icone nella parte superiore della finestra di input:

3b17223d6d2e7bea.png

Questi sono Panoramica delle modifiche (per visualizzare le modifiche al codice), Terminale (processi in background), Artefatti e Browser.

7. Artefatti

Il punto di forza di Antigravity è la sua capacità di raccogliere facilmente il feedback in ogni fase dello sviluppo. Mentre l'agente lavora a un'attività, crea diversi artefatti:

  • Prima della codifica: un piano di implementazione e un elenco di attività.
  • Durante la generazione del codice: differenze tra i codici.
  • Dopo la codifica: una procedura dettagliata per spiegare cosa è stato fatto e verificare i risultati.

Questi artefatti sono un modo per Antigravity di comunicare i suoi piani e i suoi progressi. Ancora più importante, sono anche un modo per fornire feedback all'agente nello stile dei commenti di Documenti Google. Ciò è molto utile per indirizzare l'agente nella direzione che preferisci.

Proviamo a creare una semplice applicazione e vediamo come possiamo fornire feedback ad Antigravity durante il percorso.

Nel riquadro laterale dell'agente, prova questo prompt:

Build a TODO list application with Python Flask, SQlite DB, and a CRUD frontend. Keep the application simple

In questo modo, l'agente inizierà a pianificare e produrre un piano di implementazione.

Piano di implementazione

Un piano di implementazione è una panoramica di ciò che Antigravity intende fare, dello stack tecnologico che utilizzerà e una descrizione di alto livello delle modifiche proposte.

Dopo qualche secondo, nella conversazione dovrebbe essere visualizzato un piano di implementazione:

935372be9721a21c.png

Se ti soddisfa, puoi fare clic sul pulsante Proceed. Se vuoi fornire un feedback, puoi aprire il piano di implementazione e aggiungere commenti in stile Documenti Google prima di inviarlo.

Elenco di attività

Dopo l'aggiornamento del piano di implementazione, Antigravity crea un elenco di attività. Si tratta di un elenco concreto di passaggi che Antigravity seguirà per creare e verificare l'app. È un modo per comunicare i progressi:

5eb1f122174855a8.png

Modifiche al codice

A questo punto, Antigravity genererà del codice in nuovi file. Puoi Accept all o Reject all queste modifiche nel riquadro laterale della chat dell'agente senza esaminare i dettagli. Puoi anche fare clic su Review changes per visualizzare i dettagli delle modifiche e aggiungere commenti dettagliati nel codice.

Procedura dettagliata

Una volta terminata la codifica, Antigravity avvia il server e potrebbe aprire un browser per verificare l'app. Esegue alcuni test manuali, ad esempio aggiungendo e aggiornando attività. Alla fine, crea un file di procedura dettagliata per riepilogare le operazioni eseguite per verificare l'app. Questo file potrebbe includere uno screenshot o un flusso di verifica con una registrazione del browser.

Puoi anche commentare lo screenshot o la registrazione del browser nella procedura dettagliata. Ad esempio, possiamo aggiungere un commento Change the blue theme to orange theme e inviarlo. Dopo l'invio del commento, Antigravity apporta le modifiche, verifica i risultati e aggiorna la procedura dettagliata

Annulla modifiche

Infine, dopo ogni passaggio, se non sei soddisfatto della modifica, puoi annullarla dalla chat. Basta scegliere ↩️ Undo changes up to this point nella chat.

8. Comandi slash

Nell'IDE Antigravity sono disponibili comandi slash / integrati. Nel riquadro laterale dell'agente, se digiti / , dovresti visualizzare l'elenco dei comandi:

c0b121133b3191ca.png

/goal indica all'agente di eseguire un'attività fino al completamento, /schedule consente di pianificare le attività come ricorrenti o una tantum. /grill-me è utile per concordare un piano con l'agente e /learn è utile per estrarre regole o competenze riutilizzabili dalle conversazioni.

Prova questi comandi per scoprire come possono esserti utili.

9. Personalizzazioni

L'IDE Antigravity offre un paio di opzioni di personalizzazione: Regole e Flussi di lavoro.

Fai clic su ... nell'angolo in alto a destra e scegli Customizations. Verranno visualizzati Rules e Workflows:

3415bdfa2f263b08.png

Le regole aiutano a guidare il comportamento dell'agente. Queste sono linee guida che puoi fornire per assicurarti che l'agente le segua durante la generazione di codice e test. Ad esempio, potresti voler che l'agente segua un determinato stile di codice o che documenti sempre i metodi. Puoi aggiungerle come regole e l'agente le prenderà in considerazione.

I workflow sono prompt salvati che puoi attivare on demand con / mentre interagisci con l'agente. Guidano anche il comportamento dell'agente, ma vengono attivate dall'utente su richiesta.

Un buon paragone è che le Regole sono più simili alle istruzioni di sistema, mentre i workflow sono più simili a prompt salvati che puoi scegliere su richiesta.

Regole e Flussi di lavoro possono essere applicati a livello globale o per spazio di lavoro e salvati nelle seguenti posizioni:

  • Regola globale: ~/.gemini/GEMINI.md
  • Workflow globale: ~/.gemini/config/global_workflows/<YOUR_WORKFLOW_NAME>.md
  • Regole dello spazio di lavoro: your-workspace/.agents/rules/
  • Workspace Workflows: your-workspace/.agents/workflows/

Aggiungiamo alcune regole e workflow nello spazio di lavoro.

Aggiungi una regola

Innanzitutto, aggiungiamo una regola di stile del codice. Vai a Rules e seleziona il pulsante +Workspace. Assegna un nome, ad esempio code-style-guide, con le seguenti regole di stile del codice:

* Make sure all the code is styled with PEP 8 style guide
* Make sure all the code is properly commented

In secondo luogo, aggiungiamo un'altra regola per assicurarci che il codice venga generato in modo modulare con esempi in una regola code-generation-guide:

* The main method in main.py is the entry point to showcase functionality.
* Do not generate code in the main method. Instead generate distinct functionality in a new file (eg. feature_x.py)
* Then, generate example code to show the new functionality in a new method in main.py (eg. example_feature_x) and simply call that method from the main method.

Le due regole vengono salvate e sono pronte

Aggiungere un workflow

Definiamo anche un workflow per generare test delle unità. In questo modo, potremo attivare i test delle unità una volta che il codice ci soddisfa (anziché farli generare continuamente dall'agente).

Vai a Workflows e seleziona il pulsante +Workspace. Assegna un nome, ad esempio generate-unit-tests, con quanto segue:

* Generate unit tests for each file and each method
* Make sure the unit tests are named similar to files but with test_ prefix

Anche il workflow è pronto.

Prova

Vediamo ora le regole e i workflow in azione. Crea un file main.py scheletro nel tuo spazio di lavoro:

def main():
    pass

if __name__ == "__main__":
    main()

Ora vai al riquadro laterale dell'agente e chiedi: Implement binary search and bubble sort.

Dopo un minuto o due, dovresti ricevere tre file nello spazio di lavoro: main.py, bubble_sort.py, binary_search.py. Noterai anche che tutte le regole sono implementate: il file principale non è ingombrante e contiene il codice di esempio, ogni funzionalità è implementata nel proprio file, tutto il codice è documentato e in buono stile:

from binary_search import binary_search, binary_search_recursive
from bubble_sort import bubble_sort, bubble_sort_descending


def example_binary_search():
    """
    Demonstrate binary search algorithm with various test cases.
    """
    ...

def example_bubble_sort():
    """
    Demonstrate bubble sort algorithm with various test cases.
    """
    ...

def main():
    """
    Main entry point to showcase functionality.
    """
    example_binary_search()
    example_bubble_sort()
    print("\n" + "=" * 60)


if __name__ == "__main__":
    main()

Ora che siamo soddisfatti del codice, vediamo se possiamo attivare il flusso di lavoro per la generazione di test delle unità.

Vai alla chat e inizia a digitare /generate. Antigravity conosce già il nostro flusso di lavoro:

1b5120e06e55e98.png

Seleziona generate-unit-tests e premi Invio. Dopo alcuni secondi, nel tuo spazio di lavoro verranno visualizzati nuovi file: test_binary_search.py, test_bubble_sort.py con una serie di test già implementati.

10. Server MCP

Il Model Context Protocol (MCP) è diventato lo standard per connettere gli agenti a sistemi esterni. Svolgono un ruolo chiave nel garantire che l'agente rimanga basato sui tuoi dati e sulla tua integrazione.

Antigravity IDE supporta i server MCP, sia locali che remoti. Viene inoltre fornito con integrazioni a diversi server MCP che funzionano con i servizi Google Cloud e sono installazioni con un solo clic con pochi dati di configurazione.

Fai clic su ... nell'angolo in alto a destra e scegli MCP Servers. Viene visualizzata una finestra di dialogo in cui puoi vedere un elenco di server MCP:

3fed0fbf1daa6df0.png

Ad esempio, puoi fare clic su Cloud Run per installare il relativo server MCP.

Se fai clic su Manage MCP Servers in alto a destra, puoi anche visualizzare la configurazione del server MCP non elaborata in ~/.gemini/config/mcp_config.json. Puoi anche aggiungere altri server MCP personalizzati in questo file e premere il pulsante di aggiornamento per visualizzarli riconosciuti in Antigravity IDE.

Per utilizzare i server MCP configurati, puoi chiedere ad Antigravity qualcosa che richieda un server MCP. Ad esempio, puoi attivare il server cloudrun-mcp e chiedere ad Antigravity: Build and deploy a Cloud Run service. In questo modo, Antigravity dovrebbe cercare e utilizzare il server cloudrun-mcp per configurare ed eseguire il deployment di un servizio Cloud Run.

11. Competenze

Sebbene i modelli sottostanti di Antigravity siano generalisti potenti, non conoscono il contesto specifico del tuo progetto o gli standard del tuo team. Il caricamento di ogni singola regola o strumento nella finestra di contesto dell'agente comporta un aumento delle dimensioni degli strumenti, costi più elevati, latenza e confusione.

Le skill risolvono questo problema tramite la divulgazione progressiva. Una competenza è un pacchetto specializzato di conoscenze che rimane inattivo fino a quando non è necessario. Viene caricato nel contesto dell'agente solo quando la tua richiesta specifica corrisponde alla descrizione della skill .

Struttura e ambito

Le skill sono pacchetti basati su directory. Puoi definirli in due ambiti a seconda delle tue esigenze:

  • Ambito globale (~/.gemini/config/skills/): disponibile in tutti i prodotti Antigravity (Antigravity, Antigravity IDE, Antigravity CLI) e progetti.
  • Ambito progetto/workspace (<project-root>/.agents/skills/): in questo modo, la skill sarà disponibile solo all'interno di un progetto specifico.

Una tipica directory delle skill ha questo aspetto :

my-skill/
├── SKILL.md    #(Required) metadata & instructions.
├── scripts/    # (Optional) Python or Bash scripts for execution.
├── references/ # (Optional) text, documentation, or templates.
└── assets/     # (Optional) Images or logos.

Aggiungiamo una competenza.

Competenza di revisione del codice

Si tratta di un'abilità solo di istruzioni, ovvero dobbiamo creare solo il file SKILL.md, che conterrà i metadati e le istruzioni per le abilità. Creiamo una competenza che fornisca all'agente i dettagli per esaminare le modifiche al codice alla ricerca di bug, problemi di stile e best practice.

Crea una directory nella cartella del progetto che conterrà la skill:

mkdir -p .agents/skills/code-review

Crea un file SKILL.md nella cartella del progetto, ad esempio .agents/skills/code-review, che abbiamo appena creato, con il contenuto mostrato di seguito:

---
name: code-review
description: Reviews code changes for bugs, style issues, and best practices. Use when reviewing PRs or checking code quality.
---

# Code Review Skill

When reviewing code, follow these steps:

## Review checklist

1. **Correctness**: Does the code do what it's supposed to?
2. **Edge cases**: Are error conditions handled?
3. **Style**: Does it follow project conventions?
4. **Performance**: Are there obvious inefficiencies?

## How to provide feedback

- Be specific about what needs to change
- Explain why, not just what
- Suggest alternatives when possible

Tieni presente che il file SKILL.md riportato sopra contiene i metadati (nome e descrizione) nella parte superiore e poi le istruzioni. Quando l'agente viene caricato, legge solo i metadati delle skill e carica le istruzioni complete solo quando necessario.

Convalidiamo la skill. Avvia una nuova conversazione con Antigravity e chiedi quali skill sono installate. Dovresti vedere lo skill code-review:

61d2f8a77a133c46.png

Prova

Crea un nuovo file denominato demo_bad_code.py con i contenuti mostrati di seguito:

import time

def get_user_data(users, id):
   # Find user by ID
   for u in users:
       if u['id'] == id:
            return u
   return None

def process_payments(items):
   total = 0
   for i in items:
       # Calculate tax
       tax = i['price'] * 0.1
       total = total + i['price'] + tax
       time.sleep(0.1) # Simulate slow network call
  
   return total

def run_batch():
   users = [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}]
   items = [{'price': 10}, {'price': 20}, {'price': 100}]
  
   u = get_user_data(users, 3)
   print("User found: " + u['name']) # Will crash if None
  
   print("Total: " + str(process_payments(items)))

if __name__ == "__main__":
   run_batch()

Apri una nuova conversazione in un progetto specifico in Antigravity e inserisci il seguente prompt: review the @demo_bad_code.py file.

L'agente deve identificare l'abilità code-review, caricare i dettagli ed eseguire l'azione in base alle istruzioni fornite nel file code-review/SKILL.md.

Di seguito è riportato un output di esempio:

12. Conclusione

Complimenti! Ora hai installato, configurato ed esplorato correttamente le funzionalità principali di Antigravity IDE.

Per saperne di più sulla piattaforma Antigravity, consulta i seguenti codelab e la documentazione di riferimento.

Altri codelab

Documenti di riferimento