skills/website-cloner/website-clone-report/SKILL.md
Generate a plain-language report from website-analyzer JSON and save it only after explicit approval. Use for non-technical summaries. Don't use for developer audits, raw SEO analysis, penetration testing, or unapproved persistence.
npx skillsauth add luongnv89/skills website-clone-reportInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Converts structured website analysis into a comprehensive, plain-language report for non-technical readers. Approval gate: persists only after explicit user validation.
Trigger when the user asks to:
Do not use for technical audit reports targeting developers — those belong to the analyzer skill.
references/api_reference.md when validating fields or translating metrics; use only the needed reference mappings to protect the context budget.error variant.1. Read the analyzer output (JSON)
2. Translate each dimension into plain language
3. Draft the report for non-technical readers
4. Present to user for review
5. Incorporate edits (loop until approved)
6. Persist final report to file
Write the report in plain language. Technical metrics are translated, not just listed.
# Website Analysis Report: <site name>
**URL:** <url>
**Date:** <date>
---
## At a Glance
A plain-language summary: what this site is, who it's for, and its overall health.
Example: "This is a SaaS landing page targeting small businesses. It looks polished and modern,
but loads slowly on mobile connections and is missing key SEO elements that would help it
rank in search results."
## How It Looks and Works
Translate UI/UX findings into plain language:
- Layout style (e.g., "clean single-column layout with a large hero image")
- What draws attention first
- Any friction points (e.g., "the sign-up button is hidden below the fold")
- Responsive behavior
## What Kind of Site This Is
Category description in plain terms:
- "This is an e-commerce store selling handcrafted furniture"
- "This is a documentation site for a developer tool"
## Design and Style
Describe the visual identity accessibly:
- Typography feel (e.g., "modern sans-serif fonts that feel clean and professional")
- Color palette (e.g., "cool blues and grays with orange accents for calls to action")
- Spacing and density
- Motion and interactivity feel
## Performance
Translate metrics to plain language:
- **How fast content appears:** "The main content takes about X seconds to appear.
For comparison, sites that load in under 2 seconds tend to keep visitors engaged."
- **Visual stability:** "The page layout is mostly stable while loading.
You're unlikely to notice elements jumping around."
- **How quickly the server responds:** "The estimated server response delay is X seconds."
- **How much data it uses:** "The page weighs about X KB, roughly equivalent to
loading Y average-sized images."
- **Number of resources:** "The page makes about X requests to load."
## Security Overview
Surface-level observations only, in plain language:
- "The site uses HTTPS, which means data between your browser and the site is encrypted."
- "The site sends a few security signals to browsers, but could strengthen them."
Always note this is not a full security audit.
## Search Engine Visibility
SEO findings translated:
- Overall score with context: "SEO score: X/100 — [excellent/good/fair/poor]"
- "The page has a title and description that search engines can read."
- "The heading structure could be improved to help search engines understand the content."
- "Images are missing alternative text, which helps with accessibility and search."
## Summary and Next Steps
A brief section with actionable takeaways:
- What's working well (2–3 points)
- What needs attention (2–3 points)
- What could be improved (2–3 points)
---
*This report was generated from automated analysis. All findings are based on a single-page crawl
and may not reflect the full site.*
Read the JSON analysis file (or content passed via stdin/argument):
Read file <path-to-analysis.json>
If no file is provided and $ARGUMENTS contains a URL, note that this skill requires pre-existing analysis output (produced by website-analyzer), not raw URLs. The orchestrator should have already run Phase 1.
For each dimension:
lcp_estimate_seconds: "how fast the main content appears" (estimated seconds)cls_estimate: "how stable the page feels while loading" (unitless)ttfb_estimate_seconds: "how quickly the server responds" (estimated seconds)Assemble the translated content into the report structure above.
Present the draft report to the user. Ask:
"Here is the analysis report. Please review it and let me know:
If the user requests edits:
Do not persist the file until explicit approval.
Once approved, persist the report using the Write tool — do not shell out to echo or cat redirection.
--output <path>. If absent, fall back to $PROJECT_DIR/report.md when the orchestrator set $PROJECT_DIR, otherwise to report.md in the current working directory.After the Write call returns, confirm to the user:
Report saved to: <absolute-path>
Verify the approved report before saving:
Approve.| Failure | Behavior |
|---|---|
| No analyzer input provided | Ask for the analysis JSON file path |
| Invalid JSON | Report error and ask for valid input |
| Analyzer error variant | Surface its error and detail; do not draft a health report |
| Missing or null dimension | Omit unsupported specifics and identify the gap in next steps |
| User never approves | Keep the loop going; do not auto-save |
◆ Website Clone Report
··································································
Analyzer JSON: √ pass | × fail ([reason])
Six dimensions: √ translated | × partial ([missing])
Draft reviewed: √ pass
User approved: √ pass | × pending
Report saved: √ pass ([absolute path]) | — not approved
Result: PASS | BLOCKED | FAIL
Never report PASS before both explicit approval and a successful Write result.
tools
Run Herdr loops for one open GitHub issue (resolve→review→fix) or an existing PR (review→lazy fixer) until CLEAN. Don't use for plain resolution without review, review-only/no-fix requests, backlog automation, or merging.
tools
Manage AI agent fleets in Herdr: split root + sub-agents into one tab as a tiled grid, message/wait/read via herdr CLI, steer any pane. Use for Herdr multi-agent fleets. Don't use for tmux, screen, or non-Herdr terminals.
development
Generate or update docs to match the code, citing each claim to path:line and asking on ambiguity; runbook docs also get a check-only validation script. Don't use for API-reference autogen (JSDoc/Sphinx), landing pages, or CLAUDE.md/AGENTS.md.
testing
Generate a diagram and route to the right engine — draw.io XML (precise, editable, C4, swimlanes) or Excalidraw JSON (hand-drawn, sketch, wireframes). One entry for flowcharts, architecture, ER, sequence, mind maps. Don't use for Mermaid or slides.