guia-matthieu/lighthouse-audit
Run automated Lighthouse audits for Core Web Vitals and SEO. Use when: checking page performance; auditing SEO technical issues; monitoring Core Web Vitals; comparing before/after optimization; batch auditing multiple URLs
npx skills add https://github.com/guia-matthieu/clawfu-skills --skill lighthouse-audit
> Automate Google Lighthouse audits to measure and track Core Web Vitals, SEO, and accessibility - the same metrics Google uses for search ranking.
| Claude Does | You Decide |
|-------------|------------|
| Structures analysis frameworks | Metric definitions |
| Identifies patterns in data | Business interpretation |
| Creates visualization templates | Dashboard design |
| Suggests optimization areas | Action priorities |
| Calculates statistical measures | Decision thresholds |
pip install click pandas jinja2
# Also requires Chrome and Lighthouse CLI
# npm install -g lighthouse
# Or use Chrome DevTools built-in Lighthouse
python scripts/main.py audit https://example.com --categories performance,seo
python scripts/main.py audit https://example.com --format html --output report.html
python scripts/main.py batch urls.txt --output results/
python scripts/main.py batch urls.txt --categories performance --format csv
python scripts/main.py compare https://example.com --baseline scores.json
python scripts/main.py compare https://example.com --baseline-url https://staging.example.com
python scripts/main.py history https://example.com --days 30
python scripts/main.py history https://example.com --plot
# Create URL list
cat > urls.txt << EOF
https://example.com/
https://example.com/pricing
https://example.com/features
https://example.com/blog
EOF
# Run batch audit
python scripts/main.py batch urls.txt --categories performance,seo,accessibility
# Output: results/audit_2024-01-15/
# ├── example.com_.json
# ├── example.com_pricing.json
# ├── example.com_features.json
# ├── example.com_blog.json
# └── summary.csv
# Save baseline
python scripts/main.py audit https://example.com --output baseline.json
# Make optimizations...
# Compare
python scripts/main.py compare https://example.com --baseline baseline.json
# Output:
# Core Web Vitals Comparison
# ─────────────────────────────
# Metric Before After Change
# LCP 3.2s 1.8s -44% ✓
# FID 120ms 45ms -63% ✓
# CLS 0.25 0.08 -68% ✓
# Performance 52 89 +37 pts
# Full audit with HTML report
python scripts/main.py audit https://client-site.com \
--format html \
--output client-report.html \
--include-screenshots
# Output: Professional HTML report with:
# - Executive summary
# - Core Web Vitals scores
# - Screenshots of issues
# - Prioritized recommendations
| Category | Checks | Impact |
|----------|--------|--------|
| performance | LCP, FID, CLS, TTFB, Speed Index | Search ranking |
| seo | Meta tags, headings, links, mobile | Search visibility |
| accessibility | WCAG compliance, contrast, labels | Compliance |
| best-practices | HTTPS, security, modern APIs | Trust |
| pwa | Service worker, manifest, offline | App-like experience |
| Metric | Good | Needs Improvement | Poor |
|--------|------|-------------------|------|
| LCP (Largest Contentful Paint) | ≤2.5s | 2.5s-4.0s | >4.0s |
| FID (First Input Delay) | ≤100ms | 100ms-300ms | >300ms |
| CLS (Cumulative Layout Shift) | ≤0.1 | 0.1-0.25 | >0.25 |
| INP (Interaction to Next Paint) | ≤200ms | 200ms-500ms | >500ms |
| Format | Use Case | Content |
|--------|----------|---------|
| json | Automation, storage | Full raw data |
| csv | Spreadsheets, analysis | Summary scores |
| html | Client reports | Visual report |
| md | Documentation | Markdown summary |
category: seo-tools
subcategory: performance
dependencies: [lighthouse, click, pandas]
difficulty: beginner
time_saved: 3+ hours/week
Take guia-matthieu/lighthouse-audit from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference pip, npm.
Without those the skill loads but fails at the first command.