Theme/color selection when user has no aesthetic direction and wants agent to decide. Use when: user is uncertain — "suggest colors", "what theme", "help me choose", "you pick". Keywords: suggest theme, suggest colors, what theme, what colors, help choose, help pick, no direction, you choose, recommend colors Do NOT use for: user has colors/style in mind, applying existing theme.
Generate cohesive, beautiful UI themes when no design specifications provided, preventing generic monotone interfaces.
Brand personality drives design decisions.
Every UI communicates personality through color, typography, and style. Rather than defaulting to arbitrary colors, ask about brand personality first, then generate cohesive themes that match.
Good theme = Intentional, cohesive, personality-aligned Bad theme = Random colors, inconsistent, no personality
Use when user EXPLICITLY asks for theme help:
Don't use if:
Ask user (concise, 1-2 questions max):
Question 1: "What personality should this UI have?"
Question 2: "Any color preferences or inspirations?"
Show 2-3 pre-defined themes from .claude/themes/ matching personality
Example:
1. Professional Blue - Corporate, trustworthy, clean
2. Minimal Monochrome - Sophisticated, timeless
3. Generate custom theme based on your preferences
If user wants custom: Generate based on personality + color preferences
Primary Palette (shades 50-900):
Neutral Palette (50-900):
Semantic Colors:
Why this structure:
Derive dark palette from the same hue — don't invent new colors.
| Role | Light mode | Dark mode |
|---|---|---|
| Page background | neutral-50 | neutral-950 |
| Surface (card/panel) | neutral-100 | neutral-900 |
| Surface hover | neutral-200 | neutral-800 |
| Body text | neutral-700 | neutral-200 |
| Heading text | neutral-900 | neutral-50 |
| Border | neutral-200 | neutral-700 |
| Primary action | primary-600 | primary-400 |
| Primary text on surface | primary-700 | primary-300 |
Key rules:
See design-fundamentals for typography pairing principles.
Theme should define:
See design-fundamentals for spacing scale principles.
Theme should define:
Border Radius:
Shadows:
WCAG AA minimums (required):
Must-check pairs for every theme:
| Pair | Target | Common failure |
|---|---|---|
| Body text on page background | 4.5:1 | Light gray text on white |
| Heading on page background | 4.5:1 | Medium neutral on light neutral |
| White text on primary button | 4.5:1 | Light primaries (yellow, lime) |
| Primary text on white | 4.5:1 | Mid-range primaries (400-500) |
| Placeholder text on input | 3:1 | neutral-400 on white |
Quick mental check — the 4.5:1 rule of thumb:
If primary color is light (yellow, lime, teal-300):
Complementary - Opposites on color wheel:
Analogous - Adjacent on color wheel:
Triadic - Three evenly spaced:
Monochromatic - Single hue, varying lightness:
Quick reference:
When choosing colors:
In planning doc:
## Theme Specification
### Selected Theme
- Name: [Theme Name]
- Source: .claude/themes/[filename].theme.json OR "Custom generated"
- Personality: [personality traits]
### Color Palette
**Primary ([Color Name]):**
- Base: [hex] (buttons, links, actions)
- Hover: [hex]
- Active: [hex]
- Full scale: 50-900 shades
**Neutral:**
- Lightest: [hex] (backgrounds)
- Medium: [hex] (body text)
- Darkest: [hex] (headings)
- Full scale: 50-900 shades
**Semantic:**
- Success: [hex] / dark: [hex]
- Error: [hex] / dark: [hex]
- Warning: [hex] / dark: [hex]
- Info: [hex] / dark: [hex]
### Dark Mode Palette
- Background: [hex] (neutral-950)
- Surface: [hex] (neutral-900)
- Body text: [hex] (neutral-200)
- Heading: [hex] (neutral-50)
- Border: [hex] (neutral-700)
- Primary action: [hex] (primary-400)
### Contrast Verification
- Body text / background: [ratio]:1 ✓/✗
- White / primary button: [ratio]:1 ✓/✗
- Primary text / white: [ratio]:1 ✓/✗
### Typography
- Heading: [Font family], [weight], [line-height]
- Body: [Font family], [weight], [line-height]
- Scale: [values]
### Spacing
- Scale: [values - base-4 or base-8]
### Visual Style
- Border radius: [small/medium/large]
- Shadows: [subtle/medium/strong]
Consistency Rules:
Do:
Don't:
Component Theming:
Buttons:
States:
Color harmony + brand personality = cohesive themes.
When users need help choosing colors/fonts:
Theme-factory provides interactive selection and color theory methods. Design-fundamentals provides application principles and technical foundation.
Together: Distinctive, cohesive, accessible UI themes.