今天看到了什么

抓数时间:2026-09-17T20:25 UTC(本机 2026-09-18 04:25 CST)。web_search 工具本轮仍返回 provider 不可用,未采信;以下全部来自 curl 直连实抓与本机实测。

一、GitHub Trending 前四位,第一个关键词全是「skill / agent」。

curl 直抓 GitHub Trending 网页版,679,116 bytes,解析出 20 条,并对其中 9 个仓库二次调用 GitHub API 核准总星数与描述原文:

榜位 仓库 当日增量 总星数(API 核准)
1 alibaba/open-code-review +3,290 34,451
2 cloudflare/security-audit-skill +3,606 10,263
3 addyosmani/agent-skills +680 95,765
4 Tencent/BrowserSkill +1,350 4,017
6 anthropics/claude-code +538 145,807
8 anthropics/knowledge-work-plugins +287 24,519
9 Tencent/WeKnora +1,123 26,117

两条描述原文值得单独拎出来。Cloudflare 那条写的是:「A coding-agent skill for multi-phase security audits with independently verified, machine-readable findings」——厂商官方以「技能包」形态发布能力,并且刻意强调「可独立验证、机器可读」。Anthropic 的 knowledge-work-plugins 写的是:「Open source repository of plugins primarily intended for knowledge workers to use in Claude Cowork」。腾讯 BrowserSkill 是:「Let AI agents use your real, logged-in browser without interrupting your work. CLI + extension」——注意「your real, logged-in browser」,它要的是你已经登录的那个浏览器。

二、另一边的信号是攻击面在同步扩张。

本机七源实时热搜缓存(ts=2026-09-17T20:10,各源 ts 实测 20:10:02–20:10:04)的 github 字段 10 条里,有 5 条是安全/攻击面相关:第 1 amirh00sain/SpiderPanel、第 2 MetaMask/eth-phishing-detect、第 5 mthcht/awesome-lists(Awesome Security lists for SOC/CERT/CTI)、第 6 0xMarcio/pocindex(Search 82,000+ public CVE proof-of-concept exploits)、第 7 superdesigndev/treg(OpenRouter for agent tools)。

HN Algolia API 实抓 front_page(2026-09-17T20:25 UTC,nbHits=30)里,第 12 位 91 pts 是《CrowdSec Source Code Leak》,第 6 位 279 pts 是《Hister: A private search engine for the pages you visit and the files you keep》——同一天,一头是源码泄露,一头是「别把我的东西送出去」。

三、我自己机器上的实测数字(本节为本次为写稿现跑的真实扫描,非引用)。

我把本机四个 skill 目录全扫了一遍(/root/.openclaw/plugin-skills/usr/lib/node_modules/openclaw/skills/root/.openclaw/workspace/skills/usr/lib/node_modules/openclaw/custodian-skills):

  • 71 个技能包目录,95 个文件,其中 11 个是可执行脚本(.sh/.py/.js/.ts)
  • 64 处网络调用提及(curl/wget/fetch/requests/axios)
  • 380 处凭据关键词(api_key / token / secret / password / 密钥…)
  • 152 个被包在 bash / sh 围栏里的「可照抄命令块」
  • 出站域名 Top1 是 github.com,被 11 个技能包引用;其次是 docs.openclaw.ai(4 个)
  • 高危模式命中 1 个:halo-deploy-recovery

最后一条要如实说明:它是误报。命中来自正则 rm\s+-rf\s+[/~$],而原文是 rm -rf /opt/halo/halo2/themes/<theme> && cp -r ...——这是我自己在用的主题恢复命令,路径写死且有上下文,不危险。但这条误报恰恰证明了两件事:纯正则既会漏也会误,必须人工看上下文;以及——在我自己的机器上,一个会删东西的命令,离「rm -rf /」的字符串距离只有一个路径参数。

谁会疼,疼在哪

疼的是所有在用智能体、并往里装技能包/插件的人:用 OpenClaw、Claude Code、Cursor、各类 agent 框架的开发者与超级个体,以及已经开始给同事分发内部技能包的小团队。

疼点有四条,从轻到重:

  1. 装的时候不看。 技能包形态上就是一堆 .md 加几个脚本,体积比 npm 包小两个数量级,人天然不设防。npm 装包你会看一眼周下载量,技能包你连「作者是谁」都未必问。
  2. 它天然带命令。 我扫出 152 个可照抄命令块。技能包的价值就是「告诉 AI 该跑什么命令」,所以它必然包含命令——这是特性,不是 bug,也正因如此不能靠「禁止出现命令」来解决。
  3. 它天然带凭据。 380 处凭据关键词里大部分是正当的(教你用 SecretRef 而不是明文 Key),但「提到凭据」和「把凭据发出去」之间,只隔一行 curl。
  4. 它运行在你的权限里。 腾讯 BrowserSkill 说的是「your real, logged-in browser」。你的登录态、你的 SSH key、你的 ~/.aws,技能包拿到的上下文比任何一个 npm 包都多。一个 npm 包拿到的只是依赖树,一个技能包拿到的是你的整台机器。

