skills/website-cloner/website-improvement-prd/SKILL.md
Generate an approval-gated improvement PRD from a report and baseline, with evidence-backed what/why/value changes and measurable targets. Use for rebuild proposals. Don't use for task breakdown, coding, implementation, or unapproved persistence.
npx skillsauth add luongnv89/skills website-improvement-prdInstall 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.
Turns an approved end-user report into a full improvement proposal with measurable value metrics. Writes prd.md after user approval.
Trigger when the user asks to:
Do not use for implementation planning or coding — those are separate phases.
1. Read the approved report (Phase 2) and analysis (Phase 1)
2. Identify improvement opportunities per dimension
3. For each change: define what, why, and expected value
4. Assemble into prd.md
5. Present to user for review
6. Incorporate edits (loop until approved)
7. Persist prd.md
# Improvement Proposal: <site name>
**Source URL:** <url>
**Date:** <date>
**Version:** 1.0
---
## Executive Summary
2–3 sentences summarizing the main improvement themes and expected impact.
## Current State
Brief summary of the baseline from Phase 1 analysis:
- Category and audience
- Current performance highlights
- Current SEO standing
- Current security posture
## Proposed Improvements
### Change 1: <Title>
**What:** Specific, scoped description of the change.
Example: "Replace the current hero section with a centered layout featuring a clear headline, subtext, and primary CTA button above the fold."
**Why:** Problem being solved, evidence from Phase 1 analysis.
Example: "The current hero burying the CTA below two content sections. Users must scroll past unrelated content before seeing the sign-up option (Phase 1 UI/UX friction point: 'CTA not immediately visible')."
**Expected Value:** Measurable impact.
Example: "Estimated +15–25% improvement in CTA click-through rate. Reduced scroll depth requirement from 600px to 0px for primary action."
---
Repeat for each change. Group changes by dimension:
### UI/UX Improvements
### Performance Improvements
### SEO Improvements
### Security Improvements
### Style Enhancements
## Metrics Summary
| Metric | Current | Target | Delta |
|--------|---------|--------|-------|
| LCP | 4.3s | ≤ 2.0s | -53% |
| CLS | 0.18 | ≤ 0.05 | -72% |
| SEO Score | 62/100 | ≥ 90/100 | +45% |
| Page Weight | 2.1 MB | ≤ 800 KB | -62% |
## Next Steps
Reference Phase 4 (implementation plan) — the approved proposal feeds into `tasks.md` for phased execution.
---
*This proposal is based on analysis of a single crawl of the source site. Actual improvements may vary based on implementation decisions.*
Read the approved report and analysis:
Read file <path-to-report.md>
Read file <path-to-analysis.json>
If either is missing, ask for paths. The orchestrator should have already produced both.
For each dimension, identify specific, actionable improvements:
Each improvement must include:
Compare current metrics from Phase 1 against realistic targets:
| Current | Target Logic | |---------|-------------| | LCP > 3s | Target ≤ 2.0s (good) or ≤ 1.5s (excellent) | | CLS > 0.1 | Target ≤ 0.05 (good) | | SEO < 80 | Target ≥ 90 | | Page weight > 1 MB | Target ≤ 800 KB |
Assemble the proposal using the structure above.
Present the draft to the user:
"Here is the improvement proposal. Please:
If edits requested:
Do not persist until explicit approval.
Write to output path:
printf '%s\n' "$PRD_CONTENT" > "$OUTPUT_PATH"
Default: $PROJECT_DIR/prd.md or ~/workspace/clones/YYYY_MM_DD_slug/prd.md.
If $ARGUMENTS includes --output <path>, use that.
Confirm:
prd.md saved to: <absolute-path>
STATUS: approved
When invoked by the website-cloner umbrella (Phase 3 gate), the orchestrator
gates Phase 4 on this skill's outcome. The contract:
| Outcome | Signal |
|----------|---------------------------------------------------------------------|
| approved | prd.md exists at the resolved output path AND final line of stdout reads STATUS: approved |
| pending | no prd.md written; final line reads STATUS: pending (user still iterating) |
| aborted | no prd.md written; final line reads STATUS: aborted (user declined) |
The orchestrator MUST NOT advance to Phase 4 unless the outcome is approved.
A standalone invocation may ignore the status line, but the file-existence rule
still holds: no approval, no prd.md.
Verify the complete proposal before requesting approval:
prd.md contains executive summary, current state, grouped improvements, metrics summary, next steps, and source-data caveat.STATUS: approved; pending or aborted outcomes write no file.◆ Website Improvement PRD
··································································
Inputs validated: √ pass | × fail ([reason])
Changes evidenced: √ pass ([count])
Targets measurable: √ pass
User approved: √ pass | × pending
prd.md saved: √ pass ([absolute path]) | — not approved
Result: PASS | BLOCKED | FAIL
Report PASS only when the return contract's file and final status-line conditions both hold.
| Failure | Behavior | |---|---| | No input files provided | Ask for report.md and analysis.json paths | | Invalid input format | Report error and ask for valid files | | Report and analysis conflict | Cite both values and ask which approved baseline governs | | Missing baseline metric | Propose a qualitative change or mark the target unavailable; never invent a number | | User never approves | Keep looping; do not auto-save |
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.