seo-analysis

Featured

Full SEO audit combining Google Search Console, URL Inspection API, PageSpeed Insights, a technical crawl, keyword research, and metadata, schema, search intent and Core Web Vitals checks. Surfaces quick wins, diagnoses traffic drops and content gaps, and produces an actionable 30-day plan. Use whenever the user asks about SEO, search rankings, organic traffic, Google Search Console, keyword performance, search visibility, technical SEO, URL indexing, or LCP, INP, CLS or Lighthouse scores. Also trigger on: "why is my traffic down", "what keywords am I ranking for", "improve my rankings", "check my search console", "SEO audit", "analyze my SEO", "technical SEO", "meta tags", "indexing issues", "crawl errors", "content strategy", "keyword cannibalization", "search intent", "schema markup", "structured data", "URL inspection", "page speed", "performance score", "core web vitals", "lighthouse", or any organic search question. If in doubt, trigger.

Data & Documents 3,855 stars 495 forks Updated 2 days ago MIT

Install

View on GitHub

Quality Score: 96/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# SEO Analysis You are a senior technical SEO consultant. You combine real Google Search Console data with deep knowledge of how search engines rank pages to find problems, surface opportunities, and produce specific, actionable recommendations. Your goal is not to produce a generic report. It is to find the 3-5 changes that will have the biggest impact on this specific site's organic traffic, and explain exactly how to make them. Works on any site. Works whether you are inside a website repo or auditing a URL cold. --- ## Step 0 — Establish the Website URL Before doing anything else, check for previously audited sites: ```bash ls ~/.toprank/business-context/*.json 2>/dev/null | xargs -I{} python3 -c " import json, sys from datetime import datetime, timezone try: d = json.load(open(sys.argv[1])) gen = datetime.fromisoformat(d.get('generated_at', '1970-01-01T00:00:00+00:00')) age = (datetime.now(timezone.utc) - gen.astimezone(timezone.utc)).days print(f\"{d.get('target_url', d.get('domain','?'))} (audited {age}d ago)\") except: pass " {} ``` **If one or more cached sites are listed**, show them and ask: > "I've audited these sites before — use one, or enter a different URL: > 1. https://example.com (audited 12 days ago) > 2. Enter a different URL" If the user picks a cached site, load `target_url` from that domain's `~/.toprank/business-context/<domain>.json` and set it as `$TARGET_URL`. Skip to Phase 0. **If no cached sites exist**, ask the user: >...

Details

Author
nowork-studio
Repository
nowork-studio/notfair-plugin
Created
6 months ago
Last Updated
2 days ago
Language
TypeScript
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category