seo-unlighthouse
An agent skill by AgriciDaniel, from AgriciDaniel/claude-seo. Tags: audit, cli, performance, seo, testing.
What it does
Multi-page Lighthouse audit via the MIT-licensed Unlighthouse CLI. Free-tier alternative to running PageSpeed against every URL on a site, no API quota burn, runs locally.
Install
With the skills CLI, which installs into Claude Code, Codex, Cursor and other agents:
npx skills add AgriciDaniel/claude-seo --skill seo-unlighthouse
Or copy the skill folder into Claude Code's skills directory by hand (~/.claude/skills for every project, or .claude/skills inside one):
git clone --depth 1 https://github.com/AgriciDaniel/claude-seo
cp -r claude-seo/extensions/unlighthouse/skills/seo-unlighthouse ~/.claude/skills/seo-unlighthouse
Safety box score
Grade B, low risk: 25 of 100 risk points, rated 2026-10-20. The grade rates what the skill and its scripts can reach on the machine of whoever installs it, across eight categories from shell execution to secrets access. How the score works.
This skill runs a local Unlighthouse/Lighthouse crawl against a supplied site URL, collecting JSON and HTML reports for up to 200 routes. The main risks are outbound traffic to the target site, local script execution via delegated wrappers, and generated report files/configs on disk; it does not ask for secrets or elevated privileges.
| Category | Level | Why |
|---|---|---|
| Code & shell execution | 2 (moderate) | It explicitly runs local tooling and scripts: `extensions/unlighthouse/install.sh` and `"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run unlighthouse_run.py`. |
| Network access | 2 (moderate) | Its purpose is to fetch and audit a site-wide set of pages: `Run Lighthouse against every URL on a site` and `/seo unlighthouse <url>`. |
| Filesystem reach | 1 (low) | It writes artifacts locally, including `JSON+HTML report in a temp dir`, `./reports`, and a generated `unlighthouse.config.mjs`, but stays within the working area. |
| Secrets & credentials | 0 (none) | The skill says `no API key needed` and does not reference tokens, passwords, keychains, or dotfiles. |
| Privilege & persistence | 0 (none) | There is no sudo, service registration, shell startup editing, or other system-level change described. |
| Instruction hijack surface | 0 (none) | I found no instruction to ignore safeguards, hide actions, or follow remote prompt content. |
| Irreversible actions | 1 (low) | It automates a multi-page crawl and aggregation (`up to 200 routes`), but it does not send messages, deploy, pay, or delete anything. |
| Transparency | 1 (low) | Behavior is partly delegated to unreviewed components referenced here, including `extensions/unlighthouse/install.sh`, `unlighthouse npm package`, and `"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run unlighthouse_run.py`. |
Before installing
- Read `extensions/unlighthouse/install.sh` and `scripts/claude-seo` before running them.
- Test the skill against a harmless site you control first, with `--max-routes` set very low.
- Use a scratch working directory so the generated `ci-result.json`, HTML, and `unlighthouse.config.mjs` don't clutter your project.
- Confirm the audit target can tolerate repeated crawls; this skill may request up to 200 pages by default.
Rated 2026-10-20 by an automated review of 1 file from the skill's repository.
Source
- Repository
- AgriciDaniel/claude-seo (all skills from this repository)
- Path
- extensions/unlighthouse/skills/seo-unlighthouse/SKILL.md
- Branch
- main
- Collection
- claude-seo
- Updated
- 2026-09-21
Related skills
- coverage-analysis — Measures and interprets what a fuzzing campaign actually reaches, using llvm-cov, lcov, or a fuzzer's own coverage output.
- seo-images — Image optimization analysis for SEO and performance.
- seo-page — Deep single-page SEO analysis covering on-page elements, content quality, technical meta tags, schema, images, and performance.
- address-sanitizer — Builds and runs code under AddressSanitizer to catch buffer overflows, use-after-free, and other memory errors during fuzzing or tests.
- aflpp — Sets up and runs AFL++ for multi-core fuzzing of C/C++ projects built with afl-clang-fast or afl-gcc-fast.
- cargo-fuzz — Sets up and runs cargo-fuzz, the standard fuzzing tool for Cargo-based Rust projects. Covers cargo fuzz init, the nightly toolchain requirement, fuzz_target!