桃子桃子快讯
返回首页
工具

SkillPreflight:为 AI Agent 技能加上安装前体检

SkillPreflight 是面向 AI Agent 生态的预安装静态扫描工具,从安全、Token 等 7 个维度为第…

2026.08.25 · 周二4 分钟阅读

SkillPreflight 是一款面向 AI Agent 生态的预安装体检工具,近日在 Hacker News 以 Show HN 形式发布。它针对 Codex、Claude Code、Cursor、Gemini CLI 等 AI 编程 Agent 使用的第三方「技能(skill)」目录进行静态扫描,从安全、权限、Token 消耗、体积、可维护性、可靠性、兼容性等维度给出 0–100 分的评分与问题清单,帮助用户在安装前判断一个 skill 是否值得引入。

评分体系:100 分制的七维体检

SkillPreflight 的总分设为 100 分,按 7 个类别分配权重:

  • 安全(35 分):危险命令、密钥访问、数据外泄、提示词注入、远程脚本执行模式
  • 权限克制(15 分):激活条件是否过宽,是否请求不必要的 shell、网络或文件访问
  • Token 效率(15 分):SKILL.md 是否过大、内容是否重复、渐进式披露是否合理
  • 轻量体积(10 分):文件数、总大小、依赖、体积较大的资源
  • 可维护性(10 分):README、License、frontmatter、示例与文档规范
  • 可靠性(10 分):测试、固件、确定性工作流与错误处理
  • 兼容性(5 分):硬编码本地路径、操作系统特定假设、脆弱的 Shell 用法

同一规则即使在多个文件中命中,每个规则 ID 也只扣一次分,以避免大型仓库因同一问题反复出现而被过度扣分。当一个 skill 目录包含多个子 skill 时,每个 SKILL.md 会被独立评分,子 skill 的文件不计入父目录打分。

使用方式与 CI 集成

工具以 npm 包形式分发,最常用的入口是 npx skill-preflight scan <target>,目标可以是本地路径、GitHub 仓库 URL,也可以是 SKILL.md 的具体文件地址。同时提供 --installed 扫描本机已安装的 skill 目录,以及 --summary --top N 输出评分最低的 N 个 skill 汇总。

支持的输出格式包括 text、json、markdown、html 与 SARIF,其中 SARIF 可直接对接 GitHub Code Scanning。工具也提供官方 GitHub Action,可在每次 Pull Request 与 push 时自动扫描;无配置文件时默认在评分低于 70 分时失败,也可通过 JSON 策略文件自定义 failBelowfailOn 阈值,并支持 --ignore-rule 抑制特定规则。

为防止恶意 skill 通过自带策略压制自身告警,配置文件不会从被扫描的远程仓库自动加载;CLI 的排除规则与忽略规则会与配置文件合并,但 CLI 的阈值设置优先级更高。

公开基准与安全边界

作者公开了一份 2026 年 8 月的样本基准:在固定 commit 锁定的状态下扫描 40 个公开 agent skill,样本平均分 80.8/100,中位数 85.5/100。作者同时强调,这份便利样本并不构成生态排名,静态发现仍需人工复核,完整方法学、原始 JSON/CSV 数据随报告一同发布。

在安全设计上,SkillPreflight 仅读取文件并进行静态分析,不执行 skill 内的任何脚本;体积过大的文件也只测量尺寸,不会被载入文本分析流程。这一原则使工具在评估不可信 skill 时自身不会成为新的攻击面。

信源