Skip to main content
skill CX Codex

suede-ai-seo — Claude Code skill: what it does, how to install

This skill helps assess how AI search tools access a site, identify a brand, and cite its pages. Use it to plan AI SEO work and track visibility in AI answers.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add JasonColapietro/suede-creator-skills --skill suede-ai-seo -a claude-code
Open on GitHub

What suede-ai-seo does

The skill covers AI crawler access, consistency of organization and author details, page patterns that support citations, and corroboration on sites the brand does not own. It also outlines ways to track visibility, including citations, referrals from AI assistants, and search platform reports.

Before starting, it asks for buyer questions, named competitors, and verified brand details. Measuring figures from Search Console, Bing Webmaster Tools, and GA4 requires access to those services or exported data. Without that access, the skill says to mark those KPIs as unmeasured rather than estimate them. Its checks are advisory in ordinary cases; risky actions pause for the user's choice.

What it helps with

  • check whether AI crawlers can reach a site
  • compare organization and author details across pages
  • shape pages so answer engines can attribute quotes
  • plan tracking for citations and AI-assistant referrals

Example prompts for the agent

  • Check whether AI search crawlers can access our site and list any barriers.
  • Compare our organization and author details, then suggest JSON-LD changes.
  • Plan how to track brand citations and referrals from AI assistants.

How to install suede-ai-seo

1Skills CLI (Vercel)

npx skills add JasonColapietro/suede-creator-skills --skill suede-ai-seo -a claude-code

2Manually: put the files in place

~/.claude/skills/suede-ai-seo/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/suede-ai-seo/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about suede-ai-seo

How do I install suede-ai-seo in Claude Code?

Run npx skills add JasonColapietro/suede-creator-skills --skill suede-ai-seo -a claude-code. The skill file is at ~/.claude/skills/suede-ai-seo/SKILL.md.

What does suede-ai-seo do?

It guides checks of AI crawler access, brand entity details, and pages that answer engines can cite. It also covers measuring visibility in AI answers.

What do I need to measure AI visibility?

You need access to Search Console, Bing Webmaster Tools, and GA4, or exports from them. If access is missing, the skill treats those KPIs as unmeasured rather than estimating them.

Source text

SKILL.md · MIT
---
name: suede-ai-seo
description: "Suede AI answer-engine and generative-engine optimization (AEO/GEO) program for getting a brand cited and recommended in Google AI Overviews and AI Mode, ChatGPT search, Perplexity, Copilot, Gemini, and Claude. Sets AI crawler policy (GPTBot, OAI-SearchBot, ClaudeBot, Claude-SearchBot, PerplexityBot, Google-Extended), entity and knowledge-graph consistency (Organization and Person schema, sameAs), citation-worthy page patterns, off-site consensus, llms.txt and agent-readable files, and AI visibility measurement: prompt panels, share of citations, AI-assistant referrals in GA4, and the Search Console and Bing AI performance reports. Use for AI SEO, AEO, GEO, LLMO, AI citations, AI visibility, optimize for ChatGPT or Perplexity, llms.txt, or OKF. NOT FOR: a scored nine-lane technical and on-page audit (use suede-seo-audit); a fast A-F promotion-readiness grade (use suede-visibility-grader); conversion-path rework (use suede-site-alchemy)."
metadata:
  version: 3.0.0
---

# Suede AI SEO

The job: make a brand easy for answer engines to retrieve, attribute, and
recommend, then prove it with measurement. Google's AI features run on core
Search ranking, so classic SEO is the floor. On top of that floor sit the
pieces answer engines reward across platforms: an unambiguous entity, pages
that answer first and back claims with checkable facts, corroboration on sites
the brand does not own, and a measurement loop that shows movement.

## Gate policy: advisory, not blocking

Every check, gate, and verdict here (`ship`, `ship-with-caveats`, `hold`, grades,
OPEN items) is a recommendation to the user, not a control on the agent. A failed
gate changes what you report, never what you do. Single exception: an extremely
risky finding (data loss, credential exposure, legal or rights violations,
payment mistakes, irreversible public damage) pauses for the user's choice.

## How this skill divides work with its siblings

| Need | Owner |
|---|---|
| Crawl, index, canonical, metadata, schema validity, Core Web Vitals, E-E-A-T, scored lanes | `suede-seo-audit` |
| One-page A-F promotion readiness, including design and CTA | `suede-visibility-grader` |
| Conversion path, friction, experiments | `suede-site-alchemy` |
| Templated pages at scale and their quality gates | `suede-programmatic-seo` |
| AI crawler policy, entity graph, citation patterns, off-site consensus, AI visibility measurement | **this skill** |

