Skip to main content

Claude and Antigravity

Claude Code and Antigravity use config surfaces backed by the shared MCP registry. Claude keeps runtime-managed fields in ~/.claude.json, while Antigravity receives native MCP configuration at ~/.gemini/config/mcp_config.json.

Mental model

ToolSourceTargetRegistry path
Claude Codehome/dot_claude/settings.{work,personal}.json~/.claude/settings.json~/.claude.json top-level mcpServers
Antigravityhome/dot_gemini/~/.gemini/config/mcp_config.json + policy-merged ~/.gemini/antigravity-cli/settings.jsonshared mcp_servers.yaml + antigravity-cli/readonly_settings.policy.json

Using it

Claude Code settings

Claude profile behavior:

AreaBehavior
Thinking and effortalwaysThinkingEnabled: false; effortLevel: xhigh persisted in both profiles
Dangerous-mode promptskipped in both profiles
Work authnative Claude enterprise auth; no apiKeyHelper / ANTHROPIC_BASE_URL override
MCP storage~/.claude.json top-level mcpServers
Merge strategyupdate only mcpServers, preserve runtime-managed fields

Interactive fish/bash/zsh sessions leave claude native. MCP wiring is handled only by the managed registry and apply-time config generation.

LetsFG

LetsFG is intentionally not exposed through the shared MCP registry.

DecisionReason
not in MCP registryflight tools are irrelevant to most sessions
skill-loaded on demandagents load k-letsfg/SKILL.md only for travel searches
local CLIletsfg uv tool comes from home/readonly_dot_default-uv-tools.tmpl
normal agent modepasses LETSFG_BROWSERS=0 per invocation
browser connectorsexplicit opt-in

Playwriter remains a fallback for rendered UI checks or booking-adjacent flows that need explicit user confirmation.

Antigravity settings

Antigravity (agy) reads its global MCP servers from ~/.gemini/config/mcp_config.json, generated directly from the shared mcp_servers.yaml registry by 07-generate-mcp-configs. Hosted servers (scsi-main, slack) run as ,mcp-token --bridge stdio servers with per-request bearer token injection from cursor-cli's rotating OAuth caches.

Instructions and skills live in Antigravity's global customization root: ~/.gemini/config/AGENTS.md points to ~/AGENTS.md, while ~/.gemini/config/skills symlinks to ~/.agents/skills. ~/.gemini/config/hooks.json injects shared session context on the first PreInvocation, carries premise-check nudges from PreToolUse into the next invocation, and records PostToolUse events.

Paid Gemini API quota for Antigravity CLI is declared in home/dot_gemini/antigravity-cli/readonly_settings.policy.json and merged into ~/.gemini/antigravity-cli/settings.json by 07-merge-antigravity-cli-settings (declared-over-live, like Copilot settings). Policy owns modelProvider: "gemini", model: "Gemini 3.8 Flash (High)", and enableTelemetry: false, and strips any top-level gcp pin. That Flash pin is the interactive-TUI default only — deliberately the cheap tier — and is not the registry pick: category_models.gemini.orchestrate is gemini-3.1-pro-preview, which is what ,ai passes as --model and what dynamic review subagents receive as the abstract pro tier. Runtime fields such as trustedWorkspaces, permissions, and statusLine survive. Fish still loads GEMINI_API_KEY from pass google/gemini/api/token; the key alone does not switch providers.

Do not export GOOGLE_GENAI_USE_VERTEXAI, GOOGLE_CLOUD_PROJECT, or GOOGLE_CLOUD_LOCATION into interactive shells. Those force authMethod=gcp onto aiplatform.googleapis.com and burn shared Vertex quota instead. Corporate Google OAuth without the Gemini API key provider lands on Antigravity Starter product quota.

The personal Claude profile keeps fullscreen mode, push notifications, and its claude-fable-5-1 high-effort override. Its default model is claude-fable-5-1; the global effort setting remains xhigh.