Prd V09 Aeo Audit logo

Prd V09 Aeo Audit

Community
mattgierhart
prd-v09-aeo-audit

Audit how AI search engines (ChatGPT, Perplexity, Google AI Overviews, Claude) describe and recommend your product, then propose fixes. Triggers on requests to audit AI search visibility, improve AEO/GEO, check ChatGPT/Perplexity coverage, or when user asks "do we show up in AI search?", "AEO audit", "generative engine optimization", "AI discoverability", "how does ChatGPT describe us?", "Perplexity ranking". Outputs GTM-AEO-* entries and a Coverage Matrix.

Overview

Publishermattgierhart
RepositoryPRD-driven-context-engineering
Skill nameprd-v09-aeo-audit
Stars
179
Forks
11
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by mattgierhart on GitHub. Read the source before you install it.

Installation

Install the Prd V09 Aeo Audit AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git /tmp/PRD-driven-context-engineering
mkdir -p .claude/skills
cp -r /tmp/PRD-driven-context-engineering/plugins/prd-ce/skills/prd-v09-aeo-audit .claude/skills/prd-v09-aeo-audit
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Prd V09 Aeo Audit in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Prd V09 Aeo Audit on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Prd V09 Aeo Audit is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

AEO Audit (AI Search Discoverability)

Position in workflow: v0.9 Launch Channels (ORB) → v0.9 AEO Audit → v0.9 Alternatives Pages, Launch Metrics

Execution Mode

Default is standard. See .claude/rules/08-skill-execution-modes.md for selection logic.

ModeWhat this skill produces
quick5 target queries × 2 AI surfaces (ChatGPT + Perplexity); top 3 gaps with fixes
standard10–15 queries × 3–4 AI surfaces; full Coverage Matrix; ranked fix backlog
deep20–30 queries × all major surfaces; per-surface citation analysis; structured-data audit; before/after re-test plan

What This Does

Tests whether AI search engines surface, recommend, and accurately describe the product when a target customer asks a relevant question. AEO (answer-engine optimization) and GEO (generative-engine optimization) are the post-SEO distribution layer — when ChatGPT/Perplexity/AI Overviews answer a buyer's question, the product either is in the answer or isn't.

This is a diagnostic skill. It produces a gap map and a ranked fix backlog. The fixes are executed by prd-v09-alternatives-pages, content updates, and structured-data work — not by this skill.

How It Works

  1. Build a query set — From the Positioning best-fit characteristics (jobs to be done, triggers, search intent), generate target queries an actual best-fit buyer would type. Mix high-intent ("best X for Y"), comparison ("X vs Y"), and category ("what is X").
  2. Run each query against AI surfaces — At minimum: ChatGPT (free tier — what the median buyer sees), Perplexity, Google AI Overviews. Deep mode adds Claude, Brave Search, Kagi. Save raw responses with timestamps.
  3. Score each result on five dimensions:
    • Mentioned? (yes / no)
    • Position in recommendation list (1st, 2nd, not listed)
    • Description accuracy (matches positioning vs. miscategorized vs. wrong)
    • Competitive frame (which alternatives are listed alongside)
    • Citation sources (which URLs/domains the AI cited to build the answer)
  4. Identify the gap pattern:
    • Absence gaps — product not mentioned at all
    • Category gaps — mentioned in the wrong category (positioning failure)
    • Citation gaps — answer is built from sources the product doesn't appear in (need to be on those sources)
    • Comparison gaps — competitor wins the comparison query because comparison content doesn't exist on your side
  5. Propose ranked fixes — Each fix maps to a specific gap type:
    • Absence → content on best-fit query intent, JSON-LD structured data, citation-source targets
    • Category → positioning content (handoff to Positioning skill)
    • Citation → outreach/contribution to high-citation sources (G2, Reddit, blog posts on cited domains)
    • Comparison → handoff to prd-v09-alternatives-pages

Example

A best-fit buyer types "best CRO tool for early-stage SaaS founders" into ChatGPT. Result:

SurfaceMentioned?PositionAccuracyCitations
ChatGPTNon/an/a5 sources, none ours
PerplexityYes4th of 5"an analytics tool" (wrong category)Sources include our pricing page only
AI OverviewsNon/an/aG2, Reddit r/SaaS, two competitor blog posts

Gaps identified:

  • Absence in ChatGPT — no high-intent landing for this query
  • Category miscoding in Perplexity — we're being summarized as "analytics", not "CRO"
  • Citation gap — we don't appear in G2 or r/SaaS threads about CRO

Ranked fixes:

  1. Publish CRO-anchored guide (prd-v09-alternatives-pages handles competitor variants)
  2. Rewrite product schema (JSON-LD) with the Dunford category claim
  3. Outreach to G2 (claim profile, request reviews) and post a substantive thread in r/SaaS

What You Get Back

  • GTM-AEO-* entries — one per query × surface gap, with the proposed fix and ranking
  • Coverage Matrix (single GTM-* with Type=Audit) — full query × surface × status table
  • Fix backlog — ranked list with handoff target skills

When to Use It

TriggerMode
Pre-launch sanity check (before paid channels activate)quick
Standard launch wave auditstandard
Quarterly retention/competitive intelligence reviewdeep
After major positioning change (re-test)standard
When organic signups stall and paid CAC risesdeep

Do not run before Positioning is complete — without a sharpened category claim, every "miscategorized" result is unfixable.

