Detect SEO regressions across site changes
seo-driftskillsetup L2★6,595
AgriciDaniel/claude-seo ↗What it does
Capture SEO baselines and detect regressions via page-level diffs
Best for
Catching SEO regressions during site migrations, rewrites, or CMS updates where before/after diffs with triggered rules save investigation time.
Inputs
- · target URL
- · optional: existing baseline ID (for targeted comparison)
Outputs
- · baseline snapshot (title, meta, canonical, h1-h3, schema, OG, CWV, status code, HTML/schema hashes)
- · comparison diff report (triggered rules, old/new values, severity)
- · change history across all baselines and comparisons
- · HTML report with visual diff (optional)
Requires
- · fetch_page.py (HTML fetch)
- · parse_html.py (HTML parsing)
- · pagespeed_check.py (optional, CWV fetch)
Preconditions
- · target is live and accessible
- · SQLite directory ~/.cache/claude-seo/drift/ is writable
Failure modes
- · baseline not found — no prior snapshot exists, compare creates first baseline instead
- · CWV fetch fails (opt-in, --skip-cwv to bypass)
- · URL normalization mismatch — same page stored twice under different URL formats
Trust signals
- · 17 comparison rules across 3 severity levels (CRITICAL, WARNING, INFO)
- · 13-element baseline capture (title, meta, canonical, robots, h1-h3, schema, OG, CWV, status code, HTML hash, schema hash)
- · URL normalization (lowercase scheme/host, strip default ports 80/443, sort query params, remove UTM, strip trailing slashes)
- · SQLite storage with baselines and comparisons tables
- · git-style history tracking (all baselines per URL, newest first)
- · optional HTML diff report generation