Remove unnecessary complexity from designs, revealing the essential elements and creating clarity through ruthless simplification.
Distillation should happen before complexity hardens into the product. The best simplification move is often to avoid overbuilding in the first place.
MANDATORY PREPARATION
Users start this workflow with /distill. Once this skill is active, load $frontend-design — it contains design principles, anti-patterns, and the Context Gathering Protocol. Follow that protocol before proceeding — if no design context exists yet, you MUST load $setup first.
Consult the cognitive load when simplification depends on reducing visible choices, memory burden, or premature complexity.
Consult the hierarchy checklist when clutter is really flattening priority, section restraint, or label/value clarity.
Consult the action hierarchy when simplifying means deciding which controls should lead, recede, combine, or disappear.
Assess Current State
Analyze what makes the design feel complex or cluttered:
Identify complexity sources:
- Too many elements: Competing buttons, redundant information, visual clutter
- Excessive variation: Too many colors, fonts, sizes, styles without purpose
- Information overload: Everything visible at once, no progressive disclosure
- Visual noise: Unnecessary borders, shadows, backgrounds, decorations
- Confusing hierarchy: Unclear what matters most
- Feature creep: Too many options, actions, or paths forward
Find the essence:
- What's the primary user goal? (There should be ONE)
- What's actually necessary vs nice-to-have?
- What can be removed, hidden, or combined?
- What's the 20% that delivers 80% of value?
- What's the smallest useful version users could benefit from right now?
- Which parts are essential, decorative, or aspirational?
If any of these are unclear from the codebase, ask the user directly to clarify what you cannot infer.
CRITICAL: Simplicity is not about removing features - it's about removing obstacles between users and their goals. Every element should justify its existence.
Plan Simplification
Create a ruthless editing strategy:
- Core purpose: What's the ONE thing this should accomplish?
- Essential elements: What's truly necessary to achieve that purpose?
- Progressive disclosure: What can be hidden until needed?
- Consolidation opportunities: What can be combined or integrated?
Tesler's Law (Who Owns the Complexity?)
Some complexity is inherent to the domain. The real design decision is whether the system absorbs it or forces the user to manage it manually.
Prefer shifting unnecessary complexity into the product through:
- smart defaults
- prefilled data and remembered preferences
- inline guidance at the moment of need
- suggested paths and recommended settings
- automation for repetitive setup and formatting work
Keep advanced power available, but do not make every user confront the full complexity before they can do the basic job.
Minimum Shippable Scope
- Define the smallest version that delivers real user value
- Separate the shippable core from nice-to-haves and future ambitions
- Do not let optional features block the useful version from shipping
Cycle Rule
- Design lightly
- Build early
- Refine after real use exposes problems
- Avoid solving every edge case in the abstract before the feature exists
IMPORTANT: Simplification is hard. It requires saying no to good ideas to make room for great execution. Be ruthless.
Simplify the Design
Systematically remove complexity across these dimensions:
Information Architecture
- Start with the feature, not the shell: Simplify the actual task flow before redesigning navigation or chrome
- Reduce scope: Remove secondary actions, optional features, redundant information
- Progressive disclosure: Hide complexity behind clear entry points (accordions, modals, step-through flows)
- Combine related actions: Merge similar buttons, consolidate forms, group related content
- Clear hierarchy: ONE primary action, few secondary actions, everything else tertiary or hidden
- Remove redundancy: If it's said elsewhere, don't repeat it here
Visual Simplification
- Reduce color palette: Use 1-2 colors plus neutrals, not 5-7 colors
- Limit typography: One font family, 3-4 sizes maximum, 2-3 weights
- Remove decorations: Eliminate borders, shadows, backgrounds that don't serve hierarchy or function
- Flatten structure: Reduce nesting, remove unnecessary containers—never nest cards inside cards
- Remove unnecessary cards: Cards aren't needed for basic layout; use spacing and alignment instead
- Consistent spacing: Use one spacing scale, remove arbitrary gaps
Layout Simplification
- Linear flow: Replace complex grids with simple vertical flow where possible
- Remove sidebars: Move secondary content inline or hide it
- Full-width: Use available space generously instead of complex multi-column layouts
- Consistent alignment: Pick left or center, stick with it
- Generous white space: Let content breathe, don't pack everything tight
Interaction Simplification
- Reduce choices: Fewer buttons, fewer options, clearer path forward (paradox of choice is real)
- Smart defaults: Make common choices automatic, only ask when necessary
- Absorb system complexity: Prefer inference, remembered state, and sensible automation over making users learn hidden rules
- Inline actions: Replace modal flows with inline editing where possible
- Remove steps: Can signup be one step instead of three? Can checkout be simplified?
- Clear CTAs: ONE obvious next step, not five competing actions
Content Simplification
- Shorter copy: Cut every sentence in half, then do it again
- Active voice: "Save changes" not "Changes will be saved"
- Remove jargon: Plain language always wins
- Scannable structure: Short paragraphs, bullet points, clear headings
- Essential information only: Remove marketing fluff, legalese, hedging
- Remove redundant copy: No headers restating intros, no repeated explanations, say it once
Code Simplification
- Remove unused code: Dead CSS, unused components, orphaned files
- Flatten component trees: Reduce nesting depth
- Consolidate styles: Merge similar styles, use utilities consistently
- Reduce variants: Does that component need 12 variations, or can 3 cover 90% of cases?
NEVER:
- Remove necessary functionality (simplicity ≠ feature-less)
- Sacrifice accessibility for simplicity (clear labels and ARIA still required)
- Make things so simple they're unclear (mystery ≠ minimalism)
- Remove information users need to make decisions
- Eliminate hierarchy completely (some things should stand out)
- Oversimplify complex domains (match complexity to actual task complexity)
- Simplify after overbuilding if you could have shipped the smaller useful version first
- Let nice-to-have features block the shippable core
- Design every theoretical edge case before you've built and used the basic flow
- Offload avoidable configuration and rule-tracking onto users when the product could handle it instead
Verify Simplification
Ensure simplification improves usability:
- Faster task completion: Can users accomplish goals more quickly?
- Reduced cognitive load: Is it easier to understand what to do?
- Still complete: Are all necessary features still accessible?
- Clearer hierarchy: Is it obvious what matters most?
- Better performance: Does simpler design load faster?
Document Removed Complexity
If you removed features or options:
- Document why they were removed
- Consider if they need alternative access points
- Note any user feedback to monitor
Remember: You have great taste and judgment. Simplification is an act of confidence - knowing what to keep and courage to remove the rest. As Antoine de Saint-Exupéry said: "Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away."
1---
2name: distill
3description: Simplify cluttered UI by removing unnecessary elements, choices, features, and structural complexity. Use when the problem is too many controls, options, features, or competing elements—not when the structure is sound and the real issue is only visual intensity or lack of personality.
4metadata:
5 argument-hint: "[target]"
6---
7
8Remove unnecessary complexity from designs, revealing the essential elements and creating clarity through ruthless simplification.
9
10Distillation should happen before complexity hardens into the product. The best simplification move is often to avoid overbuilding in the first place.
11
12## MANDATORY PREPARATION
13
14Users start this workflow with `/distill`. Once this skill is active, load $frontend-design — it contains design principles, anti-patterns, and the **Context Gathering Protocol**. Follow that protocol before proceeding — if no design context exists yet, you MUST load $setup first.
15
16Consult the [cognitive load](../frontend-design/reference/cognitive-load.md) when simplification depends on reducing visible choices, memory burden, or premature complexity.
17Consult the [hierarchy checklist](../frontend-design/reference/hierarchy-checklist.md) when clutter is really flattening priority, section restraint, or label/value clarity.
18Consult the [action hierarchy](../frontend-design/reference/action-hierarchy.md) when simplifying means deciding which controls should lead, recede, combine, or disappear.
19
20---
21
22## Assess Current State
23
24Analyze what makes the design feel complex or cluttered:
25
261. **Identify complexity sources**:
27 - **Too many elements**: Competing buttons, redundant information, visual clutter
28 - **Excessive variation**: Too many colors, fonts, sizes, styles without purpose
29 - **Information overload**: Everything visible at once, no progressive disclosure
30 - **Visual noise**: Unnecessary borders, shadows, backgrounds, decorations
31 - **Confusing hierarchy**: Unclear what matters most
32 - **Feature creep**: Too many options, actions, or paths forward
33
342. **Find the essence**:
35 - What's the primary user goal? (There should be ONE)
36 - What's actually necessary vs nice-to-have?
37 - What can be removed, hidden, or combined?
38 - What's the 20% that delivers 80% of value?
39 - What's the **smallest useful version** users could benefit from right now?
40 - Which parts are **essential**, **decorative**, or **aspirational**?
41
42If any of these are unclear from the codebase, ask the user directly to clarify what you cannot infer.
43
44**CRITICAL**: Simplicity is not about removing features - it's about removing obstacles between users and their goals. Every element should justify its existence.
45
46## Plan Simplification
47
48Create a ruthless editing strategy:
49
50- **Core purpose**: What's the ONE thing this should accomplish?
51- **Essential elements**: What's truly necessary to achieve that purpose?
52- **Progressive disclosure**: What can be hidden until needed?
53- **Consolidation opportunities**: What can be combined or integrated?
54
55### Tesler's Law (Who Owns the Complexity?)
56
57Some complexity is inherent to the domain. The real design decision is whether the system absorbs it or forces the user to manage it manually.
58
59Prefer shifting unnecessary complexity into the product through:
60- smart defaults
61- prefilled data and remembered preferences
62- inline guidance at the moment of need
63- suggested paths and recommended settings
64- automation for repetitive setup and formatting work
65
66Keep advanced power available, but do not make every user confront the full complexity before they can do the basic job.
67
68### Minimum Shippable Scope
69- Define the smallest version that delivers real user value
70- Separate the shippable core from nice-to-haves and future ambitions
71- Do not let optional features block the useful version from shipping
72
73### Cycle Rule
74- Design lightly
75- Build early
76- Refine after real use exposes problems
77- Avoid solving every edge case in the abstract before the feature exists
78
79**IMPORTANT**: Simplification is hard. It requires saying no to good ideas to make room for great execution. Be ruthless.
80
81## Simplify the Design
82
83Systematically remove complexity across these dimensions:
84
85### Information Architecture
86- **Start with the feature, not the shell**: Simplify the actual task flow before redesigning navigation or chrome
87- **Reduce scope**: Remove secondary actions, optional features, redundant information
88- **Progressive disclosure**: Hide complexity behind clear entry points (accordions, modals, step-through flows)
89- **Combine related actions**: Merge similar buttons, consolidate forms, group related content
90- **Clear hierarchy**: ONE primary action, few secondary actions, everything else tertiary or hidden
91- **Remove redundancy**: If it's said elsewhere, don't repeat it here
92
93### Visual Simplification
94- **Reduce color palette**: Use 1-2 colors plus neutrals, not 5-7 colors
95- **Limit typography**: One font family, 3-4 sizes maximum, 2-3 weights
96- **Remove decorations**: Eliminate borders, shadows, backgrounds that don't serve hierarchy or function
97- **Flatten structure**: Reduce nesting, remove unnecessary containers—never nest cards inside cards
98- **Remove unnecessary cards**: Cards aren't needed for basic layout; use spacing and alignment instead
99- **Consistent spacing**: Use one spacing scale, remove arbitrary gaps
100
101### Layout Simplification
102- **Linear flow**: Replace complex grids with simple vertical flow where possible
103- **Remove sidebars**: Move secondary content inline or hide it
104- **Full-width**: Use available space generously instead of complex multi-column layouts
105- **Consistent alignment**: Pick left or center, stick with it
106- **Generous white space**: Let content breathe, don't pack everything tight
107
108### Interaction Simplification
109- **Reduce choices**: Fewer buttons, fewer options, clearer path forward (paradox of choice is real)
110- **Smart defaults**: Make common choices automatic, only ask when necessary
111- **Absorb system complexity**: Prefer inference, remembered state, and sensible automation over making users learn hidden rules
112- **Inline actions**: Replace modal flows with inline editing where possible
113- **Remove steps**: Can signup be one step instead of three? Can checkout be simplified?
114- **Clear CTAs**: ONE obvious next step, not five competing actions
115
116### Content Simplification
117- **Shorter copy**: Cut every sentence in half, then do it again
118- **Active voice**: "Save changes" not "Changes will be saved"
119- **Remove jargon**: Plain language always wins
120- **Scannable structure**: Short paragraphs, bullet points, clear headings
121- **Essential information only**: Remove marketing fluff, legalese, hedging
122- **Remove redundant copy**: No headers restating intros, no repeated explanations, say it once
123
124### Code Simplification
125- **Remove unused code**: Dead CSS, unused components, orphaned files
126- **Flatten component trees**: Reduce nesting depth
127- **Consolidate styles**: Merge similar styles, use utilities consistently
128- **Reduce variants**: Does that component need 12 variations, or can 3 cover 90% of cases?
129
130**NEVER**:
131- Remove necessary functionality (simplicity ≠ feature-less)
132- Sacrifice accessibility for simplicity (clear labels and ARIA still required)
133- Make things so simple they're unclear (mystery ≠ minimalism)
134- Remove information users need to make decisions
135- Eliminate hierarchy completely (some things should stand out)
136- Oversimplify complex domains (match complexity to actual task complexity)
137- Simplify after overbuilding if you could have shipped the smaller useful version first
138- Let nice-to-have features block the shippable core
139- Design every theoretical edge case before you've built and used the basic flow
140- Offload avoidable configuration and rule-tracking onto users when the product could handle it instead
141
142## Verify Simplification
143
144Ensure simplification improves usability:
145
146- **Faster task completion**: Can users accomplish goals more quickly?
147- **Reduced cognitive load**: Is it easier to understand what to do?
148- **Still complete**: Are all necessary features still accessible?
149- **Clearer hierarchy**: Is it obvious what matters most?
150- **Better performance**: Does simpler design load faster?
151
152## Document Removed Complexity
153
154If you removed features or options:
155- Document why they were removed
156- Consider if they need alternative access points
157- Note any user feedback to monitor
158
159Remember: You have great taste and judgment. Simplification is an act of confidence - knowing what to keep and courage to remove the rest. As Antoine de Saint-Exupéry said: "Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away."