Aquesta és una versió anterior. La versió actual és la 4.10.0. wmux 4.10.0 · Data de publicació:
Fitxers d’instal·lació 3.27.0
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| 64 bits | EXE | Usuari actual | — | github.com | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
Added
- A merge conflict on a pane's PR now wakes the owning workspace too. Completing the PR-feedback trio (red CI, review comments, and now conflicts): when a pane's pull request becomes conflicting against its base, the workspace's orchestrator wakes once — auto may send the pane one instruction to rebase/merge its base and resolve the conflict, assist reports, off stays silent. Edge-triggered per episode (fires once, re-arms when the conflict clears) and rides the same throttled gh read the review-comment router already makes, so it adds no extra polling. GitHub via gh's mergeable, GitLab via has_conflicts.
- New Review tab in the deck: every workspace's diff, one screen. The dock now has a Review tab listing every open workspace with its branch, PR badge, and uncommitted diff stat (files / +adds / −dels), dirty rows first — so when several agents work in parallel you can see at a glance who changed what and step into each review. The Diff action jumps to that workspace and opens the existing diff surface (hunk-level review/adopt unchanged); Go just switches. Pull-based (load on open + manual refresh), no polling.
- New PR review feedback now routes to the owning workspace too. When a reviewer leaves a comment (conversation, review verdict, or inline code comment) on a pane's pull request, the workspace's orchestrator wakes with the author and a snippet of the latest comment — under the same policy as the CI signal: auto may send the pane one instruction to address the feedback, assist reports, off stays silent. Watermarked per pane on comment timestamps, so checking out a branch with existing review history never wakes anyone; only strictly-new comments fire, once per batch. Rides the existing gh caches (30s PR-list TTL, updatedAt-keyed detail), throttled to one check per pane per minute.
- A workspace's orchestrator now wakes when its PR turns red, and can drive the fix. When a pane's pull-request CI checks flip from passing/pending to failing, wmux fires a one-shot signal that wakes the owning workspace's brain through the same event-push path as a stopped pane — so a broken build routes straight back to the agent that owns it instead of waiting for you to notice the red badge. It is edge-triggered (fires once per red transition, re-arms after the PR goes green again, never spams while it stays red) and inherits the workspace's autonomy policy exactly: auto may send the pane one instruction to investigate and fix the failing checks, assist surfaces it as a report, and off stays silent. The wake prompt carries the PR number and URL so the brain acts without a poll. Closes the "detect → route back to the responsible worker" loop that competing multi-agent orchestrators ship.
- Sidebar workspaces now show git sync state next to the branch name — ↑2 ↓1 ●3 for commits ahead/behind the upstream and uncommitted changed paths. A clean, synced checkout shows nothing (only trouble earns pixels), everything renders in the muted context color, and the tooltip spells the numbers out. Fed by one git --no-optional-locks status per repo per 15 s riding the existing metadata poll; a branch switch invalidates immediately.
- Sidebar workspaces now show how long they've been idle — a muted · 3m next to the name once a workspace has gone a minute without agent activity, counting up through minutes/hours/days. The status dot already said what a workspace is doing; this says how long it's been waiting for you, which is what matters when running several unattended agents. Hidden while an agent is running and until the first activity of the session. Plain terminal output also counts, not just agent activity: shell-only workspaces never tripped the agent activity gates (the daemon's byte-threshold 'running' detector needs a 2000-bytes/3s burst), so a pane you'd been using by hand used to read as idle-forever. Raw PTY output now stamps a separate per-surface clock (throttled to once per 30 s, kept apart from the agent-status derivation so a quiet ls can't light status dots), and the badge reads whichever clock moved last.
Changed
- A driving loop now proposes its own completion instead of idling to the budget. When an autonomous (Continue) loop judges its objective met — the done-when checklist all passing, or the goal plainly achieved with no checklist — it now raises a confirm-completion decision (Mark done / Keep going) and stops, rather than continuing to auto-wake until the iteration budget runs out. Because a pending decision halts every wake, a finished overnight loop pauses for your confirmation instead of burning the rest of its budget doing nothing. You still have the final say; the brain never marks itself done.
- The loop's iteration budget reads as "pause after N auto-wakes" now. The bare "iterations: 25" field never said what an iteration was; it's now labelled pause after [25] auto-wakes with a plain-language tooltip (one wake ≈ one iteration; raise it for long unattended runs), so the number means something when you set it.
- The loop setup dialog now shows what the loop will actually be allowed to do, and defaults to acting instead of just watching. Because a loop's real authority is min(workspace mode, tier) and the approval-press capability lives on the workspace mode (Auto), the modal previously hid a trap: you could configure a "Continue" loop expecting unattended approvals, then it would stall on the first prompt because the workspace was only Assist. The dialog now reads the workspace mode and spells out the effective authority (drive panes / press approvals, each ✓/✗) with a one-line hint — "raise the workspace to Auto to press approvals unattended", or a warning when the mode is Off. The tier also defaults to Continue now (was Report-only), since "Start a loop" that only observes read as inert on first use; the dangerous caps stay gated on the mode, so the active default is safe.
- Fan-out is now Multi Task (한국어: 병렬 작업) — and it can run N different jobs in parallel. The dialog previously sent one shared prompt to every spawned task, which only covered the "same work, N attempts" scenario. Each task row now has its own prompt field: fill the shared prompt for common context, the per-task prompt for that task's actual job, or both (they're combined). A Compete/Parallel toggle makes the two use cases explicit — Compete collapses the dialog to just the shared prompt, Parallel shows per-task fields. Task count is now a row of click targets (1–8) instead of a slider. A task can also have no prompt at all: it opens with just the worktree and an idle agent pane for you to type into by hand, instead of being rejected.
- A running loop's authority now composes with the workspace mode instead of overriding it. Loop caps were a blanket write that forced approval-press off, so raising the workspace to auto and starting a loop paradoxically lost approval authority — the most autonomous mode plus a mission was weaker than the mode alone. Loop caps are now min(mode ceiling, tier): the mode is the standing trust ceiling, the loop tier narrows it. A report loop only observes; a continue loop drives panes and — only when the workspace mode is auto — presses approvals, making auto + loop the true unattended supervisor while assist + loop stays notify-on-approval. The dangerous press capability now lives solely on the workspace mode (a deliberate standing choice), never on a per-loop dropdown. Changing the mode mid-loop re-narrows the new ceiling by the loop's tier rather than blowing the tier away.
- The orchestrator's agent-mode chip is now colour-coded by state, so the current autonomy is readable at a glance instead of a uniform grey pill. off stays neutral with a grey idle dot; assist turns warm amber (alive) with a subtle tint; auto gets a red outline + red dot (the destructive tier, red tint at rest — never a fill). A leading status dot carries the same meaning-class as the fleet dots.
- macOS default launch hotkey is now Ctrl+7 (was Ctrl+F7). F7-based combos are a trap on macOS: bare F7 is consumed by the media keys, and Ctrl+F7 is the system-wide "Change the way Tab moves focus" shortcut, so the app never received either. An untouched saved F7/Ctrl+F7 default is migrated automatically on load; Windows/Linux keep F7.
Fixed
- A failed legacy-state migration retry can no longer silently lose channel data. When the daemon detected that an older daemon had written channel state directly to disk but failed to fold that state into the canonical event log, it logged a warning and kept booting — and the very first write afterwards erased the marker the promised next-boot retry depended on, silently dropping the old daemon's data. The daemon now refuses to boot in that state, leaving everything on disk intact so the next boot re-detects the condition and completes the retry.
- The orchestrator control bar no longer strands the "Recover agents" button off to the right. The reboot-recovery quick action was pinned with ml-auto in a wrapping flex row; in the narrow dock the bar wraps, so the button was shoved alone to the far right of its own line with a wide gap after Schedules. It now flows inline with the other controls.
- In-app "Install hooks" no longer fails with "Could not locate the bundled wmux-bridge.mjs". The bridge locator only knew the CLI's layout; when the install button called it from the packaged app's main process, it walked right past Resources/cli-bundle/ where the bridge actually lives. The packaged path is now a search candidate, so the one-click install works.
- macOS titlebar no longer shifts the WMUX segment 72px right. The traffic-light reserve now lives inside the mantle segment, so the logo, + button, and segment seam line up with the sidebar edge below again.