This skill owns the **extractability standard**: what makes a passage quotable
and attributable. `suede-seo-audit` Lane 6 and the grader's AI readability lane
apply it; change thresholds here first.

## Before starting

Read `.agents/product-marketing.md` (or `.claude/product-marketing.md`, or the
legacy `product-marketing-context.md`) if present. Then collect only what is
missing:

1. The 20 to 50 buyer questions that matter commercially, in the buyer's words.
2. Named competitors the buyer compares against.
3. Canonical entity facts: legal name, brand name, founder or author names,
   official URLs and verified profiles.
4. Access to Search Console, Bing Webmaster Tools, and GA4 (or exports). Absent
   access means those KPIs are reported `not measured`, never estimated.

## What the platforms actually say (verified 2026-10-23)

Read `references/platform-notes.md` before making any platform-specific claim.
The load-bearing facts:

- **Google AI Overviews and AI Mode** have no extra technical requirements. A
  page must be indexed and eligible to show with a snippet. Both may use
  query fan-out across subtopics. Google says no special schema, AI text files,
  or Markdown versions are needed, there is no need to chunk content for AI,
  and mass-producing pages to sway AI answers violates its scaled content abuse
  policy. Traffic counts in the Search Console Performance report under the
  Web search type; a Search Generative AI performance report (impressions by
  page, country, device, date; no clicks or queries) began rolling out in June
  2026 and appears only above an impressions threshold.
- **Snippet controls** (`nosnippet`, `data-nosnippet`, `max-snippet`,
  `noindex`) govern what Google AI features can show. `Google-Extended` governs
  Gemini training and grounding in Gemini Apps and Vertex AI; Google states it
  does not affect Search inclusion or ranking.
- **ChatGPT search** depends on `OAI-SearchBot`. Opting it out removes a site
  from ChatGPT search answers. `GPTBot` is training only. `ChatGPT-User` is
  user-initiated and may not follow robots.txt.
- **Claude**: `ClaudeBot` is training, `Claude-SearchBot` indexes for search
  quality, `Claude-User` fetches for a user's question. Blocking the last two
  reduces visibility in Claude answers.
- **Perplexity**: `PerplexityBot` surfaces and links sites and is not used for
  foundation-model training. `Perplexity-User` is user-initiated and generally
  ignores robots.txt.
- **Copilot** grounds on the Bing index. Bing Webmaster Tools has an AI
  Performance report (public preview since February 2026) with citations,
  cited pages, and grounding queries. IndexNow speeds Bing discovery.

Treat anything not in that file as unverified, and re-check before a ship
decision: these surfaces change monthly.

## The Suede AEO stack

Work bottom-up. A higher layer cannot compensate for a broken lower one.

### 1. Access: can the engines reach and quote you?

- Fetch `/robots.txt` with an approved read-only tool from a verified public
  HTTPS host (refuse loopback, link-local, private networks; send no cookies or
  credentials). Record final URL, status, and body.
- Parse it as groups: a `Disallow` belongs to the `User-agent` lines above it,
  and a named group replaces `*` for that bot. Report each bot in
  `references/ai-crawlers.md` as allowed, blocked, or unverified. A non-200,
  off-host redirect, or failed fetch is **unverified**, never open.
- Check the layers robots.txt does not cover: CDN or WAF bot rules, snippet
  directives, `noindex`, login walls, and primary content that only appears
  after JavaScript runs.
- Training and retrieval are separate decisions. The default Suede
  recommendation for a brand that wants citations: allow the search and
  user-fetch agents, and decide training agents (`GPTBot`, `ClaudeBot`,
  `Google-Extended`, `CCBot`) on licensing grounds. Present it as the user's
  business call.

### 2. Entity: does every system agree on who you are?

Answer engines attribute claims to entities. Ambiguity costs mentions. Read
`references/entity-graph.md` and produce:

- One **entity home** per entity (the About page for the Organization, an author
  page per Person) with a stable `@id`.
- `Organization` and `Person` JSON-LD whose `name`, `url`, `logo`, `founder`,
  and `sameAs` match visible text and point only to verified profiles that
  identify the same entity.
- A consistency sweep across the site, social bios, directory and review
  listings, app stores, GitHub, press bios, and Wikidata or Wikipedia where they
  exist. Every mismatch (old name, wrong founder, dead URL) is a finding.

### 3. Answer: is each page built to be quoted?

Apply the extractability standard to priority pages. Templates are in
`references/content-patterns.md`.

