Skip to content

v0.9.1

Choose a tag to compare

@jiunbae jiunbae released this 19 Oct 07:03
· 175 commits to main since this release
ca90288

Added

  • muxa runs natively on Windows (PowerShell) with rmux as the pane host — no
    WSL needed. IPC moves to a named pipe and commands are written for
    PowerShell. The process table comes from sysinfo. muxa daemon start
    detaches muxad through WMI, and muxad --log-file writes its own log. rmux
    endpoints follow a server across restarts, though its pipe name changes.
    Watch popups, hooks, status, messaging, snapshot/restore, reload mux and
    the PowerShell profile autostart are verified; the gaps are listed in
    docs/WINDOWS.md.
  • muxa restore --boot and the restore-at-login init component restore
    the newest snapshot after a reboot. The hook rebuilds only into a
    multiplexer server with no sessions, starting it if it is down, and
    otherwise changes nothing. It is registered as a systemd user unit, a
    LaunchAgent, or a Task Scheduler task.
  • The dashboard sharing browser smoke test also runs on Windows, against a
    private rmux label.
  • Agents can explicitly request required human attention with muxa msg attention
    or muxa_request_attention. Muxa for Mac aggregates these durable operator
    requests across Fleet hosts, displays pending decisions in Attention/Inbox and
    the Dock badge, and posts per-device deduplicated notifications that open the
    exact request. Replies resolve on every connected client, including after the
    originating terminal closes; disconnected hosts retain their last messages.

Fixed

  • On Windows and macOS, the dashboard sharing and operator databases and the
    automation ledger honour XDG_DATA_HOME like every other muxa store.
    Before, a sandboxed daemon shared the user's real ones.
  • A snapshot no longer records a shell profile's muxa daemon start, caught
    mid-flight, as the pane's program, so a restore stops typing it into the
    new shell.
  • The dashboard sharing smoke test opens shares through the pane drawer; its
    old share button had been removed from the dashboard.
  • muxad on Windows also stops cleanly on Ctrl+Break, the console stop a
    supervisor can send to its process group. Dashboard socket labels shorten
    Windows pipe paths too.
  • Collaboration host scope accepts namespaced pane IDs such as rmux:%N
    across windows and sessions. Room-local aliases and role selectors retain
    their scope, and duplicate pane IDs across servers remain ambiguous.
  • Muxa.app builds with Xcode 27: the embedded muxad/muxa build no longer
    hands Xcode's MACOSX_DEPLOYMENT_TARGET to the host proc-macros, which then
    failed to load (can't find crate for tokio_macros). The deployment target
    still applies to the shipped binaries.
  • muxa reload resumes the right conversation on macOS. It reads each pane's
    argv with its argument boundaries instead of the joined ps line, so an
    initial prompt is no longer replayed word by word (a Codex argument error)
    and a quoted --append-system-prompt value survives. The agent and its id
    now come from the pane's own command line: a stale registry row no longer
    puts a Claude id on a Codex pane, a screen-detected row takes the id its
    command names, and a Codex pane with no id is matched to the one thread
    begun in its directory after it started. An agent started with an
    instruction whose conversation is still unknown is left for a person
    instead of being relaunched as the same task again, and continue goes
    only to agents whose conversation actually came back.