Lead Gen JaySkillsTest Improve

Test Improve

Skill v1.0 3 files

Iterative visual design review and improvement tool using Playwright screenshots. Audits pages against design guidelines, fixes issues, and re-checks until quality standards are met.

playwrightvisual-testingdesign-auditresponsiveuiauto-fix

Test Improve is a Claude Code skill. Iterative visual design review and improvement tool using Playwright screenshots. It works well with taste, design-motion-principles, landing-page-auditor, frontend-design, ship.

Documentation

--- name: test-improve description: >- Iterative visual design review and improvement tool using Playwright screenshots. This skill should be used when reviewing a page's visual quality, auditing against design guidelines, making improvements, and re-checking until the design meets quality standards. Works with any web project — auto-detects brand rules from CLAUDE.md and project context. --- # Test-Improve — Visual Design Review & Auto-Fix Loop ## When to Use - `/test-improve [url]` — explicit invocation - "review and improve the design" - "audit the page design" - "check design quality and fix issues" - "test and fix [page-name]" - After building or modifying a page, before shipping ## Prerequisites - Playwright installed (`npx playwright install chromium`) - Dev server running (for local URLs) --- ## Phase 0: Detect Project Context (always runs first) Before auditing, gather project-specific design rules: 1. **Read CLAUDE.md** — extract brand colors, fonts, icon library, design preferences 2. **Read tailwind.config** (if exists) — extract theme colors, fonts, spacing 3. **Read layout/globals** — detect font imports, CSS variables, base styles 4. **Build a Brand Profile** from what you find: ``` BRAND PROFILE (auto-detected): ├─ Heading Font: [detected or "not specified"] ├─ Body Font: [detected or "not specified"] ├─ Primary Color: [hex] ├─ Accent Color(s): [hex values] ├─ CTA Color: [hex] ├─ Icon Library: [lucide/heroicons/etc.] ├─ Design Rules: [from CLAUDE.md — e.g., "no gradients", "no emojis"] └─ Component Library: [shadcn/mui/chakra/custom] ``` If no brand rules are found, use the generic defaults in the checklist. --- ## Workflow: 4 Phases, Max 3 Iterations ### Phase 1: Capture & Identify (always runs) 1. **Determine target URL** — user-provided or auto-detect from recent work - If no URL given, check recently modified files for page routes - Support both `localhost` and production URLs 2. **Identify page source files** — find all files to audit: - Page entry point (e.g., `page.tsx`, `index.tsx`, `+page.svelte`) - Client component (e.g., `content.tsx`, `client.tsx`) - Section/component directory 3. **Run multi-viewport screenshots** using Playwright: - Check for project screenshot script first (e.g., `scripts/screenshot-viewports.ts`) - Fallback: use Playwright CLI directly for 3 viewports: ```bash # Desktop (1440px) npx playwright screenshot --viewport-size="1440,900" --full-page <url> /tmp/test-improve-desktop.png # Tablet (768px) npx playwright screenshot --viewport-size="768,1024" --full-page <url> /tmp/test-improve-tablet.png # Mobile (393px) npx playwright screenshot --viewport-size="393,852" --full-page <url> /tmp/test-improve-mobile.png ``` 4. **Read all screenshots visually** — use the Read tool on each PNG file 5. **Read all component source files** — understand current implementation ### Phase 2: Audit (runs each iteration) Load `references/design-checklist.md` and evaluate the page against every applicable check. **Adapt checks to the Brand Profile** detected in Phase 0 — substitute project-specific fonts, colors, and rules for the generic defaults. #### Audit Categories & Weights | Category | Weight | Focus | |----------|--------|-------| | **Brand Compliance** | 20% | Fonts, colors, design rules from CLAUDE.md, icon library, logo | | **Anti-Slop** | 20% | AI cliches, equal-width grids, generic shadows, symmetric padding | | **Motion Quality** | 15% | Tap feedback, spring transitions, stagger timing, scroll reveals | | **Layout & Spacing** | 15% | Section padding rhythm, responsive breakpoints, whitespace | | **Conversion** | 15% | CTA above fold, value prop, social proof, objection handling | | **Visual Quality** | 15% | Tinted shadows, card hover lifts, border radius, text hierarchy | #### Audit Output Format For each issue found, record: ``` [SEVERITY] Category — Issue Title File: path/to/component.tsx:42 What: Description of what's wrong Fix: Specific code change to resolve ``` Severity levels: - **Critical** — Brand violation, broken layout, missing CTA, accessibility failure - **Important** — Anti-slop pattern, missing motion, weak conversion element - **Minor** — Spacing inconsistency, optimization opportunity, polish detail ### Phase 3: Fix (runs each iteration) 1. **Present findings to user** — grouped by severity: ``` ══════════════════════════════════════ AUDIT FINDINGS — Iteration N ══════════════════════════════════════ CRITICAL (X issues) ├─ [issue description + file] └─ [issue description + file] IMPORTANT (X issues) ├─ [issue description + file] └─ [issue description + file] MINOR (X issues) ├─ [issue description + file] └─ [issue description + file] ``` 2. **Apply fixes** — make all approved changes to source files 3. **Re-capture screenshots** using the same method from Phase 1 4. **Read new screenshots** to visually verify fixes resolved the issues ### Phase 4: Re-audit & Loop (max 3 iterations) 1. Re-run Phase 2 checklist on updated code + new screenshots 2. If new Critical or Important issues found → back to Phase 3 3. If clean (no Critical or Important remaining) → Phase 5 4. If max iterations (3) reached → Phase 5 with remaining issues noted ### Phase 5: Final Report ``` ═══════════════════════════════════════════ TEST-IMPROVE REPORT: /page-name ═══════════════════════════════════════════ Iterations: N Issues Found: X Issues Fixed: Y Remaining: Z (severity breakdown) CHANGES MADE: ├─ brand-compliance: N fixes ├─ anti-slop: N fixes ├─ motion-quality: N fixes ├─ layout-spacing: N fixes ├─ conversion: N fixes └─ visual-quality: N fixes FILES MODIFIED: ├─ path/to/component-a.tsx ├─ path/to/component-b.tsx └─ path/to/page.tsx SCREENSHOTS: [screenshot directory] ═══════════════════════════════════════════ ``` --- ## Reference Files | File | Load When | |------|-----------| | `references/design-checklist.md` | Every audit run — the master checklist | Load the checklist at the start of Phase 2. It contains all checks organized by category with pass/fail criteria and specific fix instructions. **Substitute project brand values** from the Brand Profile for any generic defaults. --- ## Integration with Other Skills If these skills are available in the project, test-improve draws criteria from them: | Skill | What test-improve borrows | |-------|--------------------------| | `taste` | Anti-slop patterns, brand lock rules, tinted shadows, spring physics | | `design-motion-principles` | whileTap checks, stagger timing, scroll reveal consistency | | `landing-page-auditor` | Above-fold checks, CTA placement, social proof visibility | | `frontend-design` | Typography hierarchy, distinctive layout, background variety | If deeper analysis is needed in any category, invoke the specialized skill directly (if available). --- ## Constraints - Works with any local or production URL - Screenshots use Playwright (not Chrome MCP tools) - Max 3 iterations prevents infinite loops on subjective preferences - Phase 3 fixes require user approval before applying - Don't audit files you haven't read — always read source before reporting issues - Don't report issues below 80% confidence - Adapt all brand checks to the detected project context — never assume a specific brand
JF
Built by Jay Feldman
Founder, Lead Gen Jay · Inc. 5000 · 80K+ YouTube subs

Install

curl -sL 'https://leadgenjay.com/api/skills/install.sh?items=test-improve' | bash
Installs in ~3 seconds
Verified by Jay
Files included
SKILL.md
manifest.yaml
references/design-checklist.md
View on GitHub
Want premium skills?

The full exclusive stack

Get every Claude Code skill, command, and agent Jay uses to run an Inc. 5000 company — plus live coaching, the private community, and lifetime access.

  • Claude Code Zero to ProFastest way to learn Claude
    $2,997
  • Claude Remote AgentBuild your own 24/7 Bob
    $3,497
  • 100+ Exclusive Skills & AutomationsClaude Code & n8n
    $1,997
  • Unlimited Live CoachingOn-demand + Tuesdays with Jay
    $1,497
  • Top 1% Skool Community3,000+ founders
    $997
Total real-world value$13,479
You pay today$1,497
Encrypted 14-day refund Cancel anytime