Skip to content

feat(hosts): add Google Antigravity (agy) host support - #2893

Open
ManchalaSashank wants to merge 1 commit into
garrytan:mainfrom
ManchalaSashank:feature/antigravity-support
Open

ManchalaSashank wants to merge 1 commit into
garrytan:mainfrom
ManchalaSashank:feature/antigravity-support

Conversation

@ManchalaSashank

@ManchalaSashank ManchalaSashank commented Sep 17, 2026

Copy link
Copy Markdown
  • Add hosts/antigravity.ts declarative configuration with agy CLI and Gemini model overlay

    • Register antigravity in hosts/index.ts and ALL_HOST_CONFIGS
    • Add setup installer support (--host antigravity / --host agy) targeting ~/.gemini/config/skills
    • Add Antigravity cleanup support to bin/gstack-uninstall
    • Update test/host-config.test.ts assertions for 11 hosts
    • Update README.md Other AI Agents matrix

    Why

    Currently, developers using the Google Antigravity CLI (agy / antigravity) have no native host target in gstack. Running ./setup defaults to
    Claude Code (~/.claude/skills/), which Antigravity does not discover since it looks for global skills in ~/.gemini/config/skills/ and workspace
    rules in AGENTS.md/GEMINI.md. This change integrates Antigravity as a first-class host following gstack's declarative defineHost architecture,
    enabling automated skill generation, setup installation with --host antigravity (or --host agy), and uninstallation.

    Live evidence

    Ran host validation, registry checks, and alias resolution:

    $ npx tsx test-antigravity-host.ts
    === Host Verification ===
    Total hosts registered: 11
    Host names: claude, codex, factory, kiro, opencode, slate, cursor, openclaw, hermes, gbrain, antigravity
    
    Antigravity config: {
      "name": "antigravity",
      "displayName": "Google Antigravity",
      "cliCommand": "agy",
      "cliAliases": [
        "agy"
      ],
      "defaultModel": "gemini",
      "globalRoot": ".gemini/config/skills/gstack",
      "localSkillRoot": ".agents/skills/gstack",
      "hostSubdir": ".gemini",
      "usesEnvVars": true,
      "frontmatter": {
        "mode": "allowlist",
        "keepFields": [
          "name",
          "description"
        ],
        "descriptionLimit": null
      },
      "generation": {
        "generateMetadata": false,
        "skipSkills": []
      },
      "pathRewrites": [
        {
          "from": "~/.claude/skills/gstack",
          "to": "~/.gemini/config/skills/gstack"
        },
        {
          "from": ".claude/skills/gstack",
          "to": ".agents/skills/gstack"
        },
        {
          "from": ".claude/skills",
          "to": ".gemini/skills"
        },
        {
          "from": "CLAUDE.md",
          "to": "AGENTS.md"
        },
        {
          "from": "~/.codex/skills/gstack",
          "to": "~/.gemini/config/skills/gstack"
        },
        {
          "from": ".codex/skills",
          "to": ".agents/skills"
        }
      ],
      "suppressedResolvers": [
        "GBRAIN_CONTEXT_LOAD",
        "GBRAIN_SAVE_RESULTS"
      ],
      "runtimeRoot": {
        "globalSymlinks": [
          "bin",
          "browse/dist",
          "browse/bin",
          "gstack-upgrade",
          "ETHOS.md"
        ],
        "globalFiles": {
          "review": [
            "checklist.md",
            "TODOS-format.md"
          ]
        }
      },
      "install": {
        "linkingStrategy": "symlink-generated"
      },
      "coAuthorTrailer": "Co-Authored-By: Google Antigravity <antigravity@google.com>",
      "learningsMode": "basic"
    }
    
    Validation errors: None (Valid!)
    
    Alias resolution test:
    resolveHostArg("agy") -> antigravity
    resolveHostArg("antigravity") -> antigravity
    

Scope

• Changed: hosts/antigravity.ts, hosts/index.ts, setup, bin/gstack-uninstall, test/host-config.test.ts, README.md.
• Verified live by: Tested host schema validation with validateHostConfig(), alias resolution for agy/antigravity, and registry mapping.
• Did NOT test: Live full-suite model evals against paid Gemini API quota in CI.

Liveness proof (required for external contributors)

Checklist

[✓] Liveness screenshot attached (GSTACK PR typed live into a real surface)
[✓] This is not a generated-file-only diff (edited the host config source and setup script)
[✓] No ETHOS.md edits, and no changes to voice / founder perspective / YC references
[✓] New public command / external service / host adapter has an accepted issue linked (or N/A)
[ ] Linked issue or reproduction: #1977

Screenshot 2026-09-17 163919

- Add hosts/antigravity.ts declarative configuration with agy CLI and Gemini model overlay
- Register antigravity in hosts/index.ts and ALL_HOST_CONFIGS
- Add setup installer support (--host antigravity / --host agy) targeting ~/.gemini/config/skills
- Add Antigravity cleanup support to bin/gstack-uninstall
- Update test/host-config.test.ts assertions for 11 hosts
- Update README.md Other AI Agents matrix
@trunk-io

trunk-io Bot commented Sep 17, 2026

Copy link
Copy Markdown

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here

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