agentsclimarketplace

Seo

Skill LeahyCC/claude-skills/skills/seo

Production-grade Claude Code skills verified against official specifications. Zero dependencies. Complete domain coverage.

Install
npx -y skills add LeahyCC/claude-skills --skill seo

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

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.

SKILL.md

7.7 KB, as published. Nobody here has run it

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 (FAQ, HowTo, 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 optimization

Quick Reference

Need to...See
Add metadata to pages and layoutsMetadata
Create sitemap.xml and robots.txtCrawlability
Add JSON-LD structured dataStructured Data
Generate dynamic OG imagesOG Images
Optimize for AI search (ChatGPT, Perplexity)GEO
Fix Core Web Vitals for SEO rankingPerformance
Avoid common SEO mistakesAnti-Myths

Decision Matrix

"What metadata does this page need?"

Page TypeTitleDescriptionOG ImageCanonicalStructured Data
Home pageStaticYesYes (branded)YesOrganization, WebSite, SearchAction
Listing/product pageDynamic (from data)DynamicDynamic (from image)YesProduct, BreadcrumbList
Blog postDynamicDynamicDynamic (generated)YesArticle, BreadcrumbList
Category/searchDynamic (with filters)DynamicOptionalYes (without query params)BreadcrumbList, ItemList
Auth pages (login)StaticOptionalNonoindexNone
Legal (privacy, terms)StaticYesNoYesNone
Dashboard/app pagesStaticOptionalNonoindexNone

"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? → Set rel prev/next or canonical to page 1
│   └── Index it (default — no robots directive needed)
└── NO (auth, dashboard, admin, API, staging)
    └── Set robots: { index: false, follow: false }
        └── Also consider: noindex via robots.ts rules

SEO Anti-Myths (Google's Actual Guidance)

These are widely believed but wrong according to Google's official documentation:

MythRealitySource
"Add meta keywords"Google has ignored <meta name="keywords"> since 2009Google Webmaster Blog
"E-E-A-T is a ranking factor"E-E-A-T is a quality rater guideline, not an algorithm signalGoogle Quality Rater Guidelines
"Content must be X words long"No minimum or maximum. Write what's useful.Google SEO Starter Guide
"Heading order affects rankings"Heading hierarchy helps accessibility, not rankingsGoogle Search Central (multiple confirmations)
"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"Minimal if any impactGoogle (multiple confirmations)
"Subdomain vs subdirectory matters"Google can handle either. Choose for architecture, not SEO.John Mueller, Google
"More backlinks = higher ranking"Quality and relevance matter, not quantityGoogle Link Spam Update
"FID is a Core Web Vital"INP replaced FID in March 2024web.dev

What Google Actually Cares About

  1. Unique, descriptive title tags per page
  2. Concise meta descriptions that summarize page content
  3. Canonical URLs to consolidate duplicate content
  4. Structured data (JSON-LD) for rich results eligibility
  5. Mobile-friendly design (responsive, touch-friendly)
  6. Core Web Vitals — LCP <= 2.5s, INP <= 200ms, CLS <= 0.1
  7. Descriptive alt text for images
  8. Internal linking with descriptive anchor text
  9. XML sitemaps for crawl efficiency
  10. robots.txt for crawl control
  11. 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 metadataBase for URL resolution
  • Root layout uses title template: { template: '%s | Site Name', default: '...' }
  • app/sitemap.ts exists and covers all public routes
  • app/robots.ts exists with rules for Googlebot and AI crawlers
  • Product/article pages have JSON-LD structured data
  • Dynamic pages use generateMetadata with data memoization (cache())
  • Images use next/image with proper alt text
  • 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)

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.