aeo-schema
Skill13 starsChanged 6 months agoMITView on GitHub
Analyze web pages and generate structured data (JSON-LD) optimized for AI citation. Fetches a page, analyzes its content structure, checks existing schema markup, and generates optimized JSON-LD that helps Gemini 3 Flash and other AI models identify and cite the content. Includes templates for Article, FAQ, HowTo, Product, LocalBusiness, and BreadcrumbList. SKILL.md-only skill — no script, the agent follows the methodology. Use when a user wants to: add or improve structured data on a page, optimize schema for AI Overviews, generate JSON-LD for their content, audit existing schema markup, or implement an aeo-optimize recommendation that calls for new structured data.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- KingForm242/claude-aeotheir own version, first seen Jul 12, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- KingForm242/claude-aeo★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository22 other files it gives its agents.
- aeo-ai-overview-simulatorSkill
- aeo-analytics-freeSkill
- aeo-baselineSkill
- aeo-cannibalization-detectorSkill
- aeo-citation-gap-finderSkill
- aeo-competitor-monitorSkill
- aeo-content-freeSkill
- aeo-entity-extractorSkill
- aeo-freshness-decay-trackerSkill
- aeo-grounding-query-mapperSkill
- aeo-initSkill
- aeo-multi-prompt-strategySkill
- aeo-optimizeSkill
- aeo-pack-ai-toolsSkill
- aeo-pack-b2b-saasSkill
- aeo-pack-local-servicesSkill
- aeo-prompt-frequency-analyzerSkill
- aeo-prompt-question-finderSkill
- aeo-prompt-research-freeSkill
- aeo-reportSkill
- aeo-source-authority-profilerSkill
- aeo-trackSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
13 rules. About 0 are common, 10 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
When Gemini 3 Flash generates AI Overviews, it needs to quickly identify:
- Distinctive: line 38
No API keys required.
- Very specific: line 49
Use web_fetch on the target URL.
- Distinctive: line 65
If schema already exists:
- Very specific: line 92
Use templates from references/schema-templates.md and populate with actual page data.
- Distinctive: line 132
Before delivering the JSON-LD:
- Distinctive: line 143
If existing schema was found: diff showing what changed
- Distinctive: line 148
Test with Google Rich Results Test
- Distinctive: line 150
Wait 2-4 weeks for Google to re-crawl and process
- Very specific: line 151
Use aeo-ai-overview-simulator to measure citation impact before/after
- Distinctive: line 166
Don't over-schema: Only add schema types that match actual page content.
- Distinctive: line 167
FAQ is the highest-ROI schema for AEO: If your page answers questions (even implicitly), extract those Q&As into FAQPage schema.
- Distinctive: line 168
Keep dateModified current: Every time you update content, update the dateModified.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AEO Schema
Source: github.com/psyduckler/aeo-skills Part of: AEO Skills Suite (v2 Core) Previously:
aeo-schema-optimizer— renamed in v2 for namespace consistency
Generate structured data (JSON-LD) optimized for AI citation. Help Gemini 3 Flash and other AI models find, understand, and cite your content.
Why Structured Data Matters for AEO
When Gemini 3 Flash generates AI Overviews, it needs to quickly identify:
- What type of content is on the page (article, FAQ, how-to guide, product)
- What questions it answers
- What entities it covers (people, products, organizations)
- How authoritative the source is (author, publication date, organization)
Schema markup explicitly declares all of this. Pages with proper schema give AI models a structured signal layer on top of the content — making them easier to parse, trust, and cite.
Requirements
web_fetch— to analyze the target page- LLM reasoning — to determine optimal schema types and generate JSON-LD
- Templates in
references/schema-templates.md
No API keys required.
Input
- URL (required) — the page to optimize
- Target prompt (optional) — the AI prompt this page should win citations for
Workflow
Step 1: Fetch and Analyze the Page
Use web_fetch on the target URL. Extract:
- Page title and meta description
- Content structure — headings (H1-H3), sections, lists
- Content type — determine what kind of page this is:
- Article/Blog — long-form content, guides, analysis
- FAQ — question-and-answer format
- How-To — step-by-step instructions
- Product — product page with specs, pricing, reviews
- Local Business — location with address, hours, contact
- Landing Page — mixed content, multiple purposes
- Key entities — people (authors), organizations, products, tools mentioned
- Existing schema — check for any
<script type="application/ld+json">blocks
Step 2: Audit Existing Schema
If schema already exists:
- Is it valid JSON-LD?
- Does it match the page content type?
- Is it complete (all recommended properties filled)?
- Are there missing schema types that would help? (e.g., article page without FAQ schema for Q&A sections)
- Are dates current (datePublished, dateModified)?
Output audit findings: what's present, what's missing, what's incorrect.
Step 3: Determine Optimal Schema Strategy
Based on content type and structure, recommend which schema types to implement:
| Content Type | Primary Schema | Additional Schema |
| Guide/Article | Article | FAQ (if Q&A sections), BreadcrumbList, HowTo (if steps) |
| FAQ Page | FAQPage | Article, BreadcrumbList |
| Tutorial/How-To | HowTo | Article, FAQ (for troubleshooting), BreadcrumbList |
| Product Page | Product | FAQ, BreadcrumbList, AggregateRating |
| Local Business | LocalBusiness | FAQ, BreadcrumbList |
| Comparison | Article | FAQ, ItemList, BreadcrumbList |
| Listicle | Article + ItemList | BreadcrumbList |
Key principle: Layer multiple schema types. An article that includes a FAQ section should have both Article AND FAQPage schema. This gives AI models multiple structured entry points.
Step 4: Generate Optimized JSON-LD
Use templates from references/schema-templates.md and populate with actual page data.
Critical properties for AI citation:
For Article:
headline— match the H1, keep under 110 charsdescription— the meta description or a 150-char summaryauthor— full name + credentials URL (sameAs)datePublished+dateModified— ISO 8601, must be currentpublisher— organization with logomainEntityOfPage— canonical URLabout— what the article covers (link to entities)
For FAQPage:
- Extract every Q&A pair from the page
- Each
Questiongets the exact heading text - Each
acceptedAnswergets the first 1-2 sentences (the direct answer) - Limit to 10 most important Q&As
For HowTo:
name— the process being describedstep— each step withnameandtexttotalTime— ISO 8601 duration if mentionedestimatedCost— if applicablesupply/tool— materials or tools needed
For Product:
name,description,brandoffers— pricing, availabilityaggregateRating— if reviews existreview— individual reviews
For LocalBusiness:
name,address,telephoneopeningHoursSpecificationgeo— latitude/longitudepriceRange
Step 5: Validate and Deliver
Before delivering the JSON-LD:
- Validate JSON syntax — ensure it parses correctly
- Check required properties — every schema type has required fields
- Verify entity consistency — author, publisher, dates match across schema blocks
- Test nested structures — FAQ questions, HowTo steps are properly structured
- Check URL references — mainEntityOfPage, sameAs, url fields are correct
Output:
- Complete JSON-LD block(s) ready to paste into
<head> - Implementation notes (where to place, what to update when content changes)
- If existing schema was found: diff showing what changed
Step 6: Verification Guidance
After implementation, recommend:
- Test with Google Rich Results Test
- Validate with Schema.org Validator
- Wait 2-4 weeks for Google to re-crawl and process
- Use
aeo-ai-overview-simulatorto measure citation impact before/after
Schema Types Gemini Prioritizes
Based on observed AI Overview behavior, these schema signals matter most:
- FAQPage — directly provides Q&A pairs the AI can cite; highest impact for question prompts
- Article with dateModified — freshness signal; AI models prefer recently-updated content
- HowTo — structured steps are easy for AI to extract and present
- Author with credentials — expertise signal (E-E-A-T); helps for YMYL topics
- BreadcrumbList — helps AI understand site structure and topic hierarchy
- Product with reviews — for commercial queries; aggregateRating is a trust signal
Tips
- Don't over-schema. Only add schema types that match actual page content. Misleading schema can trigger penalties.
- FAQ is the highest-ROI schema for AEO. If your page answers questions (even implicitly), extract those Q&As into FAQPage schema.
- Keep dateModified current. Every time you update content, update the dateModified. Stale dates signal stale content.
- Author schema matters for YMYL. Health, finance, legal content benefits enormously from detailed author schema with credentials.
- Pair with content optimization. Schema helps AI find your answers; the answers themselves still need to be clear, concise, and extractable. Use
aeo-content-freefor that.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

