用途:在安装、启用或评估第三方 AI 智能体技能前,对其做静态安全审计,防止技能脚本在智能体执行时危害主机。适用于安装前审查、技能市场或内部注册表的安全门禁、CI 流水线,以及刚克隆技能仓库后的一次性检查。不适用于审计自有第一方代码,那类场景建议用 Semgrep、Bandit、CodeQL。
主要能力:遍历技能根目录下所有文件并分类路由到对应扫描器,覆盖十类威胁:代码执行、网络外传、凭据收集、持久化、提示注入、供应链、混淆、文件系统、密钥、CI 工作流。扫描顺序为结构→文件系统→供应链→工作流→提示→代码。结论三态:PASS(无 CRITICAL/HIGH 且 MEDIUM 少于 5)、WARN(默认模式下至少一个 HIGH 或 5 个以上 MEDIUM)、FAIL(至少一个 CRITICAL,或 --strict 下任意 HIGH)。每条发现含稳定类别标签、代码片段、风险与修复建议。
使用方式: python3 scripts/audit.py /path/to/skill python3 scripts/audit.py https://github.com/example/some-skill.git --cleanup python3 scripts/audit.py ./skill --strict python3 scripts/audit.py ./skill --json --output report.json python3 scripts/audit.py ./skill --markdown --output review.md python3 scripts/audit.py ./repo --skill skills/my-skill 退出码:0 PASS、1 FAIL、2 WARN、3 用法/IO 错误。支持行级抑制标记 # noqa: SEC-AUDITOR(及 auditor:ignore-line、audit-skip),以及基于 16 位指纹的 baseline.yml 基线抑制,配合 --baseline 使用。可集成 GitHub Actions 与 pre-commit。
限制:无污点追踪,存在误报;无动态分析,运行时下载载荷无法捕获;混淆手法不断演进,HIGH/MEDIUM 需人工复核;仅 Python 有 AST 覆盖,JS/TS/shell 仅正则;无信誉数据,需配合 pip-audit / npm audit 覆盖已知 CVE。