skills/seo/SKILL.md
SEO optimization. Meta tags, structured data, Core Web Vitals, sitemap, robots.txt, Open Graph.
npx skillsauth add arbazkhan971/godmode seoInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
/godmode:seo, "SEO audit", "meta tags"# Check for sitemap and robots.txt
curl -sf https://example.com/sitemap.xml | head -5
curl -sf https://example.com/robots.txt
# Lighthouse SEO audit
npx lighthouse https://example.com \
--only-categories=seo --output=json
SEO DISCOVERY:
Target: <URL / entire site>
Framework: <Next.js | Nuxt | SvelteKit | static>
Rendering: SSR | SSG | CSR | ISR | hybrid
TITLE: 50-60 chars, unique per page,
primary keyword near beginning, brand at end
DESCRIPTION: 150-160 chars, unique, has CTA
CANONICAL: every page, self-referencing,
trailing slash consistent, no canonical to 404
MINIMUM META TAGS PER PAGE:
<title>, <meta description>, <link canonical>
OG: og:type, og:title, og:description,
og:image (1200x630), og:url, og:site_name
Twitter: twitter:card, twitter:title,
twitter:description, twitter:image
JSON-LD structured data
Page type -> Schema.org type:
Homepage: Organization (name, url, logo, sameAs)
Blog posts: Article (headline, author, date)
Products: Product (name, price, availability)
FAQ: FAQPage (Question/Answer pairs)
Breadcrumbs: BreadcrumbList (position, name)
Search: WebSite + SearchAction
IF structured data present: validate with
Google Rich Results Test (0 errors required)
IF structured data missing: add for page type
WHEN data doesn't match visible content: fix
(mismatch = manual penalty risk)
SITEMAP:
Location: /sitemap.xml, XML format
Check: missing pages, dead URLs, non-canonical
Limits: 50MB / 50K URLs -> split
Reference in robots.txt
ROBOTS.TXT:
Allow important pages
Block admin/login/API/internal
Block duplicate params (?sort=, ?filter=)
NEVER block CSS/JS (engines need to render)
TARGETS: LCP <2.5s, INP <200ms, CLS <0.1
LCP FIXES: preload LCP image, responsive srcset,
WebP/AVIF, inline critical CSS, reduce TTFB,
defer non-critical JS, fetchpriority="high"
CLS FIXES: explicit width/height on images/videos,
aspect-ratio CSS, reserve space for ads/embeds,
preload fonts, font-display:optional/swap
INP FIXES: break long tasks (>50ms) with yield,
requestIdleCallback, web workers,
debounce inputs, minimize DOM (<1500 elements)
OG Image: min 1200x630, JPG/PNG <8MB,
absolute URL, publicly accessible
Test: Facebook Debugger, Twitter Card Validator
Track weekly: organic traffic, impressions/clicks,
keyword rankings, crawl errors
Track per deploy: Lighthouse CI scores
Assert: performance >=0.9, seo >=0.9,
LCP <2500, CLS <0.1
Track monthly: CWV field data (CrUX)
SEO AUDIT -- {target}:
Meta: {status} ({N} pages)
Canonical: {status}, Sitemap: {status}
CWV: LCP {N}s, INP {N}ms, CLS {N}
Structured data: {N} types, valid: {yes|no}
Lighthouse SEO: {N}/100
Verdict: PASS (>=90) | NEEDS WORK (>=70) | FAIL
Commit: "seo: {target} -- fix {N} issues"
grep -r "next-seo\|react-helmet\|vue-meta" \
package.json 2>/dev/null
ls public/sitemap.xml public/robots.txt 2>/dev/null
grep -r "JsonLd\|json-ld\|application/ld+json" \
src/ --include="*.tsx" --include="*.vue" -l 2>/dev/null
Append to .godmode/seo-results.tsv:
timestamp\tpage\taction\tmetric\tbefore\tafter\tstatus
Print: SEO: Lighthouse {N}/100. CWV: LCP {N}s, INP {N}ms, CLS {N}. Verdict: {verdict}.
KEEP if: Lighthouse SEO >= previous AND CWV held
AND structured data validates
DISCARD if: SEO dropped OR CWV regressed
OR structured data errors
STOP when:
- Lighthouse SEO >= 95 AND all CWV good
- All pages have titles/descriptions/canonicals
- Valid structured data on all page types
- User requests stop OR max 10 iterations
development
Web performance optimization. Lighthouse, bundle analysis, code splitting, image optimization, critical CSS, fonts, service workers, CDN.
development
Webhook design, delivery, retry, HMAC verification, event subscriptions, dead letter queues.
development
Vue.js mastery. Composition API, Pinia, Vue Router, Nuxt SSR/SSG, Vite optimization, testing.
development
Evidence gate. Run command, read full output, confirm or deny claim. No trust, only proof.