The SEO operating system for Google Antigravity — CLI, IDE and 2.0.
Turn your Antigravity install into a full-stack SEO team: audits, keyword and SERP research, technical SEO, schema, content production, backlinks, and GEO / AI-Overview optimization — all invoked from inside your Antigravity CLI or IDE.
65 skills · 32 agents · 6 commands — wired into a single validated registry, one command to install.
Website & full catalog → https://antigravity-seo-seven.vercel.app/
- Why this exists
- Requirements
- Install
- First run
- Commands
- What's inside
- Skill domains
- Data sources & API keys
- When something breaks
- Uninstall
- How it works
- Contributing
- License
Google Antigravity ships with browser, terminal and IDE control — but no opinionated SEO tooling. Antigravity SEO fills that gap with a coherent, manifest-linked suite instead of a pile of loose prompts:
- One install line drops the whole extension into
~/.gemini/and registers it — your existing Antigravity configuration is never overwritten. - Everything is registry-validated. Each skill and agent is declared in
registry.jsonand checked at build time, so nothing runs orphaned and the documented counts never drift from reality. - Degrades gracefully. With zero API keys you still get on-page analysis, schema, GEO and content workflows. Add keys to unlock live rank data, real Core Web Vitals, first-party analytics and full-site crawling.
- Self-healing. Every installer failure writes a copy-paste recovery prompt you can hand straight back to your Antigravity agent.
- Google Antigravity (CLI, IDE, or 2.0) with a
~/.gemini/directory - Python 3.9+ — used by the Google API scripts and the environment doctor
- Node.js 18+ — MCP data-source servers are launched via
npx - git, curl (macOS/Linux) or PowerShell 5+ (Windows) for install
API keys are optional — see Data sources & API keys.
Antigravity SEO installs itself through your own agent — no shell one-liners
and no third-party domain to trust. Paste the prompt below into your Antigravity
CLI or IDE; it clones the repo, stages the extension at
~/.gemini/extensions/seo/, installs the Python dependencies, registers the
extension in ~/.gemini/settings.json, and verifies the setup.
Install the Antigravity SEO extension from https://github.com/dotusmanali/antigravity-seo
into my Google Antigravity config, end to end, without asking me to run anything manually.
1. Download the main branch (git clone or the main.tar.gz tarball) into a temp folder.
2. Create ~/.gemini/extensions/seo/ and copy the repo's contents into it — the
skills/, agents/, commands/, scripts/, tools/, templates/ folders and the
top-level *.json files (registry.json, manifest.json, plugin.json,
mcp_config.json, hooks.json) plus requirements.txt. Do NOT touch anything
else under ~/.gemini/.
3. Install the Python dependencies:
pip install -r ~/.gemini/extensions/seo/requirements.txt
4. Build and register the extension (these write registry.json and append an
append-only block to ~/.gemini/settings.json — never overwrite my other settings):
python3 ~/.gemini/extensions/seo/tools/build_registry.py
python3 ~/.gemini/extensions/seo/tools/register_extension.py
5. Verify and show me the result:
python3 ~/.gemini/extensions/seo/tools/verify_environment.py --json
If anything fails, read ~/.gemini/logs/antigravity-seo/last-error.md, fix it,
and re-verify.
When it's done, tell me to restart Antigravity and try: /seo:audit https://example.com
Your agent handles the whole flow and tells you what (if anything) still needs an
API key. Everything lands under ~/.gemini/extensions/seo/, so the extension is
namespaced as /seo:<command> — see First run.
Restart your Antigravity CLI or IDE so it picks up the new extension, then try:
/seo:audit https://your-site.com
/seo:research "generative engine optimization" --map
/seo:create "how to use google antigravity" --brief
/seo:auto rank my roofing site in Karachi
Not sure which command to use? Start with /seo:auto — it reads your goal in
plain language and routes to the right workflow at the smallest safe depth.
Six namespaced commands cover the full lifecycle. Every command routes to one or more of the 32 agents, which in turn invoke registry-signed skills.
| Command | What it does | Argument hint |
|---|---|---|
/seo:auto |
Runs the SEO / GEO / local workflow implied by a natural-language goal, at the smallest safe depth. Add --deep for an exhaustive, phase-gated run. |
<natural-language-goal> [--deep] |
/seo:audit |
Evaluates and hardens what exists: on-page SEO, content quality (CORE-EEAT), technical SEO, AI-visibility / GEO readiness, and domain authority (CITE). | <url|domain|content> [--full] [--tech|--visibility|--authority] [--competitors <domains>] |
/seo:research |
Maps the opportunity: keyword demand, SERP intent, competitors, content gaps, and topic / entity / site architecture. | <topic|domain> [--competitors <domains>] [--map] |
/seo:create |
Produces SEO / GEO content end-to-end: brief, single asset or series, refresh, and a CMS-neutral publish package (with meta and schema). | <topic|brief|url> [--brief|--series|--refresh|--publish|--meta|--schema] [--type article|landing|faq|comparison] |
/seo:run |
Master supervisor that bridges SEO, blog and memory systems through a structured, lightweight review loop. | <complex-goal> [--max-steps <int>] [--force-fresh] |
/seo:track |
Tracks and remembers over time: rankings, alerts, performance reports, and project memory. | <domain|campaign|memory-request> [--alert|--report|--remember] [--period <range>] |
~/.gemini/extensions/seo/
├── skills/ 65 workflows across 6 domains
├── agents/ 32 specialised agents (TOML)
├── commands/ auto · audit · research · create · run · track
├── scripts/ Python + JS runners (Google APIs, pipelines)
├── tools/ build_registry.py, verify_environment.py (doctor)
├── templates/ recovery-prompt and report templates
├── registry.json single source of truth (auto-generated, validated)
├── manifest.json version, checksum, install date
├── plugin.json extension manifest for Antigravity
├── mcp_config.json data-source wiring (${ENV} placeholders — no secrets)
└── hooks.json lifecycle hooks
All 65 skills are grouped into six domains and browsable, filterable, and searchable in the live catalog.
| Domain | Skills | Focus |
|---|---|---|
| Content | 29 | Briefs, drafting, rewriting, meta, schema, internal linking, SXO |
| Ops | 12 | Orchestration, supervision, rank tracking, alerts, reporting, memory |
| Technical | 9 | Crawlability, Core Web Vitals, indexation, site health |
| Research | 6 | Keyword demand, SERP intent, competitors, content gaps |
| GEO / AI | 6 | AI-Overview and generative-engine citation readiness |
| Authority | 3 | Backlinks, entities, domain authority |
| Total | 65 |
Every data source is optional and read from environment variables —
mcp_config.json references them with ${VAR} placeholders, so no secret is
ever pasted into a config file. Full step-by-step setup (where to sign up, free
tiers, and the exact keys) lives at
/docs/mcp.
| Source | Cost | Unlocks | Environment variables |
|---|---|---|---|
| DataForSEO | Paid | Live SERP positions, keyword volume, backlink graph, competitor data | DATAFORSEO_LOGIN, DATAFORSEO_PASSWORD |
| Firecrawl | Free tier | Full-site crawling, JS rendering, sitemap discovery | FIRECRAWL_API_KEY |
| Google Search Console · GA4 · PageSpeed / CrUX | Free | Core Web Vitals field data, indexation, top queries, organic traffic | GOOGLE_API_KEY, GOOGLE_APPLICATION_CREDENTIALS, GSC_PROPERTY, GA4_PROPERTY_ID |
| Gemini image (Nano Banana) | Free tier | Inline hero images, diagrams, social cards | GOOGLE_AI_API_KEY |
| Google Suggest + Trends | Free | Keyword ideation and interest-over-time — zero setup | (none) |
| Google Keyword Planner | Free API* | Exact search volume, competition and CPC | GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_CLIENT_ID, GOOGLE_ADS_CLIENT_SECRET, GOOGLE_ADS_REFRESH_TOKEN, GOOGLE_ADS_LOGIN_CUSTOMER_ID |
* The Google Ads API is free to call but requires a Google Ads manager account and a developer token.
After setting keys, confirm they're detected:
python3 ~/.gemini/extensions/seo/tools/verify_environment.py --jsonEvery installer failure writes a recovery prompt to:
~/.gemini/logs/antigravity-seo/last-error.md
Copy its contents, paste them into your Antigravity agent, and it will diagnose the failure, install any missing dependencies, and finish setup. If it still won't run, open an issue.
The uninstaller ships inside the extension — run the one for your OS:
macOS / Linux
bash ~/.gemini/extensions/seo/uninstall.shWindows (PowerShell)
~/.gemini/extensions/seo/uninstall.ps1Or just ask your agent: "Uninstall the Antigravity SEO extension — remove
~/.gemini/extensions/seo/ and its block in ~/.gemini/settings.json, and
leave everything else untouched."
Either way this removes ~/.gemini/extensions/seo/ and its settings.json
block. Backups are kept in ~/.gemini/logs/antigravity-seo/backups/.
Antigravity SEO is a four-layer system, so a single prompt reaches the right workflow without you memorising a catalog:
Commands → Agents → Skills → Data
6 verbs 32 routed 65 registry MCP servers + Google APIs
specialists workflows (all optional)
- Commands interpret intent and pick a route.
- Agents are registry-signed specialists that own a slice of the workflow.
- Skills are the individual, composable workflows agents invoke.
- Data flows in from optional MCP servers and Google APIs.
The full architecture, with the data-flow diagram, is documented at /how-it-works.
The registry is the contract. After changing any skill or agent, rebuild and validate it:
python3 tools/build_registry.py # regenerate registry.json
python3 tools/verify_environment.py # check the toolchain + keysregistry.json is generated — never edit it by hand. Skills live in skills/
(one folder per skill, with a SKILL.md spec) and agents in agents/ (TOML).
See the skill spec
and agent spec for
the authoring formats.
MIT — built by dotusmanali.