1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | skill-scanner |
| 作者/维护者 | Cisco AI Defense(Cisco Systems, Inc. 旗下开源团队) |
| 来源链接 | https://github.com/cisco-ai-defense/skill-scanner |
| 许可证 | Apache License 2.0(仓库 LICENSE 文件确认,Copyright 2026 Cisco Systems, Inc.) |
| GitHub Stars | 2,369(GitHub API 实测) |
| Forks | 293(GitHub API 实测) |
| 最新版本 | 2.0.12(GitHub Release / PyPI 同步实测,发布于 2026-06-24) |
| 安装方式 | pip install cisco-ai-skill-scanner 或 uv pip install cisco-ai-skill-scanner |
项目自述名称即为「Skill Scanner」,与正式名称一致(GitHub 独立仓库,正式名称按仓库名机械确定)。
2. 功能介绍与亮点
这是一款专门给“智能体技能”做体检的安全扫描工具——在你把别人写的 SKILL.md 装进自己的 Claude Code / Codex 之前,先自动检查一遍里面有没有藏着提示注入、可疑代码或数据外发的痕迹。
- 多引擎检测:静态规则(YAML + YARA)、Python 字节码完整性校验、Shell 管道污点分析、AST 数据流(行为分析)四种本地免费引擎打底,无需任何 API Key;另可选接入 LLM 语义分析、VirusTotal 二进制查杀、Cisco AI Defense 云端分析作为增强
- 交互式向导:不带任何参数直接运行
skill-scanner即可启动向导,逐步引导选择扫描目标、引擎与输出格式,对新手友好 - 工程化集成:提供官方 GitHub Actions 可复用工作流(扫描结果以 SARIF 格式直接标注在 PR 上)与 pre-commit 钩子,可在每次提交/合并前自动挡住风险技能
- 透明的能力边界:README 用专门章节说明“无发现”不等于“零风险”,定位是纵深防御的一环而非安全认证
- 亮点:Cisco 官方安全团队出品、Apache 2.0 全开源可审计、34 位贡献者持续提交、原生同时支持 OpenAI Codex 与 Claude Code 的技能格式
3. 适用场景
固定分类:安全与合规——该技能的核心功能就是对“智能体技能”本身做安全审计(提示注入检测、恶意代码识别、供应链风险排查),精确落入本分类定义的“安全审计”范畴。
适用于任何计划从社区渠道(GitHub、技能市场等)安装第三方技能的 Claude Code / Codex 用户,尤其是团队/企业场景下需要在 CI 流水线或 Git 提交前对引入的技能做批量、自动化安全把关的开发者。
4. 跨 Agent 兼容性
- Codex:✅ 原生支持——README 明确列出遵循 Agent Skills 规范对 OpenAI Codex Skills 格式的扫描支持
- Claude Code:✅ 原生支持——同一套 Agent Skills 规范覆盖标准 SKILL.md 格式技能;若要扫描 Claude Code 的
.claude/commands/*.md这类非技能形态的自定义命令文件,需额外加--lenient参数 - OpenClaw:❓ 未验证——已抓取材料(README、文档目录)均未提及
- Hermes Agent:❓ 未验证——已抓取材料均未提及
5. 推荐理由
在把别人写的技能装进自己的 Agent 之前,先用官方安全厂商出品的工具自动扫一遍提示注入与恶意代码风险。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 9 | Cisco 为全球一线网络安全厂商,本项目是其 “Cisco AI Defense” 产品线下的官方开源项目;仓库本身 2,369 星、293 fork,且近一个月仍有 30+ 次提交与多起社区 Issue/PR 互动,热度持续上升 |
| 可用性 | 8 | 基础扫描(静态+字节码+管道分析)一条 pip 命令即可用、无需任何密钥;文档体系完整(快速上手、架构、威胁分类、规则编写、API 参考一应俱全);近一个月内持续发版维护;进阶功能(LLM 语义分析等)需另配 API Key |
| 安全性 | 9 | 见下方安全检查清单 |
安全检查清单逐项:①核心四个本地引擎仅读取待扫描的技能文件本身,不执行目标技能代码,不需要额外 shell 权限;②默认全部离线运行,仅当用户主动传入 --use-llm/--use-virustotal/--use-aidefense 等参数并配置对应 API Key 时才会联网;③可选云端引擎的 API Key 均通过环境变量传入,未见持久化明文存储设计;④已通读 README 全文与仓库结构,未发现提示注入或可疑指令,其内含的 SKILL.md 文件均为 evals/skills 目录下的自身测试样例;⑤Cisco Systems 为公开上市的一线安全厂商,仓库有 34 位贡献者与持续的 PR 记录;⑥Apache 2.0 许可证明确(已读取 LICENSE 文件确认);⑦最近一次提交 2026-06-29,近一个月内维护活跃。
综合评分:8.7(三项均值,四舍五入至一位小数)
7. 跟同类 Skills 相比的优势
| 名称 | 定位 | 与本技能的差异 |
|---|---|---|
| skill-scanner(本次推荐) | 反向工具:扫描“其他技能包”本身有没有安全问题,用于装机前把关 | —— |
| trailofbits/skills(Trail of Bits 出品) | 一套用于做安全研究的技能合集(漏洞挖掘、审计工作流),是“拿来对代码做安全分析”的技能本身 | 面向的是“用技能去审计代码”,而不是“审计技能包自身”,与 skill-scanner 的扫描对象正好相反,两者可以配合使用而非互相替代 |
| ghostsecurity/skills(Ghost Security 出品) | AppSec 技能合集,覆盖具体的应用安全审查任务 | 同样是“提供安全能力的技能”而非“检测技能安全性的工具”,不具备扫描第三方技能包本身的能力 |
| pillar-labs/sail-skill | 以 SAIL V2 风险目录形式提供的技能,输出人工可读的合规检查清单与整改路线图 | 产出是给人看的评估报告与清单,依赖使用者自行判断,不做自动化代码级扫描,也没有 CI/pre-commit 集成 |
| ljagiello/ctf-skills | 面向 CTF 竞赛训练的技能合集(渗透测试、逆向、密码学等攻防技巧) | 目标是提升使用者自身的攻防技能,训练场景是“进攻”,与 skill-scanner“扫描技能包做防御把关”的定位完全不同 |
差异化总结:市面上的“安全类技能”大多是让 Agent 具备某种安全分析/攻防能力;skill-scanner 反过来解决的是“这些技能本身安不安全”的元问题,是目前该细分方向里证据最充分、工程化程度最高的一个。
8. 用户评价
- 开发者 joshwilhelmi 在 GitHub Issue #93 中反馈:工具将多个运行时依赖硬锁定为精确版本(
==),导致把它作为库集成进已有大型项目时,每次上游依赖打安全补丁都要牵动一次依赖树重排,建议放宽为>= - 开发者 frontsidebus 在 GitHub Issue #64 中提出:
--lenient模式应支持扫描目录里没有严格命名为SKILL.md、只有普通.md文件的技能仓库,反映了真实使用中遇到的兼容性诉求 - 开发者 ppcvote 在 GitHub Issue #81 中提交了一套“提示词防御姿态”规则包提案,为扫描器新增检测系统提示词是否具备针对 12 类常见 LLM 攻击手法防御措辞的能力,属于社区对规则库的实质性扩展贡献
9. 其他补充
仓库同时提供 Python SDK(from skill_scanner import SkillScanner),可编程调用而不仅限于 CLI;支持通过 scan-repo owner/repo 直接对 GitHub 仓库发起扫描,无需先手动克隆。
10. 安装使用方式
# 安装(任选其一)
pip install cisco-ai-skill-scanner
uv pip install cisco-ai-skill-scanner
# 扫描单个技能目录(本地免费引擎:静态 + 字节码 + 管道分析)
skill-scanner scan /path/to/skill
# 加上行为分析引擎
skill-scanner scan /path/to/skill --use-behavioral
# 批量递归扫描一个技能仓库
skill-scanner scan-all /path/to/skills --recursive
# 直接扫描一个 GitHub 仓库
skill-scanner scan-repo owner/repo
# 不确定参数时,直接运行交互向导
skill-scanner
安装后无需重启 Agent 会话——它是独立于 Claude Code / Codex 之外运行的命令行工具,扫描对象是“其他技能的文件”,而非作为技能本身加载进宿主 Agent。若要接入 CI,可参考仓库 docs/github-actions.md 中的可复用工作流配置;若要在每次提交前自动拦截,可执行 skill-scanner-pre-commit install。
11. 注意事项
- 基础本地引擎完全离线免费;若启用 LLM/VirusTotal/AI Defense 分析,需自行准备对应 API Key
- “无发现”不代表“零风险”,工具做的是概率性检测,不能替代人工代码审查
- 硬锁定依赖版本号是已知的社区反馈点(见第 8 章),作为库集成进已有项目时可能需额外处理依赖冲突
- OpenClaw、Hermes Agent 的兼容性未见官方说明,如需在这两个生态使用,建议先用
--lenient参数小范围试跑验证