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.55.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
• Per-site memory (`browser.siteMemory.enabled`, on by default):wmux now keeps a per-workspace, per-domain record of what went wrong on a site. This release lands the store, the RPC surface and the Settings toggle; the hooks that write and read it follow. Records live under `~/.wmux/site-memory/<workspace>/<domain>.json`, are forgotten after 60 days without a repeat and deleted after 180, and an entry that looks like it carries a credential, an email address or a card number is refused outright rather than masked. Turning the setting off stops both recording and serving, while deleting what was already recorded keeps working.
• Browser tools now fill and read per-site memory. A replay that stops files the step it failed on against the site it was recorded for; a navigation that never reaches its host records why; a successful replay just counts. The next time the browser lands on that site, a short `[site]` block says what went wrong there before — capped at four lines and 600 bytes, and carrying no tool call to run, because the point is what not to expect.
• `browser_replay {action:"note", note:"..."}` writes one line to remember about the site you are on. It needs no live page, and refuses a line that looks like it carries a credential.
• Note that the replay half of this only applies on the chrome browser backend, since the builtin webview cannot run a saved flow at all; navigation failures and notes are recorded on either backend.
### Changed
• **MCP `tools/list` diet**:15 tool names were dropped from every profile's listing without losing capability — each stays callable via `tools/call`. `a2a_task_send` is now an unlisted alias of `send_message`; seven `browser_repl` sub-step tools (`browser_navigate_back`, `browser_hover`, `browser_drag`, `browser_select`, `browser_scroll_into_view`, `browser_highlight`, `browser_dialog`) are unlisted (still reachable inside a `browser_repl` snippet, whose description now carries their argument cheat sheet); and the pre-merge names `browser_session_{start,stop,status,list}`, `pane_{set,get}_metadata`, and `pane_unstash` are unlisted in favor of the merged `browser_session {action}`, `pane_metadata {action}`, and `pane_stash {restore:true}` tools. The unlisted pre-merge names remain callable for one release and will be removed afterwards. The `tools/list` payload shrank from 78,089 to 71,367 bytes on the default (full) profile and from 48,566 to 45,804 bytes on `--core`; the commander profile shrank from 56,059 to 53,297 bytes.
### Fixed
• **WSL panes keep their project and Claude conversation after restart.** Linux working directories are validated inside the selected WSL distribution and restored after Bash startup files. Per-pane Claude hooks capture the exact session ID for Resume, including when several panes share a project. The distro picker is honored for new panes; recovery retains the pane's resolved distro and Linux user. (#1263)
• Cold WSL starts no longer block the daemon. Failed recovery keeps the pane and scrollback with an error and a Retry control, including across further restarts.
• A pane restored on demand after exceeding the startup recovery limit now comes back like any other recovered pane on every platform:supervised commands resume their exact Claude session, supervision is re-armed, and the restored state is saved immediately.
• `repl_run`, `repl_reset`, `repl_sessions` and `browser_repl` now reject an
unknown option instead of silently dropping it. The error names the key that
was not understood and the ones that would have worked — for example
`unknown option "timeoutMs"; valid:code, session, timeout, cwd` — so a call
written against a misremembered option fails visibly rather than running under
a default and returning a result that looks like it honoured the request.
• MCP tools whose results the caller cannot size (console rings, network logs, full scrollbacks, page-produced JSON) could dump megabytes into the caller's context in one call. Every TEXT tool result is now capped at 64 KiB (head+tail, UTF-8 safe) with a marker naming the raise path; tools such as `terminal_read` and `browser_evaluate` accept a `maxBytes` input to raise the cap up to 512 KiB. Screenshots over a 2 MiB base64 ceiling are downscaled (JPEG, progressively scaled) with the applied format and scale stated in the result so coordinate readers can compensate, and `maxBytes` raises that ceiling to 8 MiB for the original; over-limit `tail_lines` / `limit` / `maxContentLength` / `maxLength` requests are served at their ceilings rather than rejected.
• `browser_screenshot` now accepts `maxBytes` (default 2 MiB, max 8 MiB) for the image payload, and `repl_run`, `browser_repl` and `browser_smart_snapshot` accept `maxBytes` for their text results.
• The truncation marker named a `maxBytes` raise path on tools that do not declare one — a silently dropped key on most tools, and an error on `repl_run` / `browser_repl`. It now names the raise path only where passing `maxBytes` works, and otherwise reads `[truncated:N of M bytes shown]`.
• A capped result that is a single top-level JSON array (`browser_extract_data`, `browser_network`) is now truncated by dropping trailing items and appending one `{"_truncated":{shownItems, totalItems, totalBytes}}` element, so the result is still parseable instead of being cut mid-value.
• **Remote hosts name resumed Claude sessions.** A host serving `wmux web` never reported `agentName`/`agentStatus` for a pane running a resumed or named Claude Code session (`claude --resume`). Those sessions set the terminal title to the session name and draw no banner, so the screen detector never names them, and the host returned before checking the hook and process evidence it already had. The remote roster row on the attaching desktop therefore never appeared. The host now reports the agent whenever hook authority or the process tracker identifies it; a stale screen name with no live evidence is still suppressed. (#1304)
## What's Changed
• fix(mcp):reject unknown options on repl_* and browser_repl by @openwong2kim in https://github.com/openwong2kim/wmux/pull/1297
• feat(browser):per-site procedural memory — store, RPC and setting by @openwong2kim in https://github.com/openwong2kim/wmux/pull/1298
• feat(browser):site-memory write hooks, [site] landing hint and a note action by @openwong2kim in https://github.com/openwong2kim/wmux/pull/1299
• chore(mcp):shrink tools/list via unlisted aliases and merged action tools by @openwong2kim in https://github.com/openwong2kim/wmux/pull/1302
• fix(mcp):cap text tool results at 64 KiB with per-call maxBytes raise by @openwong2kim in https://github.com/openwong2kim/wmux/pull/1301
• fix(daemon):report hook/process agent identity when the screen detector has no name by @brinkercode in https://github.com/openwong2kim/wmux/pull/1304
• fix(wsl):restore directories and exact Claude sessions by @thomas-pedersen in https://github.com/openwong2kim/wmux/pull/1263
• chore(release):3.55.0 by @openwong2kim in https://github.com/openwong2kim/wmux/pull/1306
## New Contributors
• @brinkercode made their first contribution in https://github.com/openwong2kim/wmux/pull/1304
**Full Changelog**:https://github.com/openwong2kim/wmux/compare/v3.54.0...v3.55.0