Skip to content

feat(antigravity): add Antigravity CLI backend support#469

Draft
josephrichard7 wants to merge 7 commits into
coollabsio:mainfrom
josemendozaorg:add-antigravity-cli-support
Draft

feat(antigravity): add Antigravity CLI backend support#469
josephrichard7 wants to merge 7 commits into
coollabsio:mainfrom
josemendozaorg:add-antigravity-cli-support

Conversation

@josephrichard7

Copy link
Copy Markdown

Summary

Full integration for the Antigravity CLI (agy) as a supported AI backend in Jean, following the existing patterns of Claude Code, Codex, Grok, and other backends.

Changes

Rust backend (src-tauri)

  • Antigravity CLI management module (antigravity_cli/commands.rs, config.rs): install, uninstall, auth check, model listing, version detection, credential migration from oauth_creds.json, and automatic workspace trust.
  • Chat execution engine (chat/antigravity.rs): final-output mode via agy --print --output-format json, with synthetic chunk/done events for the frontend.
  • Backend enum extended with Antigravity, antigravity_session_id on Session/metadata, resume ID persistence, and message routing.
  • All Tauri commands registered in lib.rs and WebSocket dispatch.rs.

Frontend (src)

  • Preferences: CliBackend union, backendOptions, selected_antigravity_model, antigravity_cli_source, default new-session kind entry, and magic prompt presets.
  • Service hooks (src/services/antigravity-cli.ts): TanStack Query wrappers for status, auth, models, versions, and install.
  • UI: dynamic model loading in ChatToolbar, settings pane (install/login/source/model), navigation entry in PreferencesDialog, onboarding support, icon and backend label.
  • All wiring in NewSessionModeModal, useInstalledBackends, useCliVersionCheck, CliUpdateModal, CliLoginModal, CliReinstallModal, mcp.ts, cli-update.ts, canvas/worktree approval hooks, message settings labels.

Fixes during this PR

  • Fixed SessionMetadata::update_from_session missing grok_session_id and antigravity_session_id (resume-ID loss bug affecting Grok too).
  • Tightened isAntigravityModel heuristic to use known model IDs instead of broad substring matching.
  • Added Antigravity deserialization test.
  • Added Antigravity to newSessionKindOptions and magic prompt default presets.

Verification

  • TypeScript typecheck passes (modulo pre-existing errors in GitDiffModal and diff-stats.test)
  • All tests pass (1124 passing, 4 pre-existing failures unchanged)
  • Rust formatting clean (cargo fmt --check)
  • cargo test / cargo clippy blocked by missing system GUI libs in this CI-less environment

@josephrichard7
josephrichard7 marked this pull request as draft July 4, 2026 03:53
- Add useAntigravityCliSetup/Auth/PathDetection hooks to OnboardingDialog
- Add antigravity state, handlers, and loading flags
- Add antigravity cases to isBackendReady, getCliSetupData, and rendering switch
- Add antigravity login command/args/terminal wiring
- Align Antigravity path detection return type with other CLI hooks
@josephrichard7
josephrichard7 force-pushed the add-antigravity-cli-support branch from 9337f1a to ab2ccb7 Compare July 5, 2026 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant