What's Changed
- Updates now install automatically by default. When a new release is out, the daemon installs it (through
brew upgradefor Homebrew installs) and restarts once no approval is pending. If you already choseaskoroffwithmoshi-hook set auto-update, that choice is kept. - New: restart the daemon from the app. It waits until no approval, terminal question or install is in progress, so a restart never cuts an update short.
- New: Browser Preview's port scanning is now a switch in the app's host settings. Turning it off stops HTTP probing; turning it on keeps any port list you set with
moshi-hook set scan-ports. - New: the Files browser can open folders outside your home folder. The working folder of a running agent session opens without setup, and
moshi-hook set files-roots /mnt/c/Users/me/projadds more folders, such as WSL projects on/mnt/c. Agent sessions started before this version need a restart before their folder can be opened this way. - New (web app): ⇧⌘P, or typing
>in ⌘K, opens a command mode that lists actions instead of places: the open preview's actions, the current tab or pane's menu and its workspace's, then every menu bar action with its shortcut. Toggle preview moves to ⌥⌘P. - New (web app): pick a notification sound for each event in Settings → General → Sounds. Done now defaults to a rising chime and needs-input to a double knock, so they're easier to tell apart. Classic keeps herdr's sound.
- New (web app): a download button in the chat image viewer saves the original image.
- Fixed: Codex sessions started with a different
CODEX_HOME(for example a per-profile home) now show up, with their transcript, title, usage and Chat View. - Fixed: Jump To no longer spins forever for a session running in a plain shell outside tmux or herdr; it says there are no workspaces. A brief failed check no longer drops a tmux session to a plain shell.
- Fixed (macOS): restarting the daemon, by hand or after an update, no longer hangs while clients are connected.
- Fixed (macOS): when the Keychain is locked or can't be read (for example when doctor runs over SSH), doctor now says so and how to fix it, instead of reporting that Moshi couldn't be reached. It also tells you whether pushes are affected.