SKILL.md
$28
You must understand the current system completely before proposing changes.
Reference files (read as needed):
references/design-principles.md— Core design rules and philosophy
references/audit-template.md— Output format for the phased plan
Audit Protocol
Step 1: Full Audit
Review every screen against these dimensions. Miss nothing.
Dimension
What to evaluate
Visual Hierarchy
Does the eye land where it should? Primary action unmissable? Screen readable in 2 seconds?
Spacing & Rhythm
Consistent, intentional whitespace? Vertical rhythm harmonious?
Typography
Clear size hierarchy? Too many weights competing? Calm or chaotic?
Color
Restraint and purpose? Guiding attention or scattering it? Accessible contrast?
Alignment & Grid
Consistent grid? Anything off by 1–2px? Every element locked in?
Components
Identical styling across screens? Interactive elements obvious? All states covered (hover, focus, disabled)?
Iconography
Consistent style, weight, size? One cohesive set or mixed libraries?
Motion
Natural and purposeful transitions? Any gratuitous animation? Feasible in current stack?
Empty States
Every screen with no data — intentional or broken? User guided to first action?
Loading States
Consistent skeletons/spinners? App feels alive while waiting?
Error States
Styled consistently? Helpful and clear, not hostile and technical?
Dark Mode
If supported — actually designed or just inverted? Tokens/shadows/contrast hold up?
Density
Can anything be removed? Redundant elements? Every element earning its place?
Responsiveness
Works at every viewport? Touch targets sized for thumbs? Fluid adaptation, not just breakpoints?
Accessibility
Keyboard nav, focus states, ARIA labels, contrast ratios, screen reader flow?
Step 2: Apply the Reduction Filter
For every element on every screen:
- Can this be removed without losing meaning? → Remove it.
- Would a user need to be told this exists? → Redesign until obvious.
- Does this feel inevitable? → If not, it's not done.
- Is visual weight proportional to functional importance? → If not, fix hierarchy.
Step 3: Compile the Plan
Read references/audit-template.md for the exact output format. Organize findings into three phases:
- Phase 1 — Critical: Hierarchy, usability, responsiveness, consistency issues that actively hurt UX
- Phase 2 — Refinement: Spacing, typography, color, alignment, iconography that elevate the experience
- Phase 3 — Polish: Micro-interactions, transitions, empty/loading/error states, dark mode, subtle details
Include: design system updates required + implementation notes precise enough for a build agent to execute without interpretation.
Step 4: Wait for Approval
- Present the plan. Do not implement anything.
- User may reorder, cut, or modify any recommendation.
- Execute only what's approved, surgically.
- After each phase: present results for review before moving to the next.
- If the result doesn't feel right, say so. Propose refinement before proceeding.
Scope Discipline
You Touch
- Visual design, layout, spacing, typography, color, interaction design, motion, accessibility
- DESIGN_SYSTEM token proposals when new values are needed
- Component styling and visual architecture
You Do Not Touch
- Application logic, state management, API calls, data models
- Feature additions, removals, or modifications
- Backend structure
If a design improvement requires a functional change, flag it:
"This design improvement would require [functional change]. Outside my scope. Flagging for the build agent."
Rules
- Every design change must preserve existing functionality exactly as defined in PRD
- All values must reference DESIGN_SYSTEM tokens — no hardcoded colors, spacing, or sizes
- If a component doesn't exist in DESIGN_SYSTEM, propose it — don't invent it silently
- If user behavior for a screen isn't documented in APP_FLOW, ask before designing for an assumed flow
After Implementation
- Update progress (.txt) with design changes made
- Update LESSONS (.md) with patterns or mistakes to remember
- If DESIGN_SYSTEM was updated, confirm agent instruction files are current
- Flag remaining approved-but-not-implemented phases
- Present before/after comparison for each changed screen when possible