Skip to content

Terminal, notes, and music player fixes ahead of the first release - #27

Merged
DevMando merged 6 commits into
mainfrom
feature/transcript-links-music-fixes-terminal-hint-and-notes-redo
Jul 28, 2026
Merged

Terminal, notes, and music player fixes ahead of the first release#27
DevMando merged 6 commits into
mainfrom
feature/transcript-links-music-fixes-terminal-hint-and-notes-redo

Conversation

@DevMando

Copy link
Copy Markdown
Owner

Summary

Six small, independent fixes and improvements to MandoCode Desktop, bundled together as one release-prep pass. Nothing here touches the AI engine or the CLI — this is all app UI/UX polish.

  • Files the assistant mentions are now clickable. Previously only file operations (Write, Diff) produced a clickable link — if the assistant just said "I created xbox.txt at C:...\xbox.txt" in a normal sentence, that path was plain text. Now any file path or filename the assistant writes in a message is clickable and opens in the default app, same as before.
  • Fixed the music icon staying white regardless of theme. It was the one icon in the app that didn't follow the color theme — now it does.
  • Fixed the music player silently failing on empty folders. Picking a folder with no MP3s used to create a broken, invisible playlist entry with no way to remove it. It now checks first and tells you clearly instead.
  • Fixed a mixed-up "last folder" bug across the whole app. Every folder/file picker in the app (project root, music, background image, skills, transcript export) was sharing one memory of "the last folder you browsed." Picking a folder in one place could make a totally unrelated picker open in the wrong location elsewhere. Each picker now has its own memory.
  • Added a very light-touch hint to install the command-line tool. If someone opens the built-in terminal and doesn't have the mandocode CLI installed, they'll now see an occasional one-line tip (at most once every 20 terminal sessions, and never once it's installed) suggesting the install command. It's not a popup or a repeated nag — just a quiet aside.
  • Added Redo for the notes assistant. Undo already existed for AI-assisted note edits; you can now redo it back too.

Test plan

  • Build succeeds with 0 warnings/errors (confirmed locally before opening this PR)
  • Open a note, have the assistant insert/replace text, confirm Undo then Redo both work and toggle back and forth
  • Open the terminal with the mandocode CLI not installed, confirm the install hint appears once and only once for a while
  • Try adding a music playlist folder with no MP3s in it, confirm a clear message appears and nothing broken gets created
  • Switch themes and confirm the music icon changes color along with everything else
  • Pick a folder in the Music flyout, then open the "change project root" picker, confirm it does NOT default to that same folder
  • Ask the assistant to reference a file by name in a normal sentence, confirm it renders as a clickable link

DevMando added 6 commits July 28, 2026 12:09
Op cards (Write/Diff) already linked their file paths, but a path named in
ordinary prose ("I've created xbox.txt at C:\...") stayed dead text. The
transcript now walks each assistant message's text and wraps path-shaped
runs in the same clickable link the op cards use, so clicking opens the
file in its default app either way.

The matching regex is deliberately conservative: it only treats something
as a path if it's drive/UNC-rooted or ends in a known file extension,
which is what keeps prices, version numbers, and bare URLs from being
mistaken for file paths.
Every other rail icon gets its color from RefreshNavIcons, but the music
icon was never in that list, so it fell back to WinUI's default
foreground instead of following the current theme. It now pulls from the
same theme brush the gold equalizer bars already used, so it retints
automatically whenever the theme changes.
Picking a folder with no MP3s used to create the playlist anyway, and
that empty playlist could never appear in the picker again afterward
(the list only shows genres that actually have a track), so it became an
invisible, unremovable folder on disk. Re-picking the same folder would
then falsely claim it was "already added."

The folder's MP3 count is now checked before anything is created. An
empty folder leaves no trace and gets a clear, specific message instead.

Also gives this picker its own SettingsIdentifier, alongside the fix in
the next commit.
Windows remembers a picker's last-visited folder per SettingsIdentifier,
and none of our pickers set one — so every FolderPicker/FileOpenPicker/
FileSavePicker in the app was sharing a single memory slot. Picking an
MP3 folder in the Music flyout, for example, would silently become the
starting folder the next time you opened the "change project root"
picker, even though the project root itself never changed.

Each picker (project root, chat background image, skill install folder,
skill install zip, transcript export) now gets its own identifier, so
they can no longer bleed into each other.
The terminal is the one place someone would actually run the CLI, so a
dim, one-line note now appears there — but only once every 20 shell
sessions, and never at all once the tool is detected as installed. It's
written straight into the shell's own display buffer (never through its
stdin), so it can't be mistaken for a command or interfere with anything
in progress.

Detection is a local file/PATH check with no network call, and every
uncertain case (can't read the counter, can't resolve PATH) resolves to
staying silent rather than risking a repeat.
Undo used to be single-use: clicking it restored the note but forgot
what it had just undone, so there was no way back to the assistant's
edit. This reframes the same state as a toggle between the buffer right
before the edit and right after it, so Redo can put it back — and you
can flip between the two as many times as you like. Still single-level
by design: typing anything that lands outside those two exact states
clears both, same as it already did for Undo alone.
@DevMando
DevMando merged commit 1d5cd81 into main Jul 28, 2026
1 check passed
@DevMando
DevMando deleted the feature/transcript-links-music-fixes-terminal-hint-and-notes-redo branch July 28, 2026 19:25
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