昨晚刷社区的时候,看到 OpenClaw 官方发了 3.22 的更新日志。
说实话,我当时看完那个 changelog,整个人是兴奋的。
数百项更新。ClawHub 生态上线。插件 SDK 全面重构。GPT-5.4 默认集成。沙箱安全大升级。飞书卡片流式渲染。还有我心心念念的 /btw 命令——就是你在 Claude 干活的时候,可以偷偷问它一个问题,不污染上下文,问完还能一键消掉,跟什么都没发生过一样。
我看完就跟公司小伙伴说,这版本必须升。
然后....
今天早上,社区炸了。
翻车现场一:Dashboard 直接 503
升级完,打开 Dashboard,白屏。
503 Service Unavailable。日志里一行红字:Control UI assets not found。
我当时第一反应是,我是不是装错了?
后来才搞明白,不是我的问题。是 npm 发布包里,前端资源文件压根没打进去。
你没听错。代码仓库里有,Docker 镜像里也有,就是 npm install 装出来的版本,dist/control-ui/ 这个目录是空的。
打包的时候漏了。
就这么简单。就这么离谱。
GitHub issue 区和 linux.do 社区里已经炸了,到处都是同样的报错截图。。。
翻车现场二:插件静默失效
这个更恶心。
WhatsApp 插件、ACPX 插件,还有另外四个插件,升级完之后,不报错,不警告,就是。。。不工作了。
悄无声息地死了。
原因是,这几个插件被挪到了 optionalBundledClusters 里,但是发布 npm 包的时候,环境变量 OPENCLAW_INCLUDE_OPTIONAL_BUNDLED=1 没加上。所以这些插件直接被排除在外了。
但这还不是最抽象的部分。
最抽象的是,3.22 这个版本,把插件解析的优先级改成了 ClawHub 优先。而 ClawHub 上,恰好有个社区用户上传了一个同名的破损包 whatsapp@0.0.5-Alpha。
于是 OpenClaw 就自动拉了这个假货。
还跑起来了。
当然,跑不动。
你品品这个连环坑。官方把插件从包里删了,然后默认去社区市场找同名替代品,而社区市场上恰好有一个同名的坏包。完美闭环。
翻车现场三:安全更新把自己人拦了
这个其实是我觉得最值得聊的。
3.22 的安全更新,确实做了很多实打实的加固。阻止 JVM 注入、防 glibc 可调漏洞、堵 .NET 依赖劫持,这些都是正经的安全防护。
但问题是,沙箱收紧之后,很多人发现自己的构建脚本、部署任务,也被当成恶意行为给拦了。
社区有人说,升级完之后,OpenClaw 丧失了所有执行能力,只剩聊天功能。
就是说,你花着 API 的钱,养了一只只会说话不会干活的虾。
而且就算你在配置里手动关掉 sandbox,也不够。因为升级的时候,配置文件可能被覆盖了,旧的权限被新的默认策略给禁用了。
这就很要命。
安全和能力之间的平衡,一直是智能体最难的课题。收太紧,用户干不了活;放太松,恶意 Skill 满天飞。但至少,你不能一刀切完了,连正经用户的正经任务都干不了吧。。。
但 3.22 的方向是对的
说了这么多问题,我还是得公允地说一句。
这个版本的方向,其实没有问题。
ClawHub 独立生态,意味着 OpenClaw 在认真做自己的插件分发体系,不再完全依赖 npm。长期来看,这对插件质量管控、安全审核都是好事。
插件 SDK 重构,虽然是 Breaking Change,但新的 openclaw/plugin-sdk/* 子路径设计,确实比之前的单体 SDK 清晰太多。
AI 模型那边,GPT-5.4 默认支持、Anthropic Vertex 接入、MiniMax M2.7 上线,这些都是实打实的能力扩展。
Web 搜索一口气集成了 Exa、Tavily、Firecrawl 三家,诚意很足。
还有 Android 深色主题。。。说真的,等了好久了。
只是这些好东西,跟一堆打包事故一起发出来了。就好比你精心准备了一桌好菜,结果端上来的时候,盘子碎了。
菜没问题,盘子的问题。
现在该怎么办
好消息是,官方反应很快。
3.22 发布当天晚上,v2026.3.23 就紧急推了出来。修复日志里明确写了:重新把 WhatsApp 等插件的运行时文件打进 npm 包、修复 ClawHub 的版本兼容检查、修复 Control UI 的认证问题。
所以如果你现在要升级,直接跳到 3.23,别停在 3.22:
npm i -g openclaw@2026.3.23openclaw doctor --non-interactiveopenclaw gateway restart
如果你已经被 3.22 坑了,也可以先回滚到稳定的 3.13,等确认 3.23 没问题了再升:
npm i -g openclaw@2026.3.13openclaw doctor --non-interactiveopenclaw gateway restart
然后顺便检查一下你的 CI/CD 脚本,有没有写 openclaw@latest。
这个教训我说过很多次了。永远不要在生产环境用 @latest。版本号锁死,是最基本的工程素养。
最后
其实每次大版本翻车,我都会想起一句话。
软件工程里最贵的 bug,从来不是代码写错了。
是发布流程出了问题。
代码写错,测试能兜住。发布流程出错,整条链路直接断裂,而且往往是在用户那边才暴露。
OpenClaw 3.22 的代码本身没什么大问题。Docker 镜像能跑,源码编译能跑。唯独 npm 包不行。
这不是开发能力的问题,是工程成熟度的问题。
好在社区的力量是强大的。有人在骂,有人在修,有人在默默提交 PR 补打包脚本。
夜雨聆风