name: plugin-audit
superseded-by: plugin-trust-audit
note: 本文件已被合并进 plugin-trust-audit(更完整),保留待爸爸确认后用 trash 删除。
description: "调研 npm 上的 OpenClaw 插件:多关键词扇出找候选、验证维护者与出口连通性、判断可信度,给出装或不装的建议(只调研,不安装)。"
插件调研
给一份包名清单(或"帮我看看 openclaw 生态"),产出可信度评估 + 建议。全程只读,不执行任何安装。
步骤
1. 扇出找候选
先确认搜的是哪个源:npm config get registry。本机走镜像 registry.npmmirror.com,镜像的搜索索引只是全量的一个切片,按关键词一搜就到头——所以结论只能说"镜像里筛到的这些",不能说"生态里没有别的"。
至少跑这三个:
for q in "openclaw" "openclaw plugin" "openclaw channel" "openclaw memory"; do
echo "== $q"
npm search "$q" --json 2>/dev/null | node -e 'let s="";process.stdin.on("data",d=>s+=d).on("end",()=>{try{JSON.parse(s).forEach(p=>console.log(p.name,"|",p.version,"|",(p.description||"").slice(0,70)))}catch(e){}})'
done
openclaw约 20 条,官方核心。openclaw plugin出官方基础能力 + 厂商渠道插件。openclaw channel出渠道生态,国内厂商(企微/钉钉/微博/元宝/QQ)基本在这。openclaw memory出 20+ 记忆类,重灾区,默认全部跳过。
2. 验官方身份(三个条件同时满足才算)
npm view <包名> version license maintainers scripts time.modified
1. maintainers 含 steipete / vincentkoc
2. version 与本体主版本对齐(当前 2026.10.8)
3. time.modified 与官方批量发布日一致
名字里带 openclaw 完全不能作为官方依据。反例:openclaw-cn、@qingchencloud/openclaw-zh 是整包再发行版;@lark-apaas/*、*-cli 是安装器/包装器,不是插件。
3. 装前先验出口(最容易被跳过的一步)
搜索/联网类插件,先确认这台机器能不能到它的 API,否则装了等于没装:
curl -s -o /dev/null -w "%{http_code} %{time_total}s\n" --max-time 6 <url>
状态码分三档,别只分通/不通:200 通;401/403 能到、只差凭据(TCP/TLS 已建,配 key 即可用);000 根本到不了(DNS 或出口被堵)。把 401 当失败会漏掉可用的,把 000 当可用会装个死的。本机实测:DuckDuckGo 全系、公共 SearXNG、api.openai.com、registry.npmjs.org 均 000;cn.bing.com、metaso.cn 通;api.deepseek.com 401。
4. 打分与结论
每项 1 分,≥3 分才进"候选":官方维护者 / 版本对齐 / license 明确 / homepage 指向可公开访问的 repo / 近三个月有更新。
- 有
postinstall/preinstall脚本 = 一票否决,安装即执行任意代码。 - 同功能多包(飞书有 2 个、QQ 有 2 个)——写明"只留一个",否则抢同一渠道。
5. 落盘
结论写进 memory/learned/proposals.md,按"第一梯队(带前置条件)/ 第二梯队(按需)/ 工具类 / 明确不建议"分组。永远只写建议,安装由爸爸决定。
风险要点
- 官方 ≠ 适用:官方插件也可能因出口问题在本机无效。
- 渠道插件拿到完整消息流,权限最大。
- 记忆类插件等于交出 MEMORY.md 读写权,换后端高风险低收益。
- 版本号异常(如 9.x.x 跳到小包)、deprecated shim 包装同名能力,都是可疑信号。
相关
<!-- obsidian-links -->
- <a href="/ME71kYBYo-jfUcHp/vault/MEMORY.md">长期记忆</a>
- <a href="/ME71kYBYo-jfUcHp/vault/skills/index.md">技能目录</a>