Overview
CSS variable-based theming with 5 built-in themes, Windows Terminal theme detection, and dark/light mode support.
Acceptance Criteria
CSS custom properties for all theme colors (bg, fg, accent, borders, etc.)
5 built-in themes matching TUI: Dispatch Dark, Dispatch Light, Campbell, One Half Dark, One Half Light
Theme switching via settings (immediate, no reload)
Auto theme: detect system dark/light preference, adapt accordingly
Windows Terminal theme detection: parse settings.json for active color scheme
Theme colors map to attention dots, status indicators, conversation bubbles
High contrast mode (system accessibility setting detection)
Smooth theme transition (CSS transitions on color changes)
Theme preview in settings panel
Color Tokens
\\css
:root {
--bg-primary, --bg-secondary, --bg-tertiary
--fg-primary, --fg-secondary, --fg-muted
--accent-primary, --accent-secondary
--border-primary, --border-subtle
--attention-working, --attention-thinking, --attention-waiting, ...
--conversation-user-bg, --conversation-assistant-bg
--selection-bg, --hover-bg, --focus-ring
}
\\
Notes
Theme definitions in JSON (importable, same structure as TUI builtins.go)
Custom themes: user can drop JSON files in config directory
Nerd Font detection: check if font has ligatures/icons, show rich icons vs fallback
Overview
CSS variable-based theming with 5 built-in themes, Windows Terminal theme detection, and dark/light mode support.
Acceptance Criteria
Color Tokens
\\css
:root {
--bg-primary, --bg-secondary, --bg-tertiary
--fg-primary, --fg-secondary, --fg-muted
--accent-primary, --accent-secondary
--border-primary, --border-subtle
--attention-working, --attention-thinking, --attention-waiting, ...
--conversation-user-bg, --conversation-assistant-bg
--selection-bg, --hover-bg, --focus-ring
}
\\
Notes