release architecture security clawhub breaking-changes performance

OpenClaw 3.22:底层架构大换血——12 项 Breaking Changes、30+ 安全加固、史上最大版本

OpenClaws.io Team

OpenClaws.io Team

@openclaws

2026年3月22日

15 分钟

OpenClaw 3.22:底层架构大换血——12 项 Breaking Changes、30+ 安全加固、史上最大版本

距离 3.13 过去了 9 天。这是近几个月来 OpenClaw 更新间隔最长的一次。当 changelog 终于放出来的时候,所有人都明白了原因:12 项 Breaking Changes、30+ 安全加固、100+ 稳定性修复、7 个新模型供应商,以及插件发现和安装方式的根本性转变。

这不是一次常规迭代。这是 OpenClaw 拆掉遗留管道、重建地基的那一版。

逐项拆解。

ClawHub:插件生态大迁移

3.22 的头条变更看起来很简单:openclaw plugins install 现在优先查 ClawHub,找不到才回退到 npm。

这一句话改写了整个插件经济。ClawHub 是 OpenClaw 的原生包注册中心——专为插件发现、版本管理和信任验证而建。npm 一直是借住的房子;ClawHub 是 OpenClaw 真正拥有的第一个家。

一起落地的还有:

  • 原生 install/search/update 流程openclaw skills search|install|update + openclaw plugins install clawhub:,带完整的更新元数据追踪
  • Claude/Codex/Cursor bundle 支持:兼容的 bundle 发现和安装,把 bundle skills 映射为 OpenClaw skills,bundle 的 settings.json 默认值自动应用到内嵌 Pi
  • Claude marketplace 注册中心:支持 plugin@marketplace 安装、marketplace 列表和更新
  • Plugin SDK 大改:新的公共面是 openclaw/plugin-sdk/*——旧的 openclaw/extension-api 已移除,没有兼容层。打包插件必须使用注入的运行时来执行宿主侧操作
  • Plugin SDK 测试面:公开的 openclaw/plugin-sdk/testing 面,供插件作者编写测试用例
  • Memory 插件系统提示支持:活跃的 memory 插件现在可以注册自己的 system-prompt 段落

Plugin SDK 的变更是所有后续改动的结构性前提。通过标准化到窄的 openclaw/plugin-sdk/* 子路径而非巨石根路径,每个插件拿到的是更小、更稳定的 API 契约。测试面的存在意味着插件作者终于可以写正经的测试了——不用再深入框架内部。

12 项 Breaking Changes:一次性还清技术债

一个版本 12 项 Breaking Changes,看着激进。但连起来读,讲的是同一个故事:OpenClaw 在烧掉通往 pre-1.0 架构的最后几座桥。

插件生态(4 项)

  1. 1.ClawHub 取代 npm 成为默认插件安装源。npm 回退仍在,但 ClawHub 对 npm 安全名称享有优先权
  2. 2.Plugin SDK 改面openclaw/plugin-sdk/*——旧的 openclaw/extension-api 已经没了,不提供兼容层
  3. 3.Chrome MCP 扩展 relay 移除——遗留的 Chrome 扩展 relay 路径、打包扩展资源、driver: "extension" 全部移除。运行 openclaw doctor --fix 迁移
  4. 4.图像生成标准化——旧的 nano-banana-pro 文档/示例已移除。改用 agents.defaults.imageGenerationModel

遗留清理(3 项)

  1. 5.遗留环境变量移除CLAWDBOT_MOLTBOT_ 兼容名称在运行时、安装器和测试工具链中全部移除。请使用 OPENCLAW_*
  2. 6.遗留状态目录移除.moltbot 状态目录和 moltbot.json 自动检测/迁移回退已移除。请迁移到 ~/.openclaw 或设置 OPENCLAW_STATE_DIR
  3. 7.消息发现适配器变更:需要 ChannelMessageActionAdapter.describeMessageTool(...)——遗留的 listActionsgetCapabilitiesgetToolSchema 方法已移除

安全与沙箱(3 项)

  1. 8.Exec 环境沙箱扩展:阻断 JVM 注入(MAVEN_OPTSSBT_OPTSGRADLE_OPTSANT_OPTS)、glibc tunable 利用(GLIBC_TUNABLES)和 .NET 依赖劫持(DOTNET_ADDITIONAL_DEPS
  2. 9.time 包装器透明化time 在 allowlist 评估时被视为透明分发包装器,审批的 time ... 命令绑定到内部可执行文件
  3. 10.语音通话 webhook 加固:在读取 body 前拒绝缺少签名头的请求,预认证 body 预算降至 64 KB / 5s

平台协议(2 项)

  1. 11.Discord Carbon reconcile:原生命令部署默认切换到 Carbon reconcile——Discord 重启不再反复刷新 slash commands
  2. 12.Matrix 插件重写:基于官方 matrix-js-sdk 的全新插件,附迁移指南

12 项 Breaking Changes 一个版本出完。看起来激进。但回头看,该断的早该断了。

安全:30+ 加固,从 SMB 到 SSRF 到 Hangul

3.22 的安全章节是巨大的。不是 3.13 的 3 项——超过 30 项。按攻击面分组:

网络与协议层

  • Windows SMB 凭证泄漏封堵:在本地文件系统解析之前阻断远程主机 file:// 媒体 URL 和 UNC/网络路径,防止结构化本地媒体输入触发出站 SMB 凭证握手
  • SSRF pinning 加固:显式代理 SSRF pinning 现在将目标跳转传输提示翻译到 HTTPS 代理隧道上,对无法保留 pinned DNS 的纯 HTTP 受保护请求执行 fail-closed
  • Gateway 认证范围加固:忽略可信转发链中伪造的回环跳,阻止设备审批请求超出调用方会话的范围
  • Gateway 发现 fail-closed:CLI 发现中未解析的 Bonjour 和 DNS-SD 服务端点执行 fail-closed,TXT-only 提示不再能引导路由
  • 媒体错误 body 边界:远程媒体错误 body 片段使用与成功下载相同的流式上限和空闲超时

沙箱与执行层

  • 插件 marketplace manifest 沙箱化:拒绝将安装扩展到克隆 marketplace 仓库之外的远程 manifest 条目
  • jq 从 safe-bin 白名单移除jq -n env 不再能在没有显式信任路径的情况下泄露宿主 secrets
  • macOS exec HMAC 验证:exec-host 请求 HMAC 使用 timing-safe 比较,畸形签名 fail-closed
  • Exec 环境沙箱:阻断来自宿主 exec 环境的 JVM、glibc 和 .NET 注入向量
  • 工作区 hooks 门控:仓库本地 hooks 在显式启用前保持禁用,阻止名称冲突遮蔽打包 hooks

身份与认证层

  • 设备配对绑定到 profile:iOS 设置码绑定到目标 node profile,拒绝首次使用时请求更宽角色或范围的引导赎回
  • Synology Chat user_id 绑定:回复投递默认绑定稳定的数字 user_id——可变用户名查找需要显式 dangerouslyAllowNameMatching
  • 浏览器 node 代理强制:在查询和 body 的 profile 参数上强制执行 nodeHost.browserProxy.allowProfiles
  • 设备 token 轮换加固:公开失败保持通用,内部拒绝原因被记录,已审批基线强制被保留
  • 可信代理范围清除:无设备的可信代理 Control UI 会话的自声明范围被清除

编码与注入层

  • Hangul filler 转义:空白 Hangul filler 码位在 gateway 和 macOS 原生 UI 的审批提示中被转义——视觉上为空的 Unicode 填充不再能隐藏命令文本
  • Nostr DM 预加密策略:入站 DM 策略在解密前执行,带预加密速率和大小防护
  • OpenResponses 文件上下文转义加固
  • LINE webhook 解析:对 Express webhook 解析强制使用验证过的原始 body
  • 邮件 webhook 元数据清洗:发件人和主题元数据在外部内容包装前被清洗
攻击面修复数
网络与协议5
沙箱与执行5
身份与认证5+
编码与注入5+
平台特定10+
合计30+

这些修复不会出现在宣传海报上。但它们决定了谁敢把 OpenClaw 拉进生产环境。敢用,比好用更难。

性能:Gateway 冷启动脱胎换骨

用户体感最明显的性能改进:Gateway 启动时不再重编译打包扩展的 TypeScript。 WhatsApp 级别的冷启动从几十秒甚至更久降回到秒级。

其他变更:

  • 模型预热:在 channel 启动前预热配置的主模型,带一次瞬态重试——所以启动后的第一条 Telegram 或 Discord 消息不再报 Unknown model
  • 全栈懒加载:channel add 和根帮助路径、插件/供应商回退解析、Discord 供应商/会话运行时、纯文本消息的媒体和链接理解——全部懒加载,削减启动 RSS 和延迟
  • Agent 模型目录缓存:按 config 和 auth-file 状态缓存,内嵌运行器不再为每次对话轮次重复支付目录启动开销
  • 会话缓存清扫:过期的内嵌运行器会话缓存条目在后续缓存活动中被机会性清扫,防止一次性会话文件无限累积

新功能速览

搜索生态

三个全新的打包 web 搜索插件:

  • Exa:原生日期过滤、搜索模式选择、可选内容提取,配置位于 plugins.entries.exa.config.webSearch.*
  • Tavily:专用的 tavily_searchtavily_extract 工具,带插件自有配置
  • Firecrawlfirecrawl_searchfirecrawl_scrape 工具,带 base-URL/env 回退

沙箱与工具

  • 可插拔沙箱后端:附带 OpenShell(镜像和远程工作区模式)和 SSH 后端(secret 支持的密钥、证书和 known_hosts 输入)
  • Chromium 浏览器 profile 支持browser.profiles..userDataDir 支持通过 Chrome DevTools MCP 接入 Brave、Edge 及其他 Chromium 内核浏览器

交互体验

  • /btw 侧聊:对当前会话的快速无工具回答,不改变后续会话上下文——会话内可消除的 TUI 回答,外部 channel 上的显式 BTW 回复
  • Control UI 画布展开:助手聊天气泡上的展开到画布按钮
  • 圆角滑块:外观设置中可调整圆角半径,从锐角到全圆
  • 每 Agent thinking/reasoning/fast 默认值:不允许的模型覆盖自动回退到 Agent 的默认选择

CLI 与配置

  • CLI config set 扩展:SecretRef 和 provider builder 模式、JSON/batch 赋值、带结构化 JSON 输出的 --dry-run 验证
  • Gateway 健康监控:可配置的过期事件阈值和重启限制,带每 channel 和每账户覆盖
  • 从 GitHub main 安装openclaw update --tag maininstaller --version main

模型供应商:军备竞赛还在继续

供应商变更
OpenAI默认设置模型切换到 openai/gpt-5.4。前向兼容 gpt-5.4-minigpt-5.4-nano
Anthropic Vertex新增通过 Google Vertex AI 使用 Claude 的核心供应商支持,含 GCP 认证/发现
Chutes新增打包供应商,含插件自有 OAuth/API-key 认证和动态模型发现
MiniMax新增 M2.7 和 M2.7-highspeed,默认从 M2.5 更新到 M2.7。补充 M2 和 M2.1 目录条目。合并为单一统一插件面
xAIGrok 目录同步到当前 Pi 支持的 ID。Grok 4.20 重命名为 GA ID,运行时别名解析
Z.AIGLM 目录同步,含 4.5/4.6 模型家族,更新定价
Xiaomi切换到 /v1 OpenAI 兼容端点。新增 MiMo V2 Pro 和 MiMo V2 Omni
Mistral默认元数据同步到当前 Pi 定价——不再显示零成本
GitHub Copilot前向兼容的动态模型 ID,无需代码更新

平台全线推进

Android

  • 系统感知暗色主题:横跨引导和主界面
  • Talk 语音迁移:语音合成移到 gateway talk.speak 后面,Android 切换到最终响应音频
  • 通话记录搜索callLog.search)和 短信搜索sms.search),带共享权限绑定
  • 联系人搜索修复:转义联系人名称查询中的字面 %_,防止 SQL LIKE 通配符误匹配
  • 相机内存修复:回收中间和最终快照位图,防止原生内存泄漏

Telegram

  • 自定义 Bot API 端点:每账户自定义端点支持,横跨所有发送、探测、设置和媒体路径——自托管 Telegram 部署端到端可用
  • DM 话题自动重命名:首条消息时用 LLM 生成标签,支持每账户和每 DM 覆盖
  • 话题编辑 action:论坛话题重命名和图标更新
  • 静默错误回复:默认关闭的 channels.telegram.silentErrorReplies 设置
  • 网络稳定性:粘性 IPv4 回退跨轮询重启保留;API 和媒体请求统一到同一回退链

飞书(Lark)

  • 交互式审批和快速操作卡片,带回调上下文路由
  • ACP 和子 Agent 会话绑定,支持 DM 和话题会话
  • 推理流onReasoningStream 在流式卡片中将 thinking tokens 渲染为 markdown 引用块
  • 身份感知卡片头部和脚注,通过共享出站身份路径
  • 扩展的 action 面:消息读取/编辑、显式话题回复、置顶、聊天/成员检查

Matrix

  • 插件完全重写,基于官方 matrix-js-sdk,附迁移指南
  • allowBots 房间策略:允许配置的 bot 账户互相通信
  • 私有网络 opt-in:每账户 allowPrivateNetwork,支持内部 homeserver
  • 持久化事件去重:跨 gateway 重启
  • mention 门控绑定修复:mention-required 房间中空闲的 ACP 和会话绑定正常过期

Discord

  • Carbon reconcile:原生命令部署——重启不再反复刷新 slash commands
  • 严格 DM 组件白名单认证
  • ACP abort 转发:超时的 Discord 任务取消正在运行的 turn,不再让 ACP 会话在后台继续工作

WhatsApp

  • 重连修复:inbox 监视器中恢复 append 新近过滤器,正确处理 protobuf Long 时间戳
  • 活跃监听器单例globalThis 单例确保分割的 bundle chunk 共享同一个监听器 map
  • 登录修复:在 Baileys 515 配对重启后重新打开前等待 creds 写入完成

100+ 稳定性修复:用表格说话

模块关键修复
Agent 压缩compact 后修复孤立 tool_result、超出阈值时触发溢出恢复、空准备的边界摘要、封顶重试回退保留分割 turn 上下文、可选 JSONL 截断
Agent 运行时OpenAI 兼容后端 tool call ID 去重、非 OpenAI 端点剥离 prompt_cache 字段、超时的纯文本错误输出、重放块清洗、bootstrap 警告移出 system prompt 以稳定缓存
插件运行时跨重复模块图共享单例状态、插件绑定审批状态共享、context engine 委托语义、device-pair/phone-control/talk-voice 插件的打包器 TDZ 修复
GatewayWS 握手超时提升到 10s、过期聊天缓冲区回收修复、重启时孤立 run 恢复、每账户 channel 启动串行化、webhook 路由锁定到启动注册表
Control UI设置键按 gateway 路径隔离、模型切换时保留供应商前缀、会话路由保留外部投递路线、locale 下拉持久化、安全的 logger 导入
Telegram卡住的 getUpdates 硬超时、allow_sending_without_reply、DM 话题会话键路由、畸形回复字段处理、配对设置默认 mention 门控群组
飞书话题线程获取完整上下文、原生媒体处理对齐、签名 webhook constant-time 比较
Mattermost已线程帖子尊重 replyToMode: "off"、DM 投递重试瞬态直连创建失败
macOS桌面 app 启动代理停止 KeepAlive、改用 openclaw node start/stop --json
Windows接受 schtasks Last Result 输出别名、WSL2 的 gateway 网络发现防护
Linux自动检测 nvm 管理的 Node TLS CA bundle、Google auth Node 25 兼容

数据一览

指标3.133.22
Breaking Changes012
安全修复330+
稳定性补丁70+100+
新增模型供应商07
新增 Web 搜索插件03
插件来源npmClawHub
Gateway 冷启动几十秒秒级
默认 Agent 超时600s48h
致谢贡献者~1080+

---

3.22 不是那种靠一个闪亮新功能上头条的版本。它是一次手术——打开胸腔,换掉发动机,缝好,然后跑得比以前更快。

12 项 Breaking Changes 不是在制造混乱,是在烧掉旧地图。ClawHub 上线、安全面全面加固、Gateway 冷启动脱胎换骨——这三件事放在一起,意味着 OpenClaw 从「快速迭代的开源项目」正式过渡到「可以认真依赖的基础设施」。

Peter Steinberger 和他身后那群全球极客,显然已经想明白了一件事:敢用,比好用更难。

龙虾又蜕了一层壳。这次,连骨架都换了。

订阅更新

第一时间获取新功能和玩法。放心,不会发垃圾邮件。