Skip to content

UI Theming System & Chat Experience Modernization - #1

Merged
DevMando merged 1 commit into
mainfrom
feature/ui-theming-and-transcript-modernization
Jul 9, 2026
Merged

UI Theming System & Chat Experience Modernization#1
DevMando merged 1 commit into
mainfrom
feature/ui-theming-and-transcript-modernization

Conversation

@DevMando

@DevMando DevMando commented Jul 9, 2026

Copy link
Copy Markdown
Owner

What this PR does

This PR transforms MandoCode Desktop from a functional prototype into a polished,
personalizable app. It delivers three things: a full theming system, a
reorganized Settings experience, and a modernized chat transcript with the
affordances users expect from contemporary AI chat apps (VS Code, Claude, Cursor).

No changes to the AI engine — the CLI submodule stays pinned at v0.13.0. Everything
here is desktop UI.

Why

  • The app's pages looked inconsistent (chat was themed; Settings/MCP followed the
    OS instead), which read as unfinished.
  • Settings was a single long scroll with unexplained, technical toggles.
  • The chat transcript was plain text: no code coloring, no copy actions, and tool
    activity drowned out the conversation on long agent runs.
  • Several approval-flow papercuts interrupted users at the wrong times.

What's new

🎨 Appearance

  • 13 selectable themes — including Visual Studio Dark (new default), Dracula,
    Monokai, One Dark Pro, Tokyo Night, and 4 light themes. Every surface recolors
    live, including the chat, with no restart.
  • Window opacity slider (30–100%) for a translucent always-on-screen setup.
  • Choices persist per-machine and never touch the config file shared with the CLI.

⚙️ Settings

  • Reorganized into 6 tabs: Appearance, Connection, Generation, Behavior,
    Limits, Integrations.
  • Every setting now has a plain-English tooltip explaining how it changes the
    AI's behavior.
  • Fixed: the Model field sometimes showed placeholder text instead of the active
    model; the Tavily API key is now masked with an explicit View/Hide toggle.

✅ Approvals (the "review before the AI acts" flow)

  • Approval dialogs now appear only in the chat page — they no longer interrupt
    work in Settings/MCP. A clickable toast notification (plus a gold nav-icon
    indicator) appears if an approval arrives while you're elsewhere; clicking it
    jumps straight to the waiting dialog.
  • "Provide new instructions" opens a full-width editor with room to write, and
    Cancel returns to the original approval instead of abandoning it (misclick
    recovery).
  • Option buttons now carry icons (approve ✓ / deny ✗ / edit ✎ / stop ⏹).

💬 Chat transcript

  • Syntax highlighting for code in ~40 languages, colored to match the active
    theme (bundled locally — works fully offline).
  • Copy buttons on hover for any code block or whole reply.
  • Tool-activity grouping: consecutive operations collapse into one expandable
    "⚙ N operations" row once the AI replies — long agent runs stay readable.
  • Ctrl+F in-chat search with match count and navigation.
  • "↓ Latest" pill when scrolled away from the newest message.
  • Clickable file paths — any file the AI touches opens in your default app.
  • Save transcript button — exports the conversation as a standalone HTML file,
    colors intact (useful for sharing agent runs).
  • Fixed a message-ordering bug where multi-step responses posted out of order
    relative to approval prompts.

📄 Compliance

  • Added THIRD-PARTY-NOTICES.txt covering all bundled/compiled open-source
    components (a pre-Store-listing requirement).

…. Approval UX modal resizing, cancel returns, icons, chat-page scoping, toast notifications. Transcript modernization with highlight.js and grouping of cards.
@DevMando
DevMando merged commit 2da3118 into main Jul 9, 2026
1 check passed
@DevMando
DevMando deleted the feature/ui-theming-and-transcript-modernization branch July 9, 2026 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant