Matteo Benedetto 16fba66723 feat: persist Antigravity model list across restarts
The antigravity provider list lived only in a module-scoped variable
initialized from ANTG_PROVIDER_MODELS, so /agy:refresh-models updated the
running process but the list silently reset to the static defaults on
/reload or restart.

- add ~/.config/agy-pi/models-cache.json (mode 0600, atomic write) storing
  version, refreshedAt, project and the fetched model definitions
- load the cache at startup; fall back to ANTG_PROVIDER_MODELS when the file
  is missing, unreadable, corrupt or has an incompatible version
- persist the live catalog in /agy:refresh-models and report the file path
- add /agy:models-reset to drop the cache and restore the defaults

Verified: extension loads with no cache (11 defaults), a valid cache is
honored and registered, corrupt/invalid/version-mismatched caches fall back
silently, and /agy:models-reset deletes the cache and re-registers the
defaults end-to-end over RPC.
2026-09-13 18:53:10 +02:00
2026-09-08 11:11:06 +02:00
2026-09-08 11:11:06 +02:00

agy-pi

Estensione per pi che integra il client OAuth Google Antigravity (agy) come subagent multimodale. Non usa né gestisce chiavi Google AI Studio/Gemini API.

Capacità

  • chat e ragionamento multi-turno;
  • generazione, editing, composizione e analisi immagini;
  • analisi video;
  • trascrizione audio e input vocale F12 tramite Antigravity;
  • analisi qualitativa di effetti audio con waveform e metadati locali;
  • catalogo modelli e stato conversazione Antigravity.

Strumenti principali: agy, agy_generate, agy_edit, agy_inpaint, agy_style_transfer, agy_compose, agy_character, agy_analyze, agy_transcribe, agy_analyze_audio, agy_video, agy_models, agy_conversation, antigravity_chat.

Non include TTS interno né generazione immagini verificata iterativa.

Audio e F12

Premi F12 per avviare/fermare la registrazione. L'audio viene ottimizzato, convertito in Opus/OGG e inviato al modello voiceModel tramite il gateway Antigravity OAuth. Il workflow genera trascrizione e prompt pulito; con vocalPlanningMode=true richiede una conferma nell'overlay prima dell'invio a pi.

agy_analyze_audio aggiunge un percorso separato per gli effetti non vocali: misura il file con ffprobe, genera una waveform con ffmpeg e invia audio, immagine e contesto locale insieme a Gemini tramite inlineData. Non richiede una chiave Gemini esterna e non assume che l'audio contenga parlato.

agy_transcribe usa la stessa pipeline Antigravity. Non esistono fallback a servizi con chiave API esterna. I suoni di start/stop/done sono effetti locali, non sintesi vocale.

Configurazione

/agy:config
/agy:config set voiceModel gemini-3.7-flash-medium
/agy:status

Le impostazioni sono in ~/.config/agy-pi/config.json. Serve solo completare il login OAuth del client agy.

Installazione

pi install git:git.enne2.net/enne2/agy-pi
# oppure
pi -e /percorso/a/agy-pi

Consulta docs/configuration.md, docs/tools.md e docs/vocal-workflow.md per i dettagli.

S
Description
Estensione pi per Google Antigravity CLI (agy) come subagent multimodale
Readme
5.1 MiB
Languages
TypeScript 96.4%
Shell 3.4%
Python 0.2%