Skip to content
  • Claude Code
  • Cursor
  • Codex
  • Gemini CLI
  • Zed

SEO for AI Agents

A free skill pack that teaches AI coding agents to build and audit websites that search engines can rank and AI answers can cite.

For developers building with Claude Code, Cursor, Codex, Gemini CLI and Zed. Paste a prompt, or install the pack and let it trigger by itself.

Try it now: paste into your agent

An audit of your project. It reports what it finds and changes nothing.

skills
22skills
rungs
5rungs
site profiles
7site profiles
your-projectIllustrative
  1. Run seo-orchestrator in audit mode on this project
  2. Next.js, App Router. Site type: SaaS. Search Console tool found: tier 1.
  3. Fetching /pricing as a crawler sees it…
  4. R-01 Reach: the pricing table is not in the served HTML. Proposed fix: render it on the server.
  5. R-02 Read: 14 pages share one meta description.
  6. Audit saved to .seo/. Nothing on the site was changed.
  7. Fix R-01
  8. R-01 fixed on branch seo/r-01: pricing data moved into a server component.
  9. Re-fetched /pricing: the table is now in the served HTML. Change logged.
01The problem

Sites built with AI agents often look perfect and are invisible to crawlers

Your agent ships a page that renders beautifully in the browser. A crawler that does not run JavaScript receives an empty shell. The pack catches that first, then works up four more rungs, and it always checks the HTML that is actually served.

What you see in a browser

example.com/pricing

Simple pricing for growing teams

Starter

£9

Team

£19

Business

£39

The same either way. The browser runs the JavaScript.

What a crawler receives

<html>
  <head>
    <title>Example</title>
  </head>
  <body>
    <div id="root"></div>
    <script src="/app.js"></script>
  </body>
</html>

An empty shell. Crawlers that do not run JavaScript see no pricing at all.

02Start here

Audit, fix what you approve, re-check

The same three steps on every site. Open your project in Claude Code, Cursor, Codex or any agent that can read a URL, and paste. Each prompt points at the skill on GitHub, so you always run the latest version.

  1. 01Auditaudit

    Diagnoses the whole site on the HTML a crawler receives, records findings with short refs (R-01, R-02) and the proposed fix for each, and saves the report to .seo/. It changes nothing.

    install/copy-paste/audit.md ↗
  2. 02Fix what you approvefix

    Applies only the findings you name, lowest failing rung first, one commit per finding, re-fetching each page to prove the fix is served. Pages that already earn traffic need your explicit say-so.

    install/copy-paste/fix.md ↗
  3. 03Re-checkre-check

    After a deploy or a few weeks, re-tests earlier findings, flags anything that regressed and, if your environment has search data, shows what changed.

    install/copy-paste/recheck.md ↗

About to launch? Run Launch QA on the production URL first.

Doing content work? Run Context gathering first, so the agent learns the business before it touches the words.

Have Search Console or an SEO tool connected? The pack finds it and uses it, read-only. Nothing to set up.

03All prompts

22 skills, one way to ask

Set the mode, target, scope and output once, and every prompt below follows. Search by what you are trying to fix; Copy puts the prompt on your clipboard, and Show prompt gives the full text and the installed-pack version.

Build your prompt

Diagnoses and records findings. Changes nothing.

22 of 22
  • Full audit (orchestrator)seo-orchestratorStart here

    Where should the work start, and what comes next?

  • Context gatheringseo-context-gatheringContent and strategy

    What does this business actually sell, to whom, and what can it prove?

  • Search dataseo-search-dataData and measurement

    What does the live data say about indexing, traffic and the effect of our changes?

  • Reach1-reach-indexationTechnical

    Can a crawler reach the URL and see its content in the served HTML?

  • Read2-read-contentTechnical

    Is there real, readable content, correct metadata, and a good page experience?

  • Understand3-understand-schemaTechnical

    Can engines identify the entities on the page?

  • Connect4-connect-architectureTechnical

    Is the page wired into a coherent site?

  • Rank5-rank-relevanceContent and strategy

    Is the page good enough, and trusted enough, to win the query?

  • Citecite-aeo-geoAI search

    Is a page that can already rank eligible to be cited by AI answers?

  • Launch QAseo-launch-qaStart here

    Is anything going to stop this site being indexed when it goes live?

  • Performanceseo-performanceTechnical

    Why are real users getting a slow page, and what fixes it?

  • Migrationsseo-migrationsTechnical

    How do we change URLs without losing what already ranks?

  • Measurement setupseo-measurement-setupData and measurement

    Can results be measured at all?

  • Content auditseo-content-auditContent and strategy

    Which pages should we keep, improve, merge, refresh, prune or create?

  • Content editingseo-content-editingContent and strategy

    How do we make this one page clearer, deeper and easier to answer from?

  • Positioning and strategyseo-positioning-strategyContent and strategy

    Which topics should we own, and how do we stand apart?

  • Proposal and roadmapseo-proposal-roadmapContent and strategy

    What should we do first, and how do we present it?

  • Automationsseo-automationsAutomation and scale

    How do we stop a deploy from quietly breaking SEO?

  • Mediaseo-mediaTechnical

    Can search engines find and understand our images and video?

  • Programmaticseo-programmaticAutomation and scale

    Can we generate pages from data without making doorway pages?

  • Log analysisseo-log-analysisData and measurement

    What are crawlers actually fetching, and where is crawl budget going?

  • Off-site authorityseo-offsite-authorityAuthority

    How does our authority compare, and how do we earn more of it?

