Geo Fundamentals
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
Audit how AI search engines (ChatGPT, Perplexity, Google AI Overviews, Claude) describe and recommend your product, then propose fixes.
$ npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mattgierhart/PRD-driven-context-engineering prd-v09-aeo-audit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/prd-v09-aeo-audit .claude/skills/prd-v09-aeo-audit && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "prd-v09-aeo-audit" agent skill from https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-audit into .claude/skills/prd-v09-aeo-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prd-v09-aeo-audit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-auditType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mattgierhart/PRD-driven-context-engineering prd-v09-aeo-audit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/prd-v09-aeo-audit .agents/skills/prd-v09-aeo-audit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "prd-v09-aeo-audit" agent skill from https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-audit into .agents/skills/prd-v09-aeo-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prd-v09-aeo-audit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mattgierhart/PRD-driven-context-engineering prd-v09-aeo-audit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/prd-v09-aeo-audit .cursor/skills/prd-v09-aeo-audit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "prd-v09-aeo-audit" agent skill from https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-audit into .cursor/skills/prd-v09-aeo-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prd-v09-aeo-audit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mattgierhart/PRD-driven-context-engineering.git --path .claude/skills/prd-v09-aeo-audit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mattgierhart/PRD-driven-context-engineering prd-v09-aeo-audit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/prd-v09-aeo-audit .gemini/skills/prd-v09-aeo-audit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "prd-v09-aeo-audit" agent skill from https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-audit into .gemini/skills/prd-v09-aeo-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prd-v09-aeo-audit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mattgierhart/PRD-driven-context-engineering prd-v09-aeo-auditInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/prd-v09-aeo-audit .github/skills/prd-v09-aeo-audit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "prd-v09-aeo-audit" agent skill from https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-audit into .github/skills/prd-v09-aeo-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prd-v09-aeo-audit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mattgierhart/PRD-driven-context-engineering prd-v09-aeo-audit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mattgierhart/PRD-driven-context-engineering.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/prd-v09-aeo-audit .opencode/skills/prd-v09-aeo-audit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "prd-v09-aeo-audit" agent skill from https://github.com/mattgierhart/PRD-driven-context-engineering/tree/main/.claude/skills/prd-v09-aeo-audit into .opencode/skills/prd-v09-aeo-audit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prd-v09-aeo-audit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
prd-v09-aeo-auditAudit how AI search engines (ChatGPT, Perplexity, Google AI Overviews, Claude) describe and recommend your product, then propose fixes.
Prd V09 Aeo Audit is an agent skill from mattgierhart/PRD-driven-context-engineering. 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.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Marketing & SEO, covering AI search optimization. It works with OpenAI and Perplexity. The repository describes itself as: PRD-Led Context Engineering — Memory as Infrastructure. An ontology layer for product teams building products that solve real problems — with AI agents that remember. Gated PRD… The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 30ed1b0. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditGlobGrepWebSearchWebFetchFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
claudeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Prd V09 Aeo Audit loads about 2.4k tokens when it runs. Until then it costs about 120 tokens; SKILL.md has 956 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mattgierhart/PRD-driven-context-engineering at commit 30ed1b0, republished under its MIT licence (© mattgierhart). 956 words, ~2,444 tokens.
.claude/skills/prd-v09-aeo-audit/SKILL.md (or your agent's skills folder).Position in workflow: v0.9 Launch Channels (ORB) → v0.9 AEO Audit → v0.9 Alternatives Pages, Launch Metrics
Default is standard. See .claude/rules/08-skill-execution-modes.md for selection logic.
| Mode | What this skill produces |
|---|---|
| quick | 5 target queries × 2 AI surfaces (ChatGPT + Perplexity); top 3 gaps with fixes |
| standard | 10–15 queries × 3–4 AI surfaces; full Coverage Matrix; ranked fix backlog |
| deep | 20–30 queries × all major surfaces; per-surface citation analysis; structured-data audit; before/after re-test plan |
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.
A best-fit buyer types "best CRO tool for early-stage SaaS founders" into ChatGPT. Result:
| Surface | Mentioned? | Position | Accuracy | Citations |
|---|---|---|---|---|
| ChatGPT | No | n/a | n/a | 5 sources, none ours |
| Perplexity | Yes | 4th of 5 | "an analytics tool" (wrong category) | Sources include our pricing page only |
| AI Overviews | No | n/a | n/a | G2, Reddit r/SaaS, two competitor blog posts |
Gaps identified:
Ranked fixes:
| Trigger | Mode |
|---|---|
| Pre-launch sanity check (before paid channels activate) | quick |
| Standard launch wave audit | standard |
| Quarterly retention/competitive intelligence review | deep |
| After major positioning change (re-test) | standard |
| When organic signups stall and paid CAC rises | deep |
Do not run before Positioning is complete — without a sharpened category claim, every "miscategorized" result is unfixable.
Type=AEO-Recommendation, one per gap-fix pairType=Audit — the Coverage MatrixConfidence 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.
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| Pattern | Signal | Fix |
|---|---|---|
| Vanity queries | Auditing "best [exact product name]" — you'll always win that one | Use buyer-intent queries the buyer would actually type |
| No timestamp / no re-test | Results saved but never re-tested | AI surfaces change; re-test every fix within 2 weeks |
| Surface monoculture | Only testing ChatGPT | Each surface has different model/data; minimum 3 surfaces |
| Fix all gaps equally | 20 gaps, parallel work, no ranking | Rank 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 analysis | Knowing you're absent but not why | Citation sources reveal where you need to appear |
Before proceeding to fix execution:
| Consumer | What it uses | Example |
|---|---|---|
| Alternatives Pages | Comparison-gap fixes become alternatives-page targets | "X vs us" comparison gap → SCR-ALT- page |
| Positioning (re-run) | Category-coding gaps signal positioning weakness | Recurring miscategorization → re-run prd-v09-positioning-dunford |
| Launch Metrics | Coverage Matrix becomes a KPI baseline | KPI-AEO-coverage% |
| v1.0 Continuous Discovery | Recurring gap patterns inform discovery questions | "Users keep finding competitor X — why?" |
seo-aeo-best-practices skill (VoltAgent index)references/ — AI surfaces change too quickly to canonize)© mattgierhart, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/prd-v09-aeo-audit of mattgierhart/PRD-driven-context-engineering.
Open the folder on GitHubat commit 30ed1b0
Prd V09 Aeo Audit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Prd V09 Aeo Audit this skillmattgierhart/PRD-driven-context-engineering | 180 | — | ~2.4k | Automated safety check: Pass | MIT | |
| Geo Fundamentalswasp-lang/wasp | 19k | 9 repos | ~861 | Automated safety check: Pass | MIT | |
| SEO GeoReScienceLab/opc-skills | 1.8k | 4 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| GEO-First SEO Audit Toolzubair-trabzada/geo-seo-claude | 11k | — | ~2.8k | Automated safety check: Notes | MIT | |
| Qiaomu SEOjoeseesun/qiaomu-seo | 441 | — | ~2.6k | Automated safety check: Pass | MIT | |
| Fire Your SEO Agencyleopard627/fire-your-seo-agency | 711 | — | ~1.1k | Automated safety check: Pass | MIT |
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
ReScienceLab/opc-skills
SEO & GEO (Generative Engine Optimization) for websites. An agent skill from ReScienceLab/opc-skills.
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
joeseesun/qiaomu-seo
Audit, diagnose, research, plan, implement, experiment on, and verify website SEO across Google, Bing, and AI-search surfaces.
leopard627/fire-your-seo-agency
SEO·AEO·GEO·LLMO·NEO(네이버) 다섯 레인을 진단하고 직접 구현하며, 인용되는 콘텐츠를 계속 생산하는 서브 블로그·콘텐츠 운영 파이프라인까지 세팅하는 스킬.
Yuzzyuk/marketing-os
A complete marketing department in one skill. An agent skill from Yuzzyuk/marketing-os.
mattgierhart/PRD-driven-context-engineering
Validates gate criteria before PRD lifecycle advancement by delegating to the readiness scoring pipeline (scripts/readiness.py).
mattgierhart/PRD-driven-context-engineering
Extracts durable insights from temp/ files to SoT during EPIC Phase E.
mattgierhart/PRD-driven-context-engineering
Validates and registers new SoT IDs with cross-reference integrity.
mattgierhart/PRD-driven-context-engineering
Creates new Source of Truth (SoT) files when existing templates don't fit your needs.
mattgierhart/PRD-driven-context-engineering
Transform vague product ideas into evidence-anchored problem statements for PRD v0.1 Spark.
mattgierhart/PRD-driven-context-engineering
Transform validated pain points into articulated user value statements for PRD v0.1 Spark.
Works with
Categories
Audit how AI search engines (ChatGPT, Perplexity, Google AI Overviews, Claude) describe and recommend your product, then propose fixes. Prd V09 Aeo Audit is an agent skill from mattgierhart/PRD-driven-context-engineering. Audit how AI search engines (ChatGPT, Perplexity, Google AI Overviews, Claude) describe and recommend your product, then propose fixes.
Prd V09 Aeo Audit fits situations like: requests to audit AI search visibility; improve AEO/GEO; check ChatGPT/Perplexity coverage; user asks do we show up in AI search?.
Run `npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a claude-code`. Or copy the skill folder (.claude/skills/prd-v09-aeo-audit in mattgierhart/PRD-driven-context-engineering) into .claude/skills/prd-v09-aeo-audit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a codex`. Or copy the skill folder (.claude/skills/prd-v09-aeo-audit in mattgierhart/PRD-driven-context-engineering) into .agents/skills/prd-v09-aeo-audit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mattgierhart/PRD-driven-context-engineering --skill prd-v09-aeo-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/prd-v09-aeo-audit, .gemini/skills/prd-v09-aeo-audit, .github/skills/prd-v09-aeo-audit and .opencode/skills/prd-v09-aeo-audit in your project.
Going by SKILL.md and its folder, Prd V09 Aeo Audit needs the command-line tools its instructions call (claude). Its frontmatter pre-approves these tools: Read, Write, Edit, Glob, Grep, WebSearch, WebFetch.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Prd V09 Aeo Audit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Prd V09 Aeo Audit: Geo Fundamentals (wasp-lang/wasp, 19k stars), SEO Geo (ReScienceLab/opc-skills, 1.8k stars), GEO-First SEO Audit Tool (zubair-trabzada/geo-seo-claude, 11k stars) and Qiaomu SEO (joeseesun/qiaomu-seo, 441 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mattgierhart (a GitHub user) maintains it in mattgierhart/PRD-driven-context-engineering, which has 180 GitHub stars. The repository holds 45 skills in this directory. The repository was last updated on August 31, 2026.
Source: mattgierhart/PRD-driven-context-engineering on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.