Writing & Content seo-auditpagespeed-insightslighthouse-ld-schemaopen-graph-tagstechnical-seohtml-reportpython-scripts

SEO Full Audit Skill (seo-audit-full)

Give it a page URL and get a complete SEO audit HTML report covering PageSpeed, social tags, and advanced technical checks.

FollowSkills review · FSRS-2.0
Use with care
52/ 100 5-point scale 2.6 / 5
1 2 3 4 5 6
1Trust16 / 25 · 3.2/5

Positives: scripts embed SSRF protection (blocking private/loopback/reserved IPs), API key is supplied via env vars or args with key redaction in error strings, the skill explicitly asks the user for the PageSpeed key first, no sign of covert exfiltration, transparent User-Agent. Deductions: keys passed via --api-key appear in process listings; no explicit user confirmation for auditing a target URL; referenced scripts (check-site.py, check-social.py, fetch-page.py) are absent from evidence so their safety cannot be verified.

2Reliability9 / 20 · 2.3/5

Positives: structured JSON output, clear exit-code contract (0/1), thorough error branches (timeout, redirects, SSL, quota) with diagnosable messages, one-to-one field mapping between scripts and docs, coherent llm_review_required flag design. Deductions: check-page.py source is truncated mid-function so completeness is unverifiable; check-site.py, check-social.py, fetch-page.py and the report template are not shown; no test suite; static review cannot confirm key-path reproduction.

3Adaptability8 / 15 · 2.7/5

Positives: explicit trigger keywords, declared boundaries (clear division vs. the basic seo-audit skill), input table marking required/optional fields. Deductions: the core PageSpeed module depends entirely on Google APIs with questionable reachability from mainland China; all docs and templates are English-only with no Chinese support statement; detailed judgment rules (E-E-A-T, staging subdomains) are static promises without run evidence.

4Convention9 / 15 · 3.0/5

Positives: well-layered SKILL.md architecture (triggers → inputs → diagram → output → scripts → rules → workflow), version 2.1 and author in frontmatter, MIT license declared at repo level, REFERENCE.md adds detail. Deductions: no changelog or update path, maintenance responsibility unclear, version history absent, missing template and several referenced scripts leave the doc chain incomplete.

5Effectiveness6 / 15 · 2.0/5

Positives: sensible phased workflow, detailed JSON-to-placeholder mapping rules, disciplined finding format, automation value over manual auditing. Deductions: static review cannot confirm the generated HTML report is directly usable; final quality depends on LLM fill quality with no sample outputs; marginal value vs. alternatives (e.g. PageSpeed web UI directly) is under-argued.

6Verifiability4 / 10 · 2.0/5

Positives: core scripts are auditable primary source; check rules and thresholds (Lighthouse, title lengths) are explicit and checkable. Deductions: no committed tests, no CI evidence, no third-party execution corroboration, claimed script output fields cannot be verified statically, limited evidence coverage and no fact/inference separation.

Evidence confidence:Low Reviewed Sep 10, 2026 Reviewed revision 523bdfb2c94f
Before you use it
  • This is a static source-only review; no scripts were executed and confidence is low.
  • The full audit depends on the Google PageSpeed API, which may be unreachable from mainland China, and requires a user-supplied API key.
  • check-page.py is truncated in evidence; several referenced scripts (check-site.py, check-social.py, fetch-page.py) and the report template are not provided, so actual usability is unverified.
  • Passing keys via --api-key exposes them in process listings; prefer environment variables in multi-user environments.
  • Publisher is unverified and versioning/maintenance commitments are incomplete; verify current repository state before use.
Review evidence [1][2][3][4][5]
See the full review method →

What does this skill do, and when should you use it?

seo-audit-full is the advanced single-page SEO audit skill inside JeffLi1993's seo-audit-skill repository. It uses a two-layer Script + LLM architecture: Python scripts run deterministic checks (robots.txt, sitemap, JSON-LD, PageSpeed, OG/Twitter tags) and emit structured JSON, while the LLM only steps in for semantic judgments like keyword intent and E-E-A-T content quality. The final output is a standalone HTML report saved under reports/, presenting findings as Evidence → Impact → Fix plus a priority action list. The PageSpeed module requires a Google PageSpeed Insights API key — without one, the skill stops and asks you to configure it before running.

