Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[feat] Support Antigravity CLI (agy) as a delivery target

Closed
#1,426 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript
Domain
tooling

Research direction

Start by finding the built-in toolPaths defaults, KNOWN_AGENTS, and SELF_MODE_AGENT_CHOICES in the TypeScript CLI source; check how existing agents handle file-based resources such as MCP and settings. Then decide how agy should deliver its skills.json entries and rules, since the issue describes two possible approaches. Done means agy can be enabled and receives team resources without conflicting with Gemini paths.

Written by the indexing model from the issue text.

Description

enhancement help wanted

Problem

Antigravity CLI (agy, Google's Gemini-based coding agent) is not a recognized agent in teamai, so members who use it get none of the team's resources.

Verified against [email protected]:

  • toolPaths built-in defaults contain 20 keys, none of them agy / antigravity:
    claude, codex, tclaude, tcodex, cursor, copilot, joycode, qoder, kiro, trae, zcode, omp, pi, codebuddy, openclaw, hermes, dsh, workbuddy, opencode, muse
  • KNOWN_AGENTS contains 38 entries (including windsurf, kilocode, junie, augment) — also no agy.
  • A full-text search of dist/cli.js for antigravity / agy returns 0 hits.
  • teamai init --agent agy has no template to resolve against, and enabledAgents in the local config can only enable agents that already exist in toolPaths.

So this is a capability gap in the CLI, not a local activation problem.

Proposed Solution

Add an agy (Antigravity CLI) entry to the toolPaths defaults, plus an agy entry in KNOWN_AGENTS (and in SELF_MODE_AGENT_CHOICES if single-repo mode should support it).

The paths below come from the CLI's own bundled documentation (~/.gemini/antigravity-cli/builtin/skills/agy-customizations/docs/*.md, agy v1.4.7) and were cross-checked against this machine's install.

Resource Location Notes
customization root ~/.gemini/config/ (user), <project>/.agents/ (project) agy's docs describe a generic "customization root"; the global one is ~/.gemini/config/
skills <root>/skills.json → entries[].path not a fixed directory. agy discovers skills through a declarative manifest, so a plain skills/ path will be ignored
rules GEMINI.md / AGENTS.md walked up from CWD no dedicated rules directory; no frontmatter; 24 KB per file, 20k tokens aggregate
mcp <root>/mcp_config.json ({"mcpServers": {...}}) present on this machine but empty (0 bytes); agy mcp list reports "No MCP servers configured"
hooks <root>/hooks.json events include PreInvocation, PostInvocation, PostToolUse, Stop; entries use the { matcher, hooks: [{ type, command, timeout }] } shape
agents not documented as a user-scope path agy has agy agent list and a plugin marketplace, but no documented dir for team-supplied subagents
claudemd n/a covered by the AGENTS.md rule path above

Two shapes are possible, and I don't know which the project prefers:

A. Path-shaped entry, matching every existing tool. Requires two extras:

  • a skills.json writer (entries[] merge, not a directory copy), since skills is not a directory;
  • a decision on the rules channel — claudemd → AGENTS.md, or a rules file that agy actually reads. Note that agy does not read a rules/ directory.

B. Plugin-shaped entry. agy has a first-class plugin system (agy plugin list/install/enable/disable, marketplaces under <root>/cache/marketplaces/), and agy plugin import [gemini|claude] already imports user-scope Gemini and Claude customizations. Teamai could emit an agy plugin instead of hand-placing files, which sidesteps the skills.json problem entirely — but it is a new delivery shape for teamai and would need its own ownership/lifecycle record.

I'd lean toward A for consistency with the other 20 tools, with skills.json treated the way teamai already treats tools with non-directory configs (mcp / settings are files today), and B left as a follow-up if more agents adopt plugin manifests.

Alternatives Considered

  1. Custom toolPaths in the team's teamai.yaml. toolPaths is typed record(string, ToolPathsSchema), so a team can add an agy key today. But the MCP and hook sync paths iterate the built-in agent enum, so a custom key cannot reach them — the team would get skills/rules only, with no guarantee against future CLI changes. Worth documenting as the interim workaround, not as the solution.
  2. A scripts/postPull hook that copies resources into ~/.gemini/antigravity-cli/. Works, but bypasses role gating and state.json tracking, so teamai pull cannot prune or report on what it delivered. This is what downstream teams are pushed into without native support.
  3. Wait for upstream. Not viable — the 38-entry KNOWN_AGENTS list already includes several less common agents, so omitting agy looks like an oversight rather than a deliberate deferral.

Additional Context

  • agy --version on this machine: 1.4.7. agy is on PATH at ~/.local/bin/agy.
  • Existing issue #1419 ([feat] Deliver team culture and shared instructions to Qoder, Kiro and Trae) and #1418 ([feat] Read the sessions of more tools) point in the same direction, so an "add agent X" issue has precedent here.
  • Trap worth noting for whoever implements this: KNOWN_AGENTS already maps gemini → .gemini/skills. Antigravity lives under the same ~/.gemini/ parent but in ~/.gemini/antigravity-cli/ + ~/.gemini/config/, so an agy entry must not point at .gemini/skills or the two will overwrite each other.
  • Happy to open a PR with the toolPaths entry and the skills.json writer if the path-shaped approach is acceptable.

Published from a team-level teamai deployment (20 agents enabled, user scope) where members actively use agy alongside Claude Code, Codex and opencode.

Dominant language
TypeScript
Stars
5.6k
Forks
471
Avg merge
19h 39m
Merged PRs (30d)
404

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Tencent/teamai-cli

All issues in Tencent/teamai-cli

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.