04The method

The Visibility Ladder

Five rungs in the order they depend on each other, climbing to the goal of every site: ranking. A broken lower rung quietly caps everything above it, so you diagnose from the top and fix from the bottom.

The goal is rung 5. Cite is a layer on top, never a replacement.

The layer on top

Cite

Answer and generative engine optimisation

Is a page that can already rank eligible to be cited by AI answers?

The layer on top of the ladder, applied alongside ranking and never instead of it. Self-contained answer blocks, question-shaped headings, consistent entities, genuine attribution and AI crawler access. Citation is never guaranteed; this makes a page eligible.

05By site type

The same ladder, tuned to your kind of site

The orchestrator works out your site type and leans on the checks that matter most for it. Each starter prompt below is read-only: it reports and changes nothing until you ask.

The classic failure
The marketing site is a single-page app that serves crawlers an empty shell.
Weighted highest
Reach, then Read and Cite
Starter prompt, read-only
Use the seo-for-ai-agents skill pack with the saas-marketing profile: audit my marketing site on the served HTML. Check first whether marketing pages and pricing are server-rendered and readable by crawlers, then intent match, comparison pages, and internal architecture. Report only, don't change any code or files yet.
06Install

Install the full pack

Installed as skills, the pack triggers by itself when you describe a problem, and the orchestrator routes the work. Run the commands, or hand your agent the prompt and let it do the install.

Claude Code discovers skills on its own and uses them when a request matches. Clone the repo, then copy the whole skills folder into your personal skills directory (or into .claude/skills/ inside one project to share it with a team).

Then just describe the problem, for example "audit my site's SEO". Keep the skills together: the orchestrator carries references the others rely on.

Full guide on GitHub ↗
Ask your agent to install it
Install the SEO for AI Agents skill pack from https://github.com/manibharij/seo-for-ai-agents: clone it and copy everything in its skills/ folder into ~/.claude/skills/, keeping the folders together. Then list the skills that are now installed.
Or run it yourself: macOS or Linux
git clone https://github.com/manibharij/seo-for-ai-agents.git
mkdir -p ~/.claude/skills && cp -R seo-for-ai-agents/skills/* ~/.claude/skills/
Or run it yourself: Windows PowerShell
git clone https://github.com/manibharij/seo-for-ai-agents.git
$dst = "$env:USERPROFILE\.claude\skills"
New-Item -ItemType Directory -Force $dst | Out-Null
Copy-Item -Recurse -Force ".\seo-for-ai-agents\skills\*" $dst
07How it runs

An audit that remembers, and fixes that are logged

The orchestrator writes a .seo/ folder into your project. Commit it: the next run re-checks past fixes, catches anything a deploy broke, and carries on from where it stopped.

  1. 01AuditA baseline across all five rungs, every finding recorded with a ref, its evidence and the proposed fix. Nothing on the site changes.
  2. 02FixOnly the findings you approve, one commit each, every change logged with a date so its effect can be measured.
  3. 03Re-checkRe-tests past findings after deploys, catches regressions and, where your environment has search data, shows what changed.
your-project /.seo/
  • audit.mdA readable health scorecard
  • state.jsonEvery finding, with its status
  • log.mdDated history, run by run
  • context.mdWhat the business is, labelled by certainty
08Principles

5 rules the whole pack follows

01

It changes nothing until you approve

Every skill audits by default. Fixes are applied only to the findings you name, one commit at a time, and pages that already earn traffic need your explicit say-so.

02

It works things out for itself

You should not need to know SEO or describe your site. The agent reads the codebase and the served pages, infers the context, and only stops for the few calls a person has to make.

03

It checks what is served, not what was edited

Editing a component and saying "meta tags added" proves nothing. Every skill re-fetches the page and confirms the change is in the HTML a crawler actually receives.

04

It tells you what it did and why

The skill instructs the agent. The agent fixes what is safe, explains each change and why it matters, and flags anything that needs your decision.

05

It never fakes trust

No invented authors, credentials, reviews or expertise. Where real trust signals are missing they are flagged as tasks for a person, because AI answer engines are built to discount manufactured authority anyway.

Questions, or using it on something interesting?

Tell me on LinkedIn. Issues and pull requests are welcome on GitHub, where the bar is correctness and restraint over coverage.