v3.8.0
-
过载告警从 per-bot 开关迁到全局设置:选一个「通知 Bot」,由它自己的 daemon 采样整机 load/内存,进入过载阈值时给管理员发私信,其余 bot 的 daemon no-op。解决一台机多 bot 各自探同一过载边沿重复发私信的问题。
-
启动时幂等迁移旧 per-bot 开关到全局目标(跨进程锁 + never-throw);per-bot 字段保留兼容回滚。
-
校验:拒 apiOnly / 无管理员 / 未选目标 / 目标离线;匿名面板整段剔除过载配置。
-
异形屏(矮屏)左侧 sidebar 无法滚动 → sidebar 改 flex column,导航区成为可滚容器。
-
全局设置在窄/异形屏下选项重叠 → 三列瀑布流改为列数随视口自适应(窄屏降到 2/1 列),窄列表单行改单列堆叠。
-
会话「详情」dialog 内图标按钮 tooltip 被 dialog 遮住 → tooltip 气泡挂到 dialog 的 top layer 而非 body。
✨ 新功能
- trigger: per-turn model + reasoningEffort 覆盖(Codex 家族·新建会话·PR A / 拆自 #638) (#639)
- lark: 支持 AI 动态修改当前群名称 (#643)
- relay: 私密 ephemeral /relay 选择卡,隐藏会话元数据 (#654)
- dashboard: add writable web terminal action (#642)
- trigger: codex-app per-turn token usage → trigger-result(PR B / 拆自 #638) (#657)
- claude-code: 自动确认运行中 /effort 切档的 Yes/No 框 (#664)
- lark: 新增 /invite 元命令,@bot /invite @群外bot 拉其进群 (#680)
- dashboard: 展示会话最近问答预览 (#684)
- grant: 支持授权有效期和消息额度 (#678)
- lark: 普通群话题首回合注入话题 hint(按需 botmux history)+ 适配 @types/react@19 解锁 build (#673)
- bot-registry: core-only / API-only bot 模式(无飞书凭证,纯 HTTP 控制 API 驱动) (#668)
- card: 用量展示位置三态 usageDisplay(默认流式卡正文,可选页脚/关) (#637)
- backend: 支持 ZMX 持久会话后端 (#458)
- dashboard: 重构 Bot 配置为聚焦式分类编辑 (#612)
- card: 用量实时刷新 + 本轮增量 + 页脚仅上下文 (c824c45)
- substitute: 替身模式增加声明式群聊黑名单(excludedChats) (#677)
- add group message listeners (#617)
- overload: 机器过载告警迁移到全局设置 + 通知 Bot 门控 (#702)
🐛 修复
- bridge: 支持无回复回合静默结束 (#554)
- dashboard: 平台绑定时自动初始化面板 token (#648)
- claude-code: 默认透传 /effort 命令 (#649)
- prompt: 消除 Claude Code「无可见输出」误判导致的重复发送 (#544)
- bridge: 无回复 sentinel 改为末行终止符匹配 (#656)
- overload: 跨 bot 聚合降压会话 (#661)
- prompt: 转义 XML-like 提示正文中的字面标签 (#640)
- codex: 修复冷启动首条消息误判裸壳 (#352)
- skills: agentbuddy 下载凭证过期时快速失败而非卡处理中 (#663)
- skills: agentbuddy 快速失败杀整进程组(修 shim 孙进程漏杀仍挂起) (#665)
- config: Dashboard 链接跟随 listen host 而非误报 LAN IP (#667)
- mcp: 修复空数据目录污染项目路径 (#660)
- worker: 迟到 CLI 就绪后恢复首条消息 (#662)
- cli: bots list 在读隔离下从 send-cred 注册自身,避免静默返回空花名册 (#676)
- worker: 修 iOS 三方输入法在 WebShell 无法输入 / 语音纠错重复 (#666)
- dashboard: 为复制操作增加降级兜底 (#675)
- core: 修 botmux send 因 PID 复用串到别的 bot 旧会话 (#679)
- sandbox: macOS 安全基线放行 iokit-open,修复沙箱内浏览器 SIGSEGV (#670)
- core: 修 dashboard 改 per-bot env 后 /restart 不生效(live-worker 仍用旧快照) (#681)
- adopt: pendingRepo 期拒绝接管并给一键关闭卡 (#669)
- hermes: 回归标准 botmux send-优先引导,对齐其它 CLI 协作模型 (#653)
- grant: 授权卡按钮点击无反应——表单提交字段钉回 action_type: form_submit (c92fb0b)
- grant: 授权成功就地更新原卡(正文@被授权人),不再发通知卡+撤回原卡 (2d1faa4)
- lark: 修 1V1 群拉新 bot 后 @ 新 bot 时老 bot 跟回(chatStatsCache 陈旧窗口) (#691)
- lark: 整群 /grant 后外部 bot @ 仍误弹授权卡,并把 bot 闸门收敛到单一 talk 谓词 (#685)
- lark: 卡片扁平化剔除 botmux 回调按钮(🔊 语音总结等),发送侧统一打标长期防腐 (#692)
- dashboard: 修改头像/名称提示改全宽行内条,不再互相重叠或压住页签 (3753086)
- dashboard: 无提示时头像栏不再多留空行(row-gap:0 让空状态行零占位) (591eb9d)
- dashboard: 会话常驻上限/启动命令标题统一为 section 标题(与同页签其它 tile 一致) (a519b7a)
- send: 多人会话禁用 --mention-back 并修复人数查询注册顺序(兜底卡断链 deferred) (#689)
- dashboard: bot 配置页 toggle 开关与单行标签垂直居中 (5656c6c)
- reaction: 修复 Grok card-off 假 DONE / 卡 GoGoGo (#633)
- sandbox: 白名单纳入本 bot 角色库子树,修复沙盒下角色系统整体不可用 (#644)
- adopt: 收口 Codex-notifier 接管绕过 pendingRepo 守卫的两处 race (#686)
- dashboard: 会话预览图标居中 + 浮层渲染 markdown 并保留换行 + 去掉 ••• 省略号 (#697)
- dashboard: 修复启动 Shell 刷新后不回显 (#696)
- test: 修复 CI build 恒红——sandbox 测试按运行时 bwrap 能力门控 + 更新 grant 陈旧断言 (#700)
- codex: hook-trust 绕过改默认开的全局开关(dashboard 可关)+ 修 RPC viewer 参数漏传回归 (#706)
♻️ 重构
- plugins: 内联 Dashboard URL host 格式化 (#672)
📝 文档
- slash-commands: 对齐命令文档 + 清除 /land 废弃残留 + 加 guard (#682)
🔧 其它
- release: 新增手动触发的 npm dist-tag 回滚 workflow (#651)
- release: 发版后给本版本 PR 自动留「Released in vX.Y.Z」评论 (#652)
- Create SECURITY.md (4eb131d)
🙏 感谢贡献者
@xiongz-c @ammend @47seek @xiaoxueSunn @nil-err @Barrierml @LucasIcarus @anarkh @tgao-bd @leohxj @xu4wang @pigeoner @superShen0916 @hyperdai @DeepColds @alexander2618 @ChaseElectr @sensuossss @HanpyBin @Littlezjh @echookai
Full Changelog: v3.7.1...v3.8.0