seo-performance
The seo-performance skill conducts comprehensive performance audits by measuring Core Web Vitals (LCP, INP, CLS), Lighthouse scores, and generating deterministic reports. Use this specialized tool when evaluating website performance across desktop and mobile platforms, prioritizing real-user data from PageSpeed Insights before falling back to lab measurements, then caching results for downstream SEO audit integration.
git clone --depth 1 https://github.com/AgriciDaniel/codex-seo /tmp/seo-performance && cp -r /tmp/seo-performance/skills/seo-performance ~/.claude/skills/seo-performanceSKILL.md
# Performance Specialist
Use this for the performance sub-track in full audits.
## Shared Data Cache
**Step 0 -- Check shared data cache:**
Before gathering, check `.seo-cache/` for cached data from other skills.
Reference: `../seo/references/shared-data-cache.md` for schemas and dependency map.
This specialist does not require upstream cache inputs before running fresh performance checks.
- If found: no prerequisite cache is needed; continue with current measurements
- If missing: proceed normally and gather fresh performance data
- If the user says "refresh" or "re-run": ignore cache entirely
## Inputs
- URL
- Timeout
- Optional PageSpeed API key (`PAGESPEED_API_KEY`)
## Execution Path
Prefer running `scripts/analyze_performance.py` for deterministic performance analysis in API/headless environments. The script uses PageSpeed data when available and otherwise falls back to labeled heuristics so the pipeline still completes without a human in the loop.
## Outputs
- `PERFORMANCE-AUDIT-REPORT.md`
- `SUMMARY.json`
## Core checks
- Prefer real-user CWV data from PageSpeed Insights / CrUX when available
- If real-user data is unavailable, fall back to Lighthouse lab data and label it clearly as lab data
- Lighthouse performance score (mobile + desktop if available)
- LCP and CLS measurements
- INP only when the data source actually provides it; do not fabricate or infer INP from TBT
- TBT may be reported as a lab proxy when INP is unavailable
- Fallback guidance when API data is unavailable, quota-blocked, or unauthenticated
## Priority Rules
- **High**: Performance score < 70 or LCP > 2500ms or INP > 200ms or CLS > 0.1
- **Medium**: Performance score 70-79
- **Low**: Data-source limitations
## Write to shared data cache
After completing all work, write results to `.seo-cache/`.
```bash
mkdir -p .seo-cache/pages/{url-slug}
```
Write `.seo-cache/pages/{url-slug}/performance.json` using the schema in `../seo/references/shared-data-cache.md`.
At minimum, match the documented cache keys: `core_web_vitals` and `issues`. Add extra helpful fields only if they do not replace or rename the documented keys.
Add `.seo-cache/` to `.gitignore` if not already present:
```bash
grep -qxF '.seo-cache/' .gitignore 2>/dev/null || echo '.seo-cache/' >> .gitignore
```
### Premium Deliverable
If the user requests a 'client report' or 'premium deliverable', automatically read `../seo-audit/assets/report-template.html` and `../seo/references/premium-report-standard.md`. Use that report standard as the default brief. Generate the HTML as an internal intermediate artifact, then produce the PDF as the public deliverable. Mention only the PDF in your final response unless the user explicitly asks for the HTML file.AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics. Powered by Gemini via nanobanana-mcp. Requires banana extension installed. Use when user says \"generate image\", \"OG image\", \"social preview\", \"hero image\", \"blog image\", \"product photo\", \"infographic\", \"seo image\", \"create visual\", \"image-gen\", \"favicon\", \"schema image\", \"pinterest pin\", \"generate visual\", \"banner\", or \"thumbnail\".
>
>
Full website SEO audit with parallel subagent delegation. Crawls up to 500 pages, detects business type, delegates to up to 15 specialists (8 always + 7 conditional), generates health score. Use when user says audit, full SEO check, SEO best-practice review, analyze my site, website health check, or find SEO issues.
Backlink profile analysis: referring domains, anchor text distribution, toxic link detection, competitor gap analysis. Works with free APIs (Moz, Bing Webmaster, Common Crawl) and DataForSEO extension. Use when user says backlinks, link profile, referring domains, anchor text, toxic links, link gap, link building, disavow, or backlink audit.
>
>
>