Consumes

  • GTM-* positioning statement + category claim (from v0.9 Positioning) — Defines what "accurate description" looks like; without this, scoring is opinion
  • CFD-* competitive alternatives (from v0.2) — Source for comparison-intent queries
  • PER-* best-fit characteristics (sharpened by Positioning) — Source for query intent
  • GTM-* channel mix (from v0.9 Launch Channels) — AEO is a channel; surfaces tested should match best-fit channel use

Produces

  • GTM-AEO-* entries with Type=AEO-Recommendation, one per gap-fix pair
  • GTM-* with Type=Audit — the Coverage Matrix
  • Fix backlog — handoff list referencing prd-v09-alternatives-pages, Positioning re-run, content production tickets

Confidence guidance (P4): AEO scoring is 3/5 minimum because it's based on observed AI responses, not opinion. Quick mode may produce 2/5 outputs (limited sampling) and must tag them.

Output Template

GTM-AEO-XXX: [Gap Title]
Type: AEO-Recommendation
Status: Open
Priority: [High | Medium | Low]
Owner: [Person / role]

Query: "[the exact query]"
Surface: [ChatGPT | Perplexity | AI Overviews | Claude | Brave | Kagi]
Date observed: [YYYY-MM-DD]

Result summary:
  Mentioned? [yes | no]
  Position: [#]
  Accuracy: [matches positioning | miscategorized | wrong]
  Competitive frame: [list of alternatives shown]
  Citation sources: [URLs/domains used]

Gap type: [Absence | Category | Citation | Comparison]

Proposed fix:
  - [Specific action 1]
  - [Specific action 2]

Handoff: [Target skill or owner — e.g., prd-v09-alternatives-pages, content team]

Re-test: [Date to verify fix]

Linked IDs: GTM-YYY (positioning), CFD-ZZZ (competitor), PER-AAA (best-fit)
GTM-XXX: AEO Coverage Matrix
Type: Audit
Status: Snapshot — [YYYY-MM-DD]

| Query | ChatGPT | Perplexity | AI Overviews | Gap Type |
|-------|---------|------------|--------------|----------|
| ... | ✓ #2 | ✗ | ✗ | Absence (2 surfaces) |
| ... | ✗ | ✓ #4 (miscat) | ✗ | Category + Absence |

Total queries: X
Coverage rate: Y% (mentioned in any surface)
Accurate-description rate: Z% (mentioned AND correctly described)

Linked IDs: All GTM-AEO-* entries above

Anti-Patterns

PatternSignalFix
Vanity queriesAuditing "best [exact product name]" — you'll always win that oneUse buyer-intent queries the buyer would actually type
No timestamp / no re-testResults saved but never re-testedAI surfaces change; re-test every fix within 2 weeks
Surface monocultureOnly testing ChatGPTEach surface has different model/data; minimum 3 surfaces
Fix all gaps equally20 gaps, parallel work, no rankingRank by query buyer-intent strength × surface adoption
Treating absence as failure"We're not in any results — game over"Absence is often the easiest fix (publish high-intent content); category miscoding is the harder one
Skipping citation analysisKnowing you're absent but not whyCitation sources reveal where you need to appear

Quality Gates

Before proceeding to fix execution:

  • At least 5 queries tested (quick) / 10–15 (standard) / 20+ (deep)
  • At least 3 AI surfaces sampled (standard+)
  • Every gap has a typed classification (Absence / Category / Citation / Comparison)
  • Every gap has a proposed fix with a handoff target
  • Coverage Matrix exists and is dated
  • Fix backlog is ranked

Downstream Connections

ConsumerWhat it usesExample
Alternatives PagesComparison-gap fixes become alternatives-page targets"X vs us" comparison gap → SCR-ALT- page
Positioning (re-run)Category-coding gaps signal positioning weaknessRecurring miscategorization → re-run prd-v09-positioning-dunford
Launch MetricsCoverage Matrix becomes a KPI baselineKPI-AEO-coverage%
v1.0 Continuous DiscoveryRecurring gap patterns inform discovery questions"Users keep finding competitor X — why?"

Detailed References

  • Sanity team's seo-aeo-best-practices skill (VoltAgent index)
  • Princeton AI Search benchmark studies
  • (No bundled references/ — AI surfaces change too quickly to canonize)

Frequently asked questions

What does the Prd V09 Aeo Audit AI skill do?

Audit how AI search engines (ChatGPT, Perplexity, Google AI Overviews, Claude) describe and recommend your product, then propose fixes. Triggers on requests to audit AI search visibility, improve AEO/GEO, check ChatGPT/Perplexity coverage, or when user asks "do we show up in AI search?", "AEO audit", "generative engine optimization", "AI discoverability", "how does ChatGPT describe us?", "Perplexity ranking". Outputs GTM-AEO-* entries and a Coverage Matrix.

Why use Prd V09 Aeo Audit on TypingMind?

Because you install it once and use it with any model. Prd V09 Aeo Audit is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Prd V09 Aeo Audit in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/plugins/prd-ce/skills/prd-v09-aeo-audit. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Prd V09 Aeo Audit?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Prd V09 Aeo Audit?

As many as you like. As long as a model supports skills, you can use Prd V09 Aeo Audit with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Prd V09 Aeo Audit AI skill free?

Yes. It is published on GitHub by mattgierhart under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