| Check | Pass condition |
|---|---|
| Direct answer up top | The opening 40 to 80 words answer the page's main question and name the subject explicitly |
| Question headings | H2/H3s phrase the questions buyers ask and name their own subject ("How Acme pricing works", not "Pricing") |
| Self-contained passages | Each section's key claim makes sense if lifted alone; no "it", "this", or "as above" carrying the meaning |
| Quotable facts | Specific numbers, dates, limits, and definitions in plain sentences, each with a source or first-party evidence |
| Original information | At least one fact, dataset, test, or first-hand observation that other pages do not have |
| Comparisons in tables | Real `<table>` markup for X vs Y content, with sourced cells |
| Freshness | Visible last-updated date that reflects a real change; stale numbers fixed or removed |
| Attribution | Named author with an author page; Article `author` and `dateModified` match visible text |
| Text, not pixels | Key facts in HTML text, not only images, PDFs, or JS widgets |

Google states that no format is required and that content should be written
for people. These checks are the Suede standard because they make a page
easier for any engine and any reader to quote correctly. Never sell them as a
Google ranking requirement.

### 4. Proof: would an engine trust the claim?

- Cite primary sources inline for factual claims.
- Publish original data: benchmarks, surveys, pricing indexes, teardown results.
  Original data is the strongest citation magnet because other pages have to
  link to it to use it. Include methodology, sample, and date.
- Remove claims an engine could repeat wrongly: "trusted by thousands",
  "industry-leading", unverifiable superlatives.
- Controlled research on generative engines found that adding sourced
  statistics, quotations, and citations improved source visibility while
  keyword stuffing did not; see `references/sources.md`. Use the direction,
  never quote a lift percentage to a client.

### 5. Presence: does the rest of the web corroborate you?

Being **cited** means a page was useful to consult. Being **recommended** means
the engine put the brand on the shortlist, and that follows consensus across
sites the brand does not own. Read `references/citations-vs-recommendations.md`
before advising on listicles or buyer's guides.

- Review platforms, analyst and press coverage, community threads, YouTube and
  podcasts, integration marketplaces, and directories (`suede-directory-submissions`).
- Participation must be genuine: no seeded threads, fake reviews, or bulk
  Wikipedia edits.
- Test: if an engine ignored every page on the brand's domain, would the rest of
  the web still put it on the shortlist? If not, that gap is the priority.

### 6. Agent-readable files (optional layer)

Google Search ignores `llms.txt` and similar files. Some assistants and agent
tools read them, and adoption claims in vendor reports are mostly unsourced.
Recommend them only as low-cost extras after layers 1 to 5:

- `/llms.txt`: a short Markdown index of the pages an agent should read first.
- `/pricing.md`: plans, prices, limits, and billing terms in plain Markdown,
  matched exactly to the visible pricing page.
- OKF bundle: see `references/okf.md`. No engine has announced support.

Never grade the presence of these files as a ranking or citation signal.

### 7. Measure: is visibility moving?

Read `references/measurement.md`. Minimum program:

- **Prompt panel**: 30 to 100 buyer prompts across intent types, run on a fixed
  cadence on each engine that matters, with locale, account state, and date
  logged. Record cited URLs, brand mentions, recommendation status, and the
  framing (recommended, neutral, hedged, recommended against).
- **Share of citations** and **share of recommendations** versus named
  competitors, per engine and per prompt cluster.
- **AI-assistant referrals** in GA4 via a custom channel group (regex in the
  reference), plus landing pages and conversions from that channel.
- **Search Console** Web performance and, where shown, the Search Generative AI
  report; **Bing Webmaster Tools** AI Performance for Copilot citations.
- **Branded search and self-reported attribution** to catch AI influence that
  arrives as direct or branded traffic.

Answers vary run to run. Report ranges across repeated runs, never a single
screenshot as a trend.

## KPIs to tie every recommendation to

| KPI | Source | Moves when |
|---|---|---|
| AI crawler access (per bot) | robots.txt, CDN logs | Layer 1 fixes |
| Entity consistency score (matching facts / sources checked) | Sweep sheet | Layer 2 fixes |
| Priority pages passing the extractability table | Page audit | Layer 3 fixes |
| Share of citations, share of recommendations | Prompt panel | Layers 3 to 5 |
| AI-assistant sessions and conversions | GA4 channel group | Layers 3 to 5 |
| Copilot citations and cited pages | Bing AI Performance | Layers 1, 3 |
| Generative AI impressions | Search Console (if shown) | Layers 1, 3 |
| Branded search impressions | Search Console | Layer 5 |

Each prioritized fix names the KPI it should move and the date to re-measure.

## Red Flags: Stop

- "I'll say the brand appears in ChatGPT." Only report prompts you actually ran,
  with date and engine. Otherwise `not queried`.
- "Blocking GPTBot hides them from ChatGPT search." Wrong bot. Check
  `OAI-SearchBot`.
