本文へ移動
cccskills
無料GitHub で公開

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.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md9.6 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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)

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Validates gate criteria before PRD lifecycle advancement by delegating to the readiness scoring pipeline (scripts/readiness.py). Returns a graduated PASS / WARN / BLOCK verdict with top blockers and their causal chain. Triggers before advancing from v0.X to v0.Y or explicit `/ghm-gate-check`.

日本語の概要は準備中です。原文の説明を表示しています。

mattgierhart/PRD-driven-context-engineering1812026年8月31日 更新

Extracts durable insights from temp/ files to SoT during EPIC Phase E. Triggers at EPIC completion or explicit `/ghm-harvest` invocation. Outputs new SoT entries and archive manifest.

日本語の概要は準備中です。原文の説明を表示しています。

mattgierhart/PRD-driven-context-engineering1812026年8月31日 更新

Validates and registers new SoT IDs with cross-reference integrity. Triggers when creating BR-XXX, UJ-XXX, API-XXX, or CFD-XXX entries. Outputs formatted SoT entry with validated cross-references.

日本語の概要は準備中です。原文の説明を表示しています。

mattgierhart/PRD-driven-context-engineering1812026年8月31日 更新

Install the PRD-Driven Context Engineering methodology into a fresh OR existing repository — the subscription-native alternative to forking the whole repo. Runs an interactive wizard that seeds the framework (.claude/ hooks, skills, agents, rules, scripts) without clobbering product content. Triggers on "install the methodology", "adopt this into my repo", "self-install", "set up PRD lifecycle here", "onboard existing project". Outputs an installed framework + a verification report.

日本語の概要は準備中です。原文の説明を表示しています。

mattgierhart/PRD-driven-context-engineering1812026年8月31日 更新

Creates new Source of Truth (SoT) files when existing templates don't fit your needs. Triggers on requests to create a new SoT file, add a new artifact type, or when user says "I need to track [X] but there's no SoT for it", "create SoT", "new source of truth". Outputs a properly structured SoT.*.md file with ID prefix, frontmatter, and update protocol.

日本語の概要は準備中です。原文の説明を表示しています。

mattgierhart/PRD-driven-context-engineering1812026年8月31日 更新

Synchronizes README.md Command Center with current project state. Triggers on gate changes, EPIC status changes, or explicit `/ghm-status-sync` invocation. Outputs updated README.md dashboard with current lifecycle stage, blockers, and metrics.

日本語の概要は準備中です。原文の説明を表示しています。

mattgierhart/PRD-driven-context-engineering1812026年8月31日 更新

mattgierhart のスキルをすべて見る

このスキルの問題を報告する