Usare Antigravity dalla stessa chat, scegliendolo con l'interruttore CLI nelle Impostazioni e da riga di comando con --engine agy, con le stesse regole degli altri motori: una chat = un motore, sola lettura di default, rilevamento nel PATH, aggiornamento dalle Impostazioni.
Da verificare prima di scrivere codice
Serve agy installato e autenticato, nello stesso ambiente dell'app (Windows e Linux).
Comando non interattivo: agy -p <prompt> (i flag vanno prima di -p).
Ripresa della sessione: flag e formato dell'id (scelto dall'app o generato da agy?).
Scelta del modello e dell'effort: flag disponibili, elenco dei modelli, modello più piccolo.
Formato dell'output: testo o JSON/JSONL, dove sta la risposta e come si riconosce un errore.
Permessi: come ottenere la sola lettura senza flag che saltano i controlli.
Forma dell'eseguibile su Windows: .exe nativo o script .cmd (l'app avvia direttamente, senza cmd /c).
Comando di aggiornamento e sorgente dell'ultima versione, per la sezione Aggiornamenti (ADR-0004).
Blocco noto: agy -p si blocca da sottoprocesso con output rediretto su Windows (issue #318). Provare con --print-timeout, anche su Linux, e decidere timeout ed errore chiaro.
Stdin: se serve chiuderlo subito, come per gli altri motori.
Compiti (nell'ordine doc-first)
Aggiornare ADR-0002 con l'esito delle prove (tabella dei comandi e rischi) e portarlo ad "Accettata" anche per Antigravity.
Aggiornare docs/MVP.md, docs/ROADMAP.md, docs/INSTALL.md (installazione e accesso di agy) e docs/PROJECT_STATE.md.
Aggiungere le righe alla matrice di docs/TESTING.md (famiglia EN, più righe specifiche come per Codex).
Scrivere i test (argomenti, parser dell'output con esempi reali, gestione del blocco/timeout) prima del codice.
Implementare AntigravityEngine in Core/Engine.cs (argomenti, parser, modelli, effort, DefaultModelId, versione più recente) e registrarlo in Engines.
Aggiornare AGENT.md (architettura e vincoli) e il README.
Criteri di accettazione
Dalle Impostazioni si seleziona "Antigravity"; se agy manca è "non installato" e non selezionabile.
Primo messaggio e ripresa funzionano con un agy reale, su Linux e su Windows.
--engine agy "prompt" funziona da CLI; exit code 127 se agy manca.
Un blocco di agy non congela l'interfaccia: dopo il timeout compare un errore chiaro nella chat.
Il JSON della chat salva Engine = "agy" e l'id di sessione; le chat esistenti restano leggibili.
Sezione Aggiornamenti: versione, controllo e pulsante Aggiorna anche per agy.
Test automatici scritti e verdi su Windows e Linux; doc allineati nello stesso commit.
Rischi
Flag e formati di agy possono cambiare o essere poco documentati: serve il parser prudente (righe sconosciute ignorate), come per Codex.
L'issue #318 potrebbe renderlo inutilizzabile con output catturato su Windows: in quel caso va documentato come limite e deciso un aggiornamento dell'ADR.
La mappatura dell'effort potrebbe non esistere: in tal caso il controllo si nasconde per questo motore.
Fuori ambito
Permessi di scrittura, streaming della risposta, impostazioni salvate su disco (voci separate della ROADMAP).
## Obiettivo
Usare Antigravity dalla stessa chat, scegliendolo con l'interruttore **CLI** nelle Impostazioni e da riga di comando con `--engine agy`, con le stesse regole degli altri motori: una chat = un motore, sola lettura di default, rilevamento nel PATH, aggiornamento dalle Impostazioni.
## Da verificare prima di scrivere codice
Serve `agy` installato e autenticato, nello stesso ambiente dell'app (Windows e Linux).
- [ ] Comando non interattivo: `agy -p <prompt>` (i flag vanno **prima** di `-p`).
- [ ] Ripresa della sessione: flag e formato dell'id (scelto dall'app o generato da `agy`?).
- [ ] Scelta del modello e dell'effort: flag disponibili, elenco dei modelli, modello più piccolo.
- [ ] Formato dell'output: testo o JSON/JSONL, dove sta la risposta e come si riconosce un errore.
- [ ] Permessi: come ottenere la sola lettura senza flag che saltano i controlli.
- [ ] Forma dell'eseguibile su Windows: `.exe` nativo o script `.cmd` (l'app avvia direttamente, senza `cmd /c`).
- [ ] Comando di aggiornamento e sorgente dell'ultima versione, per la sezione Aggiornamenti ([ADR-0004](docs/adr/0004-aggiornamento-dei-cli.md)).
- [ ] **Blocco noto**: `agy -p` si blocca da sottoprocesso con output rediretto su Windows ([issue #318](https://github.com/google-antigravity/antigravity-cli/issues/318)). Provare con `--print-timeout`, anche su Linux, e decidere timeout ed errore chiaro.
- [ ] Stdin: se serve chiuderlo subito, come per gli altri motori.
## Compiti (nell'ordine doc-first)
1. [ ] Aggiornare [ADR-0002](docs/adr/0002-motori-cli-claude-codex-antigravity.md) con l'esito delle prove (tabella dei comandi e rischi) e portarlo ad "Accettata" anche per Antigravity.
2. [ ] Aggiornare `docs/MVP.md`, `docs/ROADMAP.md`, `docs/INSTALL.md` (installazione e accesso di `agy`) e `docs/PROJECT_STATE.md`.
3. [ ] Aggiungere le righe alla matrice di `docs/TESTING.md` (famiglia EN, più righe specifiche come per Codex).
4. [ ] Scrivere i test (argomenti, parser dell'output con esempi reali, gestione del blocco/timeout) prima del codice.
5. [ ] Implementare `AntigravityEngine` in `Core/Engine.cs` (argomenti, parser, modelli, effort, `DefaultModelId`, versione più recente) e registrarlo in `Engines`.
6. [ ] Aggiornare `AGENT.md` (architettura e vincoli) e il README.
## Criteri di accettazione
- [ ] Dalle Impostazioni si seleziona "Antigravity"; se `agy` manca è "non installato" e non selezionabile.
- [ ] Primo messaggio e ripresa funzionano con un `agy` reale, su Linux e su Windows.
- [ ] `--engine agy "prompt"` funziona da CLI; exit code 127 se `agy` manca.
- [ ] Un blocco di `agy` non congela l'interfaccia: dopo il timeout compare un errore chiaro nella chat.
- [ ] Il JSON della chat salva `Engine = "agy"` e l'id di sessione; le chat esistenti restano leggibili.
- [ ] Sezione Aggiornamenti: versione, controllo e pulsante Aggiorna anche per `agy`.
- [ ] Test automatici scritti e verdi su Windows e Linux; doc allineati nello stesso commit.
## Rischi
- Flag e formati di `agy` possono cambiare o essere poco documentati: serve il parser prudente (righe sconosciute ignorate), come per Codex.
- L'issue #318 potrebbe renderlo inutilizzabile con output catturato su Windows: in quel caso va documentato come limite e deciso un aggiornamento dell'ADR.
- La mappatura dell'effort potrebbe non esistere: in tal caso il controllo si nasconde per questo motore.
## Fuori ambito
Permessi di scrittura, streaming della risposta, impostazioni salvate su disco (voci separate della ROADMAP).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Obiettivo
Usare Antigravity dalla stessa chat, scegliendolo con l'interruttore CLI nelle Impostazioni e da riga di comando con
--engine agy, con le stesse regole degli altri motori: una chat = un motore, sola lettura di default, rilevamento nel PATH, aggiornamento dalle Impostazioni.Da verificare prima di scrivere codice
Serve
agyinstallato e autenticato, nello stesso ambiente dell'app (Windows e Linux).agy -p <prompt>(i flag vanno prima di-p).agy?)..exenativo o script.cmd(l'app avvia direttamente, senzacmd /c).agy -psi blocca da sottoprocesso con output rediretto su Windows (issue #318). Provare con--print-timeout, anche su Linux, e decidere timeout ed errore chiaro.Compiti (nell'ordine doc-first)
docs/MVP.md,docs/ROADMAP.md,docs/INSTALL.md(installazione e accesso diagy) edocs/PROJECT_STATE.md.docs/TESTING.md(famiglia EN, più righe specifiche come per Codex).AntigravityEngineinCore/Engine.cs(argomenti, parser, modelli, effort,DefaultModelId, versione più recente) e registrarlo inEngines.AGENT.md(architettura e vincoli) e il README.Criteri di accettazione
agymanca è "non installato" e non selezionabile.agyreale, su Linux e su Windows.--engine agy "prompt"funziona da CLI; exit code 127 seagymanca.agynon congela l'interfaccia: dopo il timeout compare un errore chiaro nella chat.Engine = "agy"e l'id di sessione; le chat esistenti restano leggibili.agy.Rischi
agypossono cambiare o essere poco documentati: serve il parser prudente (righe sconosciute ignorate), come per Codex.Fuori ambito
Permessi di scrittura, streaming della risposta, impostazioni salvate su disco (voci separate della ROADMAP).