Given a page URL (with an optional primary keyword), the skill runs three phases: Phase 1 executes local core scripts — check-site.py (robots.txt, sitemap, 404 handling, URL canonicalization, staging subdomain detection, sitemap directory inventory), check-page.py (title, H1, meta description, slug, canonical), fetch-page.py (raw HTML fetch), and check-schema.py (JSON-LD validation); Phase 2 runs check-pagespeed.py (four Lighthouse category scores plus FCP/LCP/TBT/CLS/Speed Index metrics) and check-social.py (OG and Twitter Card validation); Phase 3 uses LLM-only reviews for E-E-A-T content quality, duplicate content signals, and anchor text quality. Results are mapped into assets/report-template.html and saved as reports/<hostname>-<slug>-full-audit.html — raw HTML is never printed to the terminal.

  1. A site owner or marketer wanting a full pre-launch health check of a key landing page, including performance metrics, social preview tags, and technical hygiene
  2. An SEO consultant running a deep technical audit for a client and delivering a polished, self-contained HTML report
  3. A content team verifying that trust pages (About/Contact/Privacy/Terms) exist and are reachable for E-E-A-T compliance
  4. A dev team checking whether staging/test subdomains are publicly indexable and competing with production for ranking signals
  5. A multilingual site validating hreflang reciprocity and localized schema alignment (inLanguage, localized URLs)
  6. An agency using the sitemap URL inventory to pick representative URLs from major directories for deeper audits of competitor or benchmark sites

What are this skill's strengths and limitations?

Pros
  • Script + LLM split: deterministic checks are handled by Python, and the LLM only judges fields flagged llm_review_required, reducing hallucination risk
  • Broad coverage: site-level (robots, sitemap inventory, staging subdomains, hreflang), page-level (TDK, H1, slug, internal links), performance (Lighthouse scores and lab metrics), and social tags
  • Output is a standalone HTML file saved to disk with a consistent Evidence/Impact/Fix format and prioritized action list — easy to deliver
  • Explicit failure-mode handling: PageSpeed timeouts or quota/API-key errors are marked as error, not misread as page performance failure
  • MIT licensed, and all scripts emit structured JSON that can be inspected as evidence
Limitations
  • Hard dependency on a PageSpeed API key — the full audit stops without one, so you must obtain a Google API key yourself
  • PageSpeed checks can take ~200 seconds, unsuitable for quick-feedback workflows
  • Without GSC, crawl, or analytics data, those advanced modules are simply marked unavailable, limiting depth
  • The README shows no test suite or independent validation; platform compatibility claims (OpenClaw, Cursor, etc.) are author assertions only
  • Requires a local Python environment with pip-installed requests — it cannot run in a pure browser or shell-less context

How do you install this skill?

Install the whole collection: npx skills add JeffLi1993/seo-audit-skill, or just this skill: npx skills add JeffLi1993/seo-audit-skill --skill seo-audit-full. Claude Code users can alternatively use the plugin route: /plugin marketplace add JeffLi1993/seo-audit-skill then /plugin install seo-audit-skill. After installation, run pip install requests in the skill's environment. Source lives in the repo's seo-audit-full/ directory with SKILL.md, references/REFERENCE.md, assets/report-template.html, and scripts/.

How do you use this skill?

1) Configure a PageSpeed API key via --api-key or the PAGESPEED_API_KEY / GOOGLE_PAGESPEED_API_KEY environment variables (free at https://developers.google.com/speed/docs/insights/v5/get-started); 2) Trigger it in an agent such as Claude Code with phrases like "full SEO audit", "advanced SEO audit", or "audit this page: https://example.com" (a URL alone triggers the full workflow); 3) Optionally provide a primary keyword for better relevance scoring, plus raw HTML, GSC/crawl/analytics data, or competitor benchmarks if available; 4) Wait for the scripts to run and the report to be saved to reports/<hostname>-<slug>-full-audit.html; 5) The skill offers to open the report with open. Note: PageSpeed checks can take up to ~200 seconds.

How does this skill compare with similar options?

The sibling skill in the same repo, seo-audit (Basic tier), is the obvious alternative: it needs no PageSpeed API key and produces a 20+ check structured report quickly, making it good for a fast health check. seo-audit-full adds PageSpeed/Lighthouse, sitemap URL inventory, staging subdomain detection, OG/Twitter social tags, and E-E-A-T content quality — the right choice when a complete technical audit is required.

FAQ

Is a Google PageSpeed API key mandatory?
Yes. PageSpeed is a required full-audit module. Provide the key via --api-key, PAGESPEED_API_KEY, or GOOGLE_PAGESPEED_API_KEY; if it is missing, the skill stops and asks you to configure it rather than rendering a report with missing performance data. Keys are free to obtain from Google's getting-started page.
How long does an audit take, and what if it times out?
PageSpeed runs with a 180-second default timeout and can take up to ~200 seconds in practice. On timeout, the skill marks the Page Speed module as error and states the API timed out — it does not treat that as a confirmed performance failure.
Where does the report go? Is it printed to the terminal?
Reports are saved as standalone HTML files at reports/<hostname>-<slug>-full-audit.html — e.g., https://example.com/blog/best-tools becomes reports/example-com-blog-best-tools-full-audit.html. The skill explicitly forbids printing raw HTML to the terminal.
What happens if I don't supply GSC or competitor data?
Those inputs are optional. When absent, the skill runs the full public-signal workflow and clearly notes the missing data sources in the report; analyses that depend on them (GSC index coverage, competitor gaps) simply can't be performed.

More skills from this repository

All from JeffLi1993/seo-audit-skill

Related skills