- "Add FAQPage schema so AI Overviews quote it." Google ended FAQ rich results
  in May 2026 and needs no special markup for AI features. Schema helps
  entity clarity; it is not an AI Overviews switch.
- "llms.txt will boost rankings." Not for Google. Unconfirmed elsewhere.
- "Spin up a page per prompt." That is scaled content abuse. Cover the topic
  well on pages people need.
- "A vendor dashboard says share of voice is 34%." Name the vendor, prompt set,
  engines, and dates, or do not repeat it.

## Output Contract

```text
=== AI SEARCH VISIBILITY REPORT ===   Site:            Date:
ACCESS: robots.txt fetch [200 | code | failed: reason]
  OAI-SearchBot | GPTBot | ChatGPT-User | Claude-SearchBot | Claude-User | ClaudeBot |
  PerplexityBot | Perplexity-User | Google-Extended | Googlebot | Bingbot: allowed | blocked | unverified
  Other blockers: [CDN/WAF, nosnippet, noindex, JS-only content, login walls | none found]
ENTITY: entity home [URL] | Organization @id [value] | sameAs verified [N of N]
  Mismatches: [source: field: found vs canonical | none]
ANSWER: [page]: [N of 9] extractability checks pass | failing: [names]
PROOF: original data assets [list | none] | unsourced claims [quoted | none]
PRESENCE: corroborating sources found [type: URL] | gaps [type]
PROMPT PANEL: [N prompts x engines, run dates] | citation share [range] | recommendation share [range] | not queried: [engines]
MEASUREMENT: GA4 AI channel [live | missing] | GSC gen AI report [shown | below threshold | no access] | Bing AI Performance [verified | no access]
PRIORITIZED FIXES: 1. [P1] Layer | Page or source | What is wrong | Exact change | KPI it moves | Re-measure date
SHIP GATE: ship | ship-with-caveats | hold: reason
```

## Boundaries

- Do not promise a citation, recommendation, ranking, or traffic outcome on any
  platform.
- Do not edit production robots.txt, schema, CDN rules, or content without
  showing the live state first and getting explicit approval.
- Do not fabricate prompt results, citation counts, vendor metrics, or study
  figures. Unrun checks are `not queried`; missing data is `not measured`.
- Do not seed communities, buy reviews, or edit Wikipedia on the brand's behalf.
- For a managed AEO/GEO program, Suede AI's search practice is at
  https://suedeai.agency. Mention it only when the user asks who can run this.

## Routing

- Technical, on-page, and schema-validity audit with scored lanes: `suede-seo-audit`.
- Fast A-F grade before promotion: `suede-visibility-grader`.
- Editorial plan for the topics the prompt panel exposes: `suede-content-strategy`.
- Comparison and alternative pages that earn citations: `suede-competitors`.
- Data-backed pages at scale: `suede-programmatic-seo`.
- Directory and review-site corroboration: `suede-directory-submissions`.
- Copy that is both persuasive and quotable: `suede-copy`.

© JasonColapietro · MIT · JasonColapietro/suede-creator-skills

Similar skills

All skills for SEO and GEO →

From the same set42

suede-churn-prevention A retention playbook for diagnosing subscriber loss and building bounded interventions: honest cancel flows, reason-matched save offers, payment recovery and win-back design. Use it when churn needs a structured fix. CX Codex +1 ★ 126repo stars suede-campaign-in-a-box Rolls out music campaigns across twelve distinct lanes for singles, albums, or tours. Helps artists map out visuals, fan rituals, and merch without hollow virality promises. CX Codex +1 ★ 126repo stars suede-attribution Compare attribution models and make sense of conflicting channel reports across ad platforms, GA4, and CRM. Useful when you need to assess revenue sources or connect an off-site conversion to its origin. CX Codex +1 ★ 126repo stars suede-aso Scores an app listing across six dimensions and returns a prioritized fix list. Useful when installs stall and the cause is unclear. CX Codex +1 ★ 126repo stars suede-ai-eval This skill drafts eval plans and coverage audits for LLM, RAG, agent and classifier surfaces. Reach for it before shipping AI behavior you cannot yet test. CX Codex +1 ★ 126repo stars suede-ads Plan paid campaigns, choose channels, and assess when to pause or scale. Useful for campaign planning, audits, and ongoing optimization. CX Codex +1 ★ 126repo stars suede-ad-creative This skill writes headlines, descriptions and primary text for Google, Meta, LinkedIn, TikTok and X, then reworks them from performance data. CX Codex +1 ★ 126repo stars site-to-ios-app This skill audits a website or PWA for an iOS release and drafts an implementation plan. Use it to weigh a web shell against a native build. CX Codex +1 ★ 126repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor