provider-gemini
Skill16 starsChanged 2 months agoMITView on GitHub
Track and maintain the gateway's Gemini-compatible Google Antigravity CLI contract. Use when Google ships an Antigravity CLI release, when an `agy` flag/permission/session/subcommand behaviour changes, or when an upstream scan flags drift. Process guidance only; `src/upstream-contracts.ts` is the mechanical source of truth.
In this repository19 other files it gives its agents.
- site/agents.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- site/llms.txtllms.txt
- async-job-orchestrationSkill
- implement-review-fixSkill
- least-cost-routingSkill
- multi-llm-reviewSkill
- personal-agent-config-kitSkill
- provider-claudeSkill
- provider-codexSkill
- provider-cursorSkill
- provider-devinSkill
- provider-grokSkill
- provider-mistralSkill
- public-demo-sessionSkill
- retrospective-walkSkill
- secure-orchestrationSkill
- session-workflowSkill
- supply-chain-guardSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 0 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 48
Use gemini_request for normal turns and gemini_request_async for long-running review or analysis.
- Very specific: line 53
Do not pass non-empty allowedTools to the current Antigravity request path.
- Very specific: line 57
Use approvalStrategy:"legacy" for every Gemini/Antigravity request.
- Very specific: line 87
Follow multi-llm-review's full-access protocol, inspect the current request schema and live capability response, and use a fresh …
- Very specific: line 137
Check the resumable response field to know whether a session can continue.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Provider: Google Antigravity CLI
Process guidance for keeping the gateway's Gemini-compatible provider key
(gemini) aligned with Google Antigravity CLI (agy). This skill does not
define argv/env behaviour; the single mechanical source of truth is
UPSTREAM_CLI_CONTRACTS.gemini in src/upstream-contracts.ts, enforced by
validateUpstreamCliArgs / validateUpstreamCliEnv. Never re-encode flags,
permission modes, output formats, or resume rules here or in TOML.
Identity
| Field | Value |
| CliType | gemini |
| Executable | agy |
| Package | vendor installer / self-update |
| Repo | https://github.com/google-antigravity/antigravity-cli |
| Docs | https://antigravity.google/docs |
| Changelogs | agy changelog · https://api.github.com/repos/google-antigravity/antigravity-cli/releases/latest |
| Watch categories | flags, permissions, session-resume, subcommands |
These values mirror UPSTREAM_CLI_CONTRACTS.gemini.upstreamMetadata and
docs/upstream/provider-sources.dag.toml ([providers.gemini]). The TypeScript
metadata is authoritative; the TOML is scanner input only.
When to use
- A Google Antigravity CLI release lands and you need to check for contract drift.
- A
geminirequest fails the upstream contract check before spawn. npm run upstream:scan -- --livereports a change on either Antigravity source.
How LLM agents should use Gemini/Antigravity through the gateway
- Discover the live gateway/provider surface before relying on
Antigravity-specific controls:
For a cached read-only resource, useprovider_tool_capabilities({cli:"gemini"})provider-tools://gemini. - Use
gemini_requestfor normal turns andgemini_request_asyncfor long-running review or analysis. Sync calls may auto-defer; pollllm_job_statusand fetch withllm_job_resultwhen that happens. - Omit
modelunless the caller explicitly asked for a specific variant; the gateway resolves the configured Gemini/Antigravity default. - Do not pass non-empty
allowedToolsto the current Antigravity request path; the gateway rejects them. Antigravity owns its MCP configuration, andmcpServersis descriptive metadata rather than an enforceable gateway allowlist. Do not assume old Gemini CLI allowlist semantics apply toagy. - Use
approvalStrategy:"legacy"for every Gemini/Antigravity request.mcp_managedis Claude-only and is rejected before the Antigravity CLI launches because ambient MCP configuration cannot be isolated.approvalPolicyhas no effect for Gemini. sandbox,includeDirs,sessionId,resumeLatest,createNewSession,project, andnewProjectare the relevant request controls.workspaceandworktreeare gateway routing selections, not Antigravity-native flags.includeDirsis an additional read path and does not select cwd. UseworkingDirto select the process cwd, or a verified registeredworkspacefor remote HTTP/OAuth callers. An unscoped child uses a fresh neutral temporary cwd, not the gateway repository. JSON and stream-json output are supported. Attachments, policy files, admin policy files, andskipTrustremain unsupported or rejected in the current Antigravity path.- For continuity, use a verified caller-owned Antigravity conversation ID or
resumeLatest:true. Gateway-generatedgw-*IDs are bookkeeping IDs and are rejected if replayed as Gemini session IDs; check the responseresumablefield.resumeLatest:truerequiresworkingDir,workspace, or a configured default workspace so--continueremains bound to a stable cwd. - Antigravity's current print contract carries the prompt in argv. Oversized
UTF-8 input fails before spawn as non-retryable
input_too_large; the gateway never truncates instructions. All other caller-controlled argv values are admitted in their final encoded form before spawn. Embedded NUL bytes return non-retryableinvalid_inputwithout exposing the rejected value.
Full-access review handoff
For a user-authorized exhaustive review that needs full provider permissions and
native MCP access, do not infer the launch controls from this maintenance guide.
Follow multi-llm-review's full-access protocol, inspect the current request
schema and live capability response, and use a fresh target-checkout
node dist/index.js --transport=stdio gateway rather than a global process.
Reapply the grant on every new job, preserve native MCP configuration without a
pretend gateway allowlist, send the corrective-program report and exact
diff/file identity, set no caller caps, and honor a user-required 90-second
progress cadence. The reviewer must independently inspect code, docs, tests,
and commands before it can approve.
Scan for upstream change
npm run upstream:scan -- --provider gemini
npm run upstream:scan -- --live --provider gemini --fail-on-critical
npm run upstream:scan -- --live --provider gemini --write-snapshot --write-reportAntigravity has two tracked sources (docs site + GitHub releases); both are
fetched under --live. A failed fetch is advisory unless --fail-on-critical
is set.
Update procedure when the upstream CLI changes
- Edit the contract in
src/upstream-contracts.ts(UPSTREAM_CLI_CONTRACTS.gemini): flag arities, permission bypasses, output-format support, and session flags live here. - Add a conformance fixture proving the new accept/reject behaviour
(mirror the existing
gemini-*fixtures). - If a source URL or watch category changed, update
upstreamMetadataand mirror it intodocs/upstream/provider-sources.dag.toml. - Verify:
npm run build && npm run upstream:contractsandnpm test.
Antigravity-specific notes (see the contract for exact rules)
- Tested against agy 1.1.25. Antigravity (
agy) has no native ACP entrypoint; legacy Gemini CLI ACP evidence does not transfer, soprovider-acp://geminireportsnative:false(no methods, no adapter-as-native masquerade) andgemini_requestexposes notransport:"acp"selector. - The public MCP tool names stay
gemini_request/gemini_request_async, but the spawned executable isagy. - Antigravity 1.1.25 consumes the token after bare
--printas its prompt, so gateway requests attach the value as--print=<prompt>. This keeps later gateway flags from being mistaken for prompt text. - agy 1.1.25 retains root
--agentplusagentandagentscommands. Track and acknowledge those upstream-only controls before exposing them through a request schema; custom agent selection can change tool and permission posture. approvalMode:"auto_edit"maps to--mode accept-edits,approvalMode:"plan"maps to--mode plan, andyolomaps to--dangerously-skip-permissions. Unsupported Gemini-only knobs such as--approval-mode,-o, policy files, MCP allowlists, and attachment tokens must fail before spawn unless Antigravity adds an equivalent.- Continuity is real via
--conversation <id>or--continue; gateway-generatedgw-*IDs are bookkeeping only and rejected if replayed assessionId. Continuation remains provider-native under legacy. - Check the
resumableresponse field to know whether a session can continue.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

