Skip to content

Follow up Antigravity CLI upstream updates: persisted Agent Mode execution-mode key (v1.1.0) unauthorable in permissions override #2509

Description

@dyoshikawa

Summary

One Antigravity CLI gap as of v1.1.8 (2026-07-28): the persisted default execution mode ("Agent Mode", added v1.1.0) in ~/.gemini/antigravity-cli/settings.json cannot be authored — rulesync's antigravity-cli permissions override copies exactly four autonomy keys and silently drops an execution-mode key that the looseObject schema happily accepts.

Window reviewed: CLI 1.0.4 (2026-06-01) → 1.1.8 (2026-07-28) via the canonical CHANGELOG, plus the current /docs/cli/* pages. All other dimensions verified at parity (see non-gaps).

Gaps

permissions — persisted default execution mode ("Agent Mode") unauthorable (global)

  • Upstream: v1.1.0 (2026-07-08) added an Agent Mode option to /settings persisting a default execution mode (default, accept-edits, plan) into settings.json, explicitly so users need not pass --mode on startup; v1.1.4 (2026-07-18) made headless -p runs honor persisted settings.json policies (permissions, file access, sandbox mode, auto-execution, artifact review). — CHANGELOG
  • rulesync (🌏): AntigravityCliPermissionsOverrideSchema (src/types/permissions.ts) declares toolPermission, enableTerminalSandbox, artifactReviewPolicy, allowNonWorkspaceAccess, and AntigravityCliPermissions.fromRulesyncPermissions copies exactly those four keys. An execution-mode key in the override validates (looseObject) and is then silently dropped on generate; toRulesyncPermissions never reads it back.
  • Fix: add the execution-mode key to the override schema, writer, and importer alongside the existing four. Caveat: the settings reference has not yet been updated with the Agent Mode key (it also predates v1.1.8's copyOnSelect), so confirm the exact JSON key name against a real ~/.gemini/antigravity-cli/settings.json before implementing.

Non-gaps (verified, do not re-file)

  • rules / mcp / commands / subagents / skills / hooks all at parity, including the v1.1.6 Markdown custom agents and v1.1.5 model frontmatter (already in AntigravitySubagentFrontmatterSchema) and the correct global roots (~/.gemini/config/agents/, ~/.gemini/antigravity-cli/skills/, ~/.gemini/antigravity-cli/global_workflows/).
  • The permission action vocabulary (read_file, write_file, read_url, execute_url, command, unsandboxed, mcp) matches antigravity-cli-permissions.ts exactly; global-only scope remains correct (the only other store is ~/.gemini/config/projects/<uuid>.json, keyed by a per-machine UUID and not repo-authorable).
  • Upstream issue #309 (CLI honors neither .geminiignore nor .antigravityignore) is an upstream defect — rulesync's .geminiignore output stays the right target.
  • Upstream issue #627 (only command(*) matches; glob and regex: forms fail) contradicts the permissions doc — unresolved upstream, so rulesync's glob-style command(npm run *) emission stays as-is; re-check when chore(deps): bump the production-dependencies group with 63 updates #627 gets an official answer.
  • Docs URL note for the research map: /docs/cli, /docs/changelog, /docs/rules, /docs/cli/rules, /docs/cli/workflows all 404 — CLI docs live at /docs/cli/{overview,using,features,settings,reference,permissions,plugins}.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    consideringenhancementNew feature or requestmaintainer-scrapRough notes for AI implementation. Not for human eyes.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions