乐于分享
好东西不私藏

OpenClaw v2026.6.5-beta.2 预发布:版本号改成年月补丁格式,TUI里的幽灵消息也终于消失

OpenClaw v2026.6.5-beta.2 预发布:版本号改成年月补丁格式,TUI里的幽灵消息也终于消失

我用 OpenClaw 做 AI 助手编排已经好几个月了。上个月有件事让我特别窝火:我对着 TUI 窗口打了一大段 prompt,按回车,消息消失了。不是没发送成功,是显示层面整个不见了。我 reload 历史,它又冒出来,但位置不对,夹在两条旧消息中间,像个幽灵。刷新几次之后还多出来一行空白的”幽灵行”。那个下午我在四个 issue 之间来回跳,最后发现这 bug 牵涉了至少四个不同的根因。今天 OpenClaw v2026.6.5-beta.2 发了,修的就是这种让人血压飙升的问题。而且 beta.2 还做了一件我念叨了很久的事。

版本号改了,我终于知道手里拿的是哪个月的构建了

在 beta.2 之前,OpenClaw 一直用 semver——v1.x.x 那种。但问题来了:这东西迭代太快,一个月能推十几个 pre-release,semver 的 minor/patch 对我这种追新的人来说等于废纸。我根本记不住 v1.2.43 和 v1.2.44 之间差了几天。而且跟同事沟通的时候说”你升到 1.2.47 了吗”,大家都要去翻 changelog 才知道那是上周的还是上周二的。

从 beta.2 开始换成了 YYYY.M.PATCH。2026 年 6 月的基线就是 2026.6.5——一眼就知道是 6 月的第 5 个补丁。以后聊版本:”你升到 2026.6.5 了吗?””哦,那是 6 月的,我现在还在 2026.5 的尾巴上。”多清楚。旧 tag 也做了向后兼容,不会出现升级脚本跑崩的情况。

TUI 幽灵消息,这次是真的从根上修了

开头说的那个幽灵消息,beta.2 集中修了四个相关的 issue:#86205、#89600、#88592、#90123。我大概梳理了一下这些问题到底出在哪:

  • 历史重载时消息丢失——某些场景下 history reload 把用户刚发的消息当”待确认”给丢了。
  • Abort window 跳位——中断请求后,后续消息渲染到错误的行索引。
  • RunId 重分配导致行错乱——同一个 session 内 runId 被重置时,消息队列没清干净。
  • 幽灵行残留——某个边界条件在消息列表末尾残留了一个空行占位。

我试了一下午,反复 abort、reload、切 session,消息顺序总算稳住了。老实说,这比加十个新功能都解气。

Auth profiles 搬进 SQLite,npm 插件终于不乱报了

认证 profile 之前存在哪?坦白说我之前没仔细想过——直到有一次我切了个 profile,有些凭据莫名其妙丢了。beta.2 把 auth profiles 迁到了 SQLite,持久化终于有个靠谱的地方。连带修复了几个 npm 插件安装的坑:现在安装时会保留 trusted pin,pre-release fallback 也不再带上陈旧的 integrity 校验值。之前有几次 npm 插件安装报 integrity mismatch,我一度以为是网络问题,结果其实是旧缓存捣乱。

ClawHub 技能终于能直接从 GitHub 仓库装了

之前装 ClawHub skill 只能走 registry 分发,想装某个 GitHub 仓库里的 skill 得先 clone 到本地再手动 link。beta.2 的 install API 支持直接指定 GitHub 仓库了——下载固定 commit 版本,保持安装策略检查(不会让你随随便便跑未审计的代码),并且会上报安装遥测。我试了从几个仓库装 skill,流程干净,不需要手动介入。

对了——还有 cron 的 JSON 到 SQLite 迁移。doctor 预检时会自动把旧版 JSON 格式的 cron 配置搬进 SQLite,不需要我手动跑迁移脚本。另外 service env 占位符不再遮盖 state-dir 的 .env 值了——之前有个 cron 任务明明配了环境变量,结果被 service 层的默认值盖掉了,排查了半天才发现。

好,说点实际的吧。以下是从 v2026.6.5-beta.1 到 beta.2 的全部改动:

更新日志

NEW 版本号从 semver 重构为 YYYY.M.PATCH 格式(基线 v2026.6.5)

NEW 向后兼容旧版 semver tag

NEW 认证 profile 持久化迁移至 SQLite

NEW npm 插件安装时保留 trusted pin

NEW pre-release fallback 不再使用陈旧的 integrity

NEW ClawHub skill 安装 API 支持从 GitHub 仓库直接安装(固定 commit)

NEW ClawHub skill 安装时保持安装策略检查

NEW ClawHub skill 安装遥测上报

NEW doctor 预检时自动迁移旧版 JSON 格式 cron 配置至 SQLite

NEW service env 占位符不再覆盖 state-dir .env 值

FIX TUI 历史重载时用户消息丢失(#86205)

FIX TUI abort window 导致消息跳位(#89600)

FIX TUI runId 重分配导致消息行错乱(#88592)

FIX TUI 幽灵行残留问题(#90123)

FIX npm 插件安装 integrity 校验在 pre-release 回退时的错误

你被 TUI 幽灵消息坑过吗?或者你遇到过什么类似的”消息跑了”的诡异 bug?评论区聊聊,我看看有没有比我更惨的。

⭐点赞、转发、关注和推荐一键三连⭐