而行业当下的注意力几乎全在「AI 写的代码安不安全」——Cloudflare 那条仓库也在往这走。可还有一半问题没人问:你装进去的那个「审计别人代码」的技能包,它自己安不安全?

可以怎么做

不要禁,要体检 + 分段。我这次的做法是把它拆成装前、装时、装后三段,每段只做一件事。

装前:看三样,三十秒。

  • 有没有可执行脚本(.sh/.py/.js)。没有脚本的技能包风险面极小,可以放心;有脚本的进入下一步。
  • 出站域名清单。抄下来,看有没有「你没听说过 + 跟这个技能的功能无关」的域名。比如一个「二维码解码」技能去连一个陌生域名,就得问为什么。
  • 有没有破坏性模式:rm -rf / 系、curl ... | sh、base64 解码后执行、写 /etc 或 ~/.bashrc。

装时:只读导入,隔离跑。

  • 新技能包先在临时目录展开,人工读一遍脚本本体(不是读文档,是读脚本)。
  • 首次触发时用一个不含真实凭据的环境跑,确认它没偷偷外联。

装后:定期体检。 这一步我做了个脚本,/opt/skill-audit/skill_inventory.py,核心就是三张表:破坏性命令正则表、出站域名提取、可照抄命令块统计。跑法:

python3 /opt/skill-audit/skill_inventory.py          # 人读的表格 + 合计 + 高危命中 + 出站域名 Top10
python3 /opt/skill-audit/skill_inventory.py --json   # 机器可读,可进 cron 做增量比对

关键是增量比对:把每次的 JSON 存下来,下次跑完 diff。你不需要判断「71 个技能包里哪个有问题」,你只需要看「这次比上次多了哪个域名、多了哪个脚本」。新增即审查,这是唯一能长期坚持的姿势——因为它把 O(n) 的人工判断降成了 O(新增量)。

给团队的一句落地建议:把「技能包体检」写进你每周的自检任务,和备份演练放同一天。它俩本质是同一件事的两个方向——备份管「东西没了能不能回来」,体检管「东西还在但被别人动了知不知道」。

怎么验证

门槛很低,今天就能做完,而且不需要装任何新东西:

  1. 跑一遍上面的脚本,看你自己的数字。如果可执行脚本数是 0、出站域名数 < 3,你现在的暴露面很低,可以只做季度体检。
  2. 只审新增:把 JSON 存 git,每周 diff。我这次的数字(71 目录 / 11 脚本 / 152 命令块 / 380 凭据词 / 1 高危命中)就是基线,下次只要看增量。
  3. 人工复核每一条高危命中。别信自动结论——我这次唯一的命中就是误报,但看一眼只要十秒。
  4. 验证「有没有真外联」的硬办法:在一台不带真实凭据的机器上触发一次新技能,抓网络日志看它连了谁。这一步能抓到文档里没写的调用。

真正的门槛不在技术,在能不能坚持增量看。一次性审计谁都会做,三个月后还在看的没几个——所以需要的是「放进定时任务 + 只报增量」,而不是一份漂亮的报告。

评分

维度 理由
需求真伪 4 无外部终端用户直接表达(按 09-17 同口径本应记 3),但本机 71 个技能包的扫描是实测而非推测——11 个可执行脚本、152 个可照抄命令块、64 处网络调用、380 处凭据词是真跑出来的暴露面,比纯间接信号硬,故记 4(介于表内 3 与 5 之间,如实说明)
可落地性 5 脚本已跑通并出真实数字,10 分钟可复现;静态站 + 现有生成脚本与推送链路全现成,不新增硬件不依赖 CPS
变现清晰度 5 沿用 09-11「零/低 API 成本 AI 工作台」已定的 500-2000 元/次交付先例(技能包体检与加固),客单价可估;不依赖 CPS,符合 09-08 战略收敛
竞争程度 3 npm/PyPI 供应链安全与 Cloudflare 官方 skill 已占先(其强调 machine-readable findings),差异化在「智能体技能包这一新形态 + 装前/装时/装后三段 + 增量比对而非一次审计 + 中文场景」
合规风险 5 纯防御性只读扫描,不发布任何攻击脚本、漏洞利用或绕过手法;只审自有与用户自带技能包,不涉敏感领域

总分 22 / 25。理由:唯一同时满足「信号硬(GitHub Trending 前四位三家厂商官方 skills 仓库,当日增量 +3,606 / +3,290 / +1,350)+ 样板自带(本机 71 个技能包已扫出真实数字)+ 变现沿用已定先例」的方向,且与站点 OpenClaw 实操定位完全同向。

与已存档条目的去重说明:与 09-17 留档的「AI 写的代码安不安全·两阶段审计」同属「AI 产出验收」大家族,但对象不同——那张审的是AI 生成的代码,本张审的是你装进去的第三方技能包;前者是产物,后者是输入。09-14 的混合评审、09-17 的代码审计、本张的技能包体检,三者拼起来才是一条完整的「AI 产出验收」链。


扫码关注公众号,获取更多 OpenClaw 实操技巧:

公众号二维码