WebMux v0.4.0 更新说明
在 GitHub Release 查看与下载(外部链接)下载最新版本
更新内容
本版本加入服务端启动配置和多条暂存,设置页可查看公网隧道的运行状态,并提供 Named Tunnel 配置指引。默认监听地址改为 0.0.0.0:7681:未配置 token 且监听地址不是 loopback 时,每次启动自动生成强 token。原生终端附着会把本地终端的明暗配色报告给会话,Claude Code 与 Codex CLI 预设也会加载 ~/.bashrc。
⚠ 升级须知
- 默认监听所有接口,并自动生成 token:默认
listen从127.0.0.1:7681改为0.0.0.0:7681。未配置token且监听地址不是 loopback(包括默认值)时,每次启动生成 256 位随机 token,并在终端打印带#token=的本地链接;以 systemd / launchd 运行时该链接会写入 journal 或日志,且每次重启更换。需要固定 token 时,请执行webmux config init(webmux service install初始化的配置已带 token)。只有仅监听 loopback 且未启用隧道时,空 token 才表示不认证。正在运行的实例可通过webmux status --json --reveal-token读取当前 token。配置中显式写了listen的用户不受默认值变化影响。 - agent 预设改为经交互式 bash 启动:默认
claude、codex预设与 omp 一样以bash -ic 'exec <agent> "$@"' <agent>启动。配置中已声明[[presets]]的用户需要手动修改对应cmd;已保存的启动配置是命令副本,不会随之改变。
启动配置(#103)
- 设置页新增“启动配置”:把“名称 + 完整命令 + 环境变量”保存在服务端,换浏览器或设备后仍可使用;可从内置预设填入命令,名称默认取预设标签。环境变量值默认遮挡,列表与新建会话页只显示变量个数。
- 新建会话页并列显示内置预设与已保存配置,一次性命令收在“临时命令(不保存)”中;上次选择从
lastPreset自动迁移为lastLaunch。 - 新增
/api/launch-configs增删改查接口:列表只返回envNames,变量值经GET /api/launch-configs/{id}读取。POST /api/sessions新增configId,与preset/cmd/args/env互斥。 - 配置保存在
<state_dir>/launch-configs.json(0600,原子写入),由独立文件锁保护;文件损坏或被同一状态目录的另一实例占用时,该功能返回 503 并在设置页显示原因与路径,内置预设与临时命令照常可用。
草稿与暂存(#98)
- 同一会话可保留多条暂存,分别编辑、排序、取用和删除,与当前草稿互不覆盖;暂存面板以图标操作,显示条数、字符数及满额原因。
- 界面图标统一为本地打包的 Iconify(tabler)图标。
公网隧道(#101、#104)
- 设置页区分 Quick / Named Tunnel,按步骤说明创建隧道、获取隧道 token、发布应用、写入配置和重启验证,明确根 token 与隧道 token 的区别及 43 字符要求;新增 Named Tunnel 配置指南。
- 设置页按运行时状态显示隧道未启用、启动中、已就绪或异常停止;就绪时区分 Quick / Named 并显示公网地址。
终端与原生附着
- 同步本地终端配色:程序已开启明暗报告(DEC 2031)时,
webmux attach/run在取得控制后向本地终端查询背景色(OSC 11),按亮度向会话发送CSI ? 997 ; 1|2 n,查询应答本身不写入会话。之前从浏览器切到原生终端后,程序会沿用其他设备的配色。分离时关闭本地终端的 2031 模式。本地终端不应答 OSC 11 时不发送报告;Windows Terminal 不支持 2031,附着期间切换主题后需重新附着或按 Enter 重新取得控制。 - agent 预设加载
~/.bashrc:Claude Code、Codex CLI 预设经交互式 bash 启动,~/.bashrc中的环境变量与PATH对 agent 可见,追加参数原样传入。
其他
- 登录页的共享 Token 右侧新增问号提示,说明 token 的用途、生成方式、配置路径和启动参数覆盖(#107)。
- 移除工作区底部的两条提示(#102)。
- Node.js 升级到 26.12.1,文档改为直接安装 pnpm(#105)。
- OpenSpec 规格同步并归档全部 14 个变更(#106)。
验证
- 发布提交:
c352ae862c9c9c1270c2563a1ca6a32bd737c547,tagv0.4.0。 - Release 工作流通过:前端构建、Go race 测试,以及
CGO_ENABLED=0下 Linux / macOS 服务端和 Windows 控制台 / 托盘的 amd64、arm64 构建;SHA256SUMS校验与版本检查均通过。 - 在发布提交上,Test 工作流全部通过:格式与构建、Ubuntu Go race、Vitest 单元与浏览器测试、Storybook、Ubuntu / macOS E2E,以及 CLS 和 4 倍 CPU 降速检查。首次运行中
push.spec.ts的 Service Worker 通知用例在 chromium-mobile 上未显示通知(重试通过,按failOnFlakyTests记为失败),重跑失败的作业后全部通过。 - 未在 Windows 实机上验证本版本的托盘发布产物;原生附着的配色同步只用模拟终端与 PTY 冒烟测试验证,未在各终端实机上逐一验证。
下载
| 文件 | 用途 |
|---|---|
webmux-linux-{amd64,arm64} |
Linux 服务端(也用于 WSL 2) |
webmux-darwin-{amd64,arm64} |
macOS 服务端 |
webmux-tray-windows-{amd64,arm64}.exe |
Windows 托盘,管理 WSL 中的 WebMux |
webmux-windows-{amd64,arm64}.exe |
Windows 控制台客户端(建议改名为 webmux.exe 并放入 PATH) |
SHA256SUMS |
全部 8 个文件的 SHA256 校验值 |
完整变更:https://github.com/mzdluo123/webmux/compare/v0.3.0...v0.4.0