distill · aladicf — Claude Code skill: strip a cluttered UI down
A skill that removes extra controls, options and features from a screen so the main task stands out. Useful when everything competes for attention.
npx skills add aladicf/better-web-ui --skill distill -a claude-codeWhat distill does
distill walks a design layer by layer: information architecture, visuals, layout, interaction, copy. It first names what makes the screen feel heavy — competing buttons, too many colors and fonts, no progressive disclosure. Then it hunts for the essence: the one user goal, the smallest version that already delivers value.
The plan phase leans on Tesler's Law. Some complexity belongs to the domain, and the real choice is whether the product absorbs it or hands it to the user. The skill pushes toward smart defaults, prefilled data, inline guidance and remembered preferences, keeping advanced power available without putting it in everyone's way.
It runs as the /distill slash command with an optional target argument. The skill requires loading $frontend-design and following its Context Gathering Protocol; if no design context exists yet, $setup comes first. It also pulls in reference files on cognitive load, hierarchy and action priority. Skip those dependencies and the protocol steps won't run.
What it helps with
- cut competing buttons down to one primary action
- reduce a five-color palette and font pile to something deliberate
- hide secondary settings behind progressive disclosure
- define the smallest shippable version of a feature
- delete redundant copy and dead CSS
Example prompts for the agent
- /distill the account settings page
- /distill checkout screen — too many fields
- /distill dashboard: I can't tell what matters here
How to install distill
1Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill distill -a claude-code2Manually: put the files in place
~/.claude/skills/distill/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/distill/
1Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill distill -a codex2Manually: put the files in place
.agents/skills/distill/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill distill -a cursor2Manually: put the files in place
.cursor/skills/distill/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install aladicf/better-web-ui distill2Manually: put the files in place
.github/skills/distill/SKILL.md1Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill distill -a gemini-cli2Platform CLI
gemini skills install https://github.com/aladicf/better-web-ui --path skills/distillManually: put the files in place
.devin/skills/distill/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add aladicf/better-web-ui --skill distill -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about distill
How do I install distill in Claude?
Run npx skills add aladicf/better-web-ui --skill distill -a claude-code. The skill file then sits at ~/.claude/skills/distill/SKILL.md.
What does distill do?
It scans a UI and removes what doesn't earn its place: secondary actions, repeated information, decorative borders and shadows. The result is one obvious next step.
What does distill need to work?
It requires loading $frontend-design and following its context gathering protocol. If no design context exists yet, $setup loads first.
Source text
SKILL.md · MIT
--- name: distill description: 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. metadata: argument-hint: "[target]" --- 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](../frontend-design/reference/cognitive-load.md) when simplification depends on reducing visible choices, memory burden, or premature complexity. Consult the [hierarchy checklist](../frontend-design/reference/hierarchy-checklist.md) when clutter is really flattening priority, section restraint, or label/value clarity. Consult the [action hierarchy](../frontend-design/reference/action-hierarchy.md) when simplifying means deciding which controls should lead, recede, combine, or disappear. --- ## Assess Current State Analyze what makes the design feel complex or cluttered: 1. **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 2. **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."
© aladicf · MIT · aladicf/better-web-ui
Similar skills
Everything for Frontend and UI →distill by other authors comes first.