seo
Skill3 starsChanged 8 months agoMITView on GitHub
Use when adding metadata, creating sitemaps, generating robots.txt, implementing structured data (JSON-LD), optimizing for search engines, building OG images, creating llms.txt for AI search engines, or fixing SEO issues in Next.js applications. Covers Google's official guidance, GEO (Generative Engine Optimization), Core Web Vitals, and common SEO myths.
156 other projects use a version of this.
Adopted by
Most recently taken up by
- Rojios/everything-claude-codetheir own version, first seen Nov 8, 2026
- mazzeoia/MazyOStheir own version, first seen Nov 8, 2026
- ahmadvahidi/skill-atlastheir own version, first seen Nov 8, 2026
- GstMirabal/Token-Optimized-Agent-Pipelinetheir own version, first seen Nov 8, 2026
- alpit-patel/seo-aeo-geo-kittheir own version, first seen Nov 8, 2026
- Mahesh-Bishnoi/skillstheir own version, first seen Nov 8, 2026
Used with
Projects with it also use seo-agentic, seo-maps and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
AgriciDanielSkillseo-agentic
Audit and fix agent readiness: the Lighthouse Agentic Browsing fraction, accessibility tree for agents, robots.txt and Content-Signal for AI agents, WAF treatment of agent traffic, llms.txt, Markdown delivery, ai-catalog.json, /.well-known discovery files, and WebMCP tools. Use when the user asks whether AI agents can use or browse the site, or about llms.txt or WebMCP. Exclude AI citability and brand signals (seo-geo) and commerce protocol depth (seo-ecommerce).
Also in 5 projects that use this
timruebenachSkillseo-maps
Maps intelligence for local SEO — geo-grid rank tracking, GBP profile auditing via API, review intelligence across Google/Tripadvisor/Trustpilot, cross-platform NAP verification (Google/Bing/Apple/OSM), competitor radius mapping, and LocalBusiness schema generation from API data. Three-tier capability: free (Overpass + Geoapify), DataForSEO (full intelligence), DataForSEO + Google (maximum coverage). Use when user says "maps", "geo-grid", "rank tracking", "GBP audit", "review velocity", "competitor radius", "maps analysis", "local rank tracking", "Share of Local Voice", or "SoLV".
Also in 17 projects that use this
megastepSkillseo-images
Image optimization analysis for SEO and performance. Checks alt text, file sizes, formats, responsive images, lazy loading, and CLS prevention. Use when user says "image optimization", "alt text", "image SEO", "image size", or "image audit".
Also in 24 projects that use this
timruebenachSkillseo-image-gen
AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics. Powered by Gemini via nanobanana-mcp. Requires banana extension installed. Use when user says \"generate image\", \"OG image\", \"social preview\", \"hero image\", \"blog image\", \"product photo\", \"infographic\", \"seo image\", \"create visual\", \"image-gen\", \"favicon\", \"schema image\", \"pinterest pin\", \"generate visual\", \"banner\", or \"thumbnail\".
Also in 15 projects that use this
megastepSkillseo-sitemap
Analyze existing XML sitemaps or generate new ones with industry templates. Validates format, URLs, and structure. Use when user says "sitemap", "generate sitemap", "sitemap issues", or "XML sitemap".
Also in 26 projects that use this
renepfSkillorch-pipeline
Shared orchestration engine for the orch-* skill family. Defines the gated Research-Plan-TDD-Review-Commit pipeline, the size classifier, the agent map, and the two human gates that the orch-* operation skills delegate to. Not usually invoked directly.
Also in 4 projects that use this
- +3 more from timruebenach
- +1 more from megastep
Other versions156 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 156
- AgriciDaniel/claude-seo★ 20ksame name
- midudev/preguntas-entrevista-react★ 7.8ksame name
- legions-developer/evilcharts★ 3.2ksame name
- gridaco/grida★ 2.7ksame name
- midudev/la-velada-web-oficial★ 1.9ksame name
- midudev/tailwind-animations★ 1.5ksame name
- Bhanunamikaze/Agentic-SEO-Skill★ 993same name
- legions-developer/invoicely★ 923same name
- Nexus-JPF/note-companion★ 874same name
- iannuttall/seo★ 610same name
146 more not listed
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 repository17 other files it gives its agents.
- api-securitySkill
- ascii-artSkill
- code-readabilitySkill
- gotchasSkill
- llm-agent-securitySkill
- nextjs-app-routerSkill
- plain-docsSkill
- product-marketingSkill
- prompt-rewriteSkill
- react-performanceSkill
- react-testingSkill
- spa-performanceSkill
- tailwind-design-systemSkill
- typescript-safetySkill
- ux-copySkill
- wcag-accessibilitySkill
- webgpuSkill
The file
We split this skill into the rules it gives an agent
1 rule. 0 are common, 0 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 145 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 10
This skill generates code, not audits: Every pattern includes production-ready Next.js App Router examples you can use directly.
“Common” is measured: kept by at least 6 in 10 of the 145 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
SEO — Search & AI Engine Optimization
Production-ready SEO patterns for Next.js applications. Covers traditional SEO (Google), GEO (AI search engines), and implementation with actual code — not just recommendations.
This skill generates code, not audits. Every pattern includes production-ready Next.js App Router examples you can use directly.
Architecture Overview
[Metadata]
├── Static metadata (layout.tsx / page.tsx exports)
├── Dynamic metadata (generateMetadata with data fetching)
├── File-based (favicon.ico, opengraph-image.tsx, robots.ts, sitemap.ts)
└── Title templates (%s | Site Name)
↓
[Structured Data]
├── JSON-LD via <script type="application/ld+json">
├── Schema.org types (Article, Product, Organization, BreadcrumbList)
└── Rich results eligibility (Article, Product, Review, Video)
↓
[Crawlability]
├── robots.ts (Google + AI crawler control)
├── sitemap.ts (dynamic, with images and i18n)
├── Canonical URLs (alternates.canonical)
└── Internal linking
↓
[Performance (Ranking Factor)]
├── LCP — next/image priority, Server Components
├── INP — useTransition, code splitting
└── CLS — next/font, image dimensions
↓
[AI Visibility (GEO)]
├── llms.txt generation
├── Content structure for citation
├── AI crawler user-agent management
└── Entity optimizationQuick Reference
| Need to... | See |
| Add metadata to pages and layouts | Metadata |
| Create sitemap.xml and robots.txt | Crawlability |
| Add JSON-LD structured data | Structured Data |
| Generate dynamic OG images | OG Images |
| Optimize for AI search (ChatGPT, Perplexity) | GEO |
| Fix Core Web Vitals for SEO ranking | Performance |
| Avoid common SEO mistakes | Anti-Myths |
Decision Matrix
"What metadata does this page need?"
| Page Type | Title | Description | OG Image | Canonical | Structured Data |
| Home page | Static | Yes | Yes (branded) | Yes | Organization, WebSite |
| Listing/product page | Dynamic (from data) | Dynamic | Dynamic (from image) | Yes | Product, BreadcrumbList |
| Blog post | Dynamic | Dynamic | Dynamic (generated) | Yes | Article, BreadcrumbList |
| Category/search | Dynamic (with filters) | Dynamic | Optional | Yes (without query params) | BreadcrumbList, ItemList |
| Auth pages (login) | Static | Optional | No | noindex | None |
| Legal (privacy, terms) | Static | Yes | No | Yes | None |
| Dashboard/app pages | Static | Optional | No | noindex | None |
"Should this page be indexed?"
Is the page valuable to search users?
├── YES (content, product, article)
│ ├── Is there a canonical version? → Set alternates.canonical
│ ├── Is it paginated? → Each page canonicals to itself. Link next with <a href>
│ └── Index it (default — no robots directive needed)
└── NO (auth, dashboard, admin, API, staging)
└── Set robots: { index: false, follow: false }
└── Do not Disallow that URL in robots.ts. Google must crawl it to see noindex.SEO Anti-Myths (Google's Actual Guidance)
These are widely believed but wrong according to Google's official documentation:
| Myth | Reality | Source |
| "Add meta keywords" | Google has ignored <meta name="keywords"> since 2009 | Google Webmaster Blog |
| "E-E-A-T is a ranking factor" | There is no E-E-A-T score to add. Ranking systems look for signals that match experience, expertise, authoritativeness, and trust. | Helpful content |
| "Content must be X words long" | No minimum or maximum. Write what's useful. | Google SEO Starter Guide |
| "Heading order affects rankings" | Heading order is for screen readers. Google Search does not require headings in order. | SEO Starter Guide |
| "Duplicate content is a penalty" | No spam penalty. Google picks a canonical. Bad UX, not a ranking hit. | Google Search Central |
| "Domain keywords boost ranking" | Keywords in the domain have hardly any effect beyond appearing in breadcrumbs. | SEO Starter Guide |
| "Subdomain vs subdirectory matters" | Google can handle either. Choose for architecture, not SEO. | John Mueller, Google |
| "More backlinks = higher ranking" | PageRank uses links, and it is one signal among many. | SEO Starter Guide |
| "FID is a Core Web Vital" | INP replaced FID in March 2024 | web.dev |
What Google Actually Cares About
- Unique, descriptive title tags per page
- Concise meta descriptions that summarize page content
- Canonical URLs to consolidate duplicate content
- Structured data (JSON-LD) for rich results eligibility
- Mobile-friendly design (responsive, touch-friendly)
- Core Web Vitals — LCP <= 2.5s, INP <= 200ms, CLS <= 0.1
- Descriptive alt text for images
- Internal linking with descriptive anchor text
- XML sitemaps for crawl efficiency
- robots.txt for crawl control
- HTTPS (ranking signal since 2014)
When Reviewing Code
- Every page has a unique
<title>(via metadata export or generateMetadata) - Every page has a meta description
- Root layout sets
metadataBasefor URL resolution - Root layout uses title template:
{ template: '%s | Site Name', default: '...' } app/sitemap.tsexists and covers all public routesapp/robots.tsexists with rules for Googlebot and AI crawlers- Product/article pages have JSON-LD structured data
- Dynamic pages use
generateMetadatawith data memoization (cache()) - Images use
next/imagewith properalttext - Fonts use
next/font(prevents CLS) - Auth/dashboard pages have
robots: { index: false } - Canonical URLs set for pages accessible at multiple URLs
- No
<meta name="keywords">tag (Google ignores it) - OG images exist for shareable pages (social + messaging previews)
Performance follow-up sources and version limits: SOURCES.md. Read the affected resource for the task rather than treating field metrics or framework defaults as universal optimization requirements.
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.

