diff --git a/CHANGELOG.md b/CHANGELOG.md index 129c6b85..40a223a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,8 @@ GitHub Releases page; `0.8.0` is the new starting line. ## Unreleased +- **Softer TUI chrome in the dark theme.** Panel borders (welcome banner, menus) and the input-area + rules now render in a mid grey (`#8a8d91`) instead of near-white, for a less glaring look. - **Stop-time memory extraction can now be enabled explicitly.** Added an opt-in `memory.harvest_on_stop` setting that stages safe assistant decisions, blockers, evidence, and next steps into the existing scratchpad recall flow at turn end without writing directly to diff --git a/src/pythinker_code/ui/theme.py b/src/pythinker_code/ui/theme.py index a11a9c60..c7b28768 100644 --- a/src/pythinker_code/ui/theme.py +++ b/src/pythinker_code/ui/theme.py @@ -166,7 +166,7 @@ def _task_browser_style_light() -> PTKStyle: # reads as a single line of text rather than a chrome panel. "compact-input": "", "compact-input.prompt": "fg:#F4F4F5 bold", - "compact-input.frame": "fg:#e8ebed", + "compact-input.frame": "fg:#8a8d91", # Muted level word in the top-border effort label (the dot carries the color). "compact-input.effort": "fg:#A3A3A3", "running-prompt-placeholder": "fg:#A3A3A3 italic", @@ -610,7 +610,7 @@ class TuiTokens: _TUI_TOKENS_DARK = TuiTokens( accent="#B3B9F4", - border="#e8ebed", + border="#8a8d91", border_accent="#7C88DE", border_muted="#b8bcc0", info="#AFE3F1", diff --git a/tests/ui_and_conv/test_shell_panel.py b/tests/ui_and_conv/test_shell_panel.py index f7bf7488..367be269 100644 --- a/tests/ui_and_conv/test_shell_panel.py +++ b/tests/ui_and_conv/test_shell_panel.py @@ -8,8 +8,8 @@ def test_brand_panel_is_rounded_and_uses_border_token(): set_active_theme("dark") p = brand_panel("hello", title="Demo") assert p.box is box.ROUNDED - # border style resolves to the light grey border token - assert "#e8ebed" in str(p.border_style).lower() + # border style resolves to the mid grey border token + assert "#8a8d91" in str(p.border_style).lower() def test_brand_panel_active_uses_accent_border(): diff --git a/tests/ui_and_conv/test_tui_theme_tokens.py b/tests/ui_and_conv/test_tui_theme_tokens.py index 7bd2aade..192b1e28 100644 --- a/tests/ui_and_conv/test_tui_theme_tokens.py +++ b/tests/ui_and_conv/test_tui_theme_tokens.py @@ -42,7 +42,7 @@ def test_dark_tokens_have_brand_values(): t = get_tui_tokens() assert t.accent == "#B3B9F4" # periwinkle brand accent (≈ Catppuccin Mocha lavender) assert t.border_accent == "#7C88DE" # accent-family chrome (active borders) - assert t.border == "#e8ebed" # light grey + assert t.border == "#8a8d91" # mid grey assert t.info == "#AFE3F1" # cyan (unchanged; markdown code/links use ANSI cyan) assert t.success == "#7BC97F" assert t.error == "#EF5E62"