1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | secpriv-skill |
| 项目自述名称 | SecPriv |
| 作者/维护者 | Meta Platforms, Inc.(facebookresearch 官方 GitHub 组织仓库) |
| 来源链接 | https://github.com/facebookresearch/secpriv-skill |
| 许可证 | MIT(GitHub API 获取) |
| GitHub Stars | 6(GitHub API) |
| Forks | 0(GitHub API) |
| 最新版本 | 无正式 Release/Tag,以主分支最新提交为准(2026-07-21,GitHub API) |
| 安装方式 | 下载/克隆仓库后将 SKILL.md 作为系统提示词注入调用(见第 10 章) |
2. 功能介绍与亮点
secpriv-skill 是一个统一的代码审查方法论:同一遍审查里既找安全弱点(CWE 映射)也找隐私违规(GDPR 映射),用一套“检测器-校验器”流程处理两类问题,而不是分别跑两个技能再合并结果。
五阶段方法论:① 仓库上下文调研(识别 ORM、输入清洗库、鉴权中间件、隐私同意库,划定信任边界)→ ② 数据流追踪(从 source 到 sink,判断脱敏状态:明文/加盐哈希/k-匿名聚合/加密/脱敏令牌)→ ③ 双面评估(20 类安全 + 10 类隐私,共 30 个标准类别,跨域发现共享 flow_id)→ ④ 校验与抑制(7 条共享抑制规则 + 0.8 置信度阈值,过滤框架已防护的假阳性)→ ⑤ 标准映射(附具体 CWE 编号或 GDPR 条款 + 一段整改建议)。
配套一套 128 案例基准测试集(60 条安全真阳性、30 条隐私真阳性、30 条近似阴性、8 条跨域案例),类别来源可查(MITRE Top 25 2025 + OWASP Top 10 2021 + GDPR 执法追踪器)。官方公开了量化结果:SecPriv-Sonnet 在该基准上 F1 = 0.79(精确率 0.66、召回率 0.98),而“拆成两个独立技能各查各的再合并”的基线 F1 仅 0.49,完全不给方法论指导的基线 F1 只有 0.08——用消融实验证明了统一处理确实比拼接两个技能更有效。
亮点:Meta Platforms 官方仓库出品,配套一篇待发表论文;完整开源、MIT 许可、可审计;近期提交活跃。
3. 适用场景
所属分类:安全与合规
面向使用 Claude Code / Codex 等智能体做代码评审的开发者与团队,尤其适合同时关心安全漏洞与用户数据隐私合规(如涉及 GDPR 的业务)的场景——例如审查处理个人数据的 Python/JS 后端代码、在 PR 里判断改动是否引入新的安全或隐私风险。目前专门优化了 Python 与 JavaScript/TypeScript,规则据称可推广到 Java/Go/Rust,但框架识别部分仍偏向 Python/JS 生态。审查范围是单文件,不追踪跨文件的数据流转。
4. 跨 Agent 兼容性
- Claude Code:原生支持——README 给出明确的
claude -p --append-system-prompt "$(cat SKILL.md)"调用示例,并在 Sonnet、Haiku 两档模型上做过基准测试 - Codex:需适配——技能本质是一段系统提示词,理论上可通过 Codex 的系统提示词覆盖机制加载,但仓库未提供 Codex 专属调用示例
- OpenClaw:未验证——未见相关说明
- Hermes Agent:未验证——未见相关说明
5. 推荐理由
安全审查与隐私合规审查表面是两件事,但都要追踪“数据从哪来、到哪去、经过什么处理”,很多同类工具要么只做安全、要么两者各自为政跑两遍。这个技能用同一套检测-校验方法论把两者统一起来,还拿出真实基准数据证明统一处理确实比拼接两个独立技能效果更好(F1 0.79 对 0.49),这种“给结论配实验”的透明度在同类技能里少见。纯提示词形态,没有代码执行、没有外发风险,Meta 官方仓库出品,可放心审计。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 9 | Meta Platforms(Facebook Research)官方仓库直接产出;GitHub Stars 为 6、Forks 为 0(仓库创建于 2026-05-19,上线约 2 个月,尚无第三方 Issue/PR) |
| 可用性 | 7 | MIT 许可,单文件系统提示词,README 给出可直接复制运行的调用命令,且提交活跃(最近一次提交在近日);但不是 Claude Code 标准的“放进 skills 目录自动发现”式安装,需要手动通过 CLI 参数注入系统提示词,对新手有一定上手门槛 |
| 安全性 | 9 | 技能本身是纯文本审查方法论,不含任何 shell 执行或网络请求逻辑,只输出结构化 JSON 发现列表;配套的基准复现脚本是可选组件,不影响技能本身的安全边界;MIT 许可清晰,Meta 官方仓库信誉可靠 |
安全检查清单:
- ① Shell 命令执行:无——技能是审查方法论文本,本身不执行任何代码,只产出 JSON 格式的审查发现
- ② 联网外发:无——全部处理在调用方本地完成,技能本身不发起任何网络请求
- ③ API key/凭据:不涉及——无需存储任何凭据
- ④ 可疑指令:无——通读 SKILL.md 全文,内容全部是漏洞检测规则与抑制逻辑,未发现越权或注入类指令
- ⑤ 作者/组织信誉:高——Meta Platforms, Inc. 官方仓库(facebookresearch 组织),外部贡献者需签署 Meta CLA
- ⑥ License:明确——MIT
- ⑦ 最近维护时间:活跃——提交持续到近日
7. 跟同类 Skills 相比的优势
| 竞品 | 定位 | 与 secpriv-skill 的差异 |
|---|---|---|
| security-audit-skill(Cloudflare) | 六阶段多子代理流水线(侦察→狩猎→验证→报告),强调只报可利用漏洞、历史发现去重 | 编排更重、更适合深度单次审计,但只覆盖安全维度,不处理隐私/GDPR 合规 |
| code-security-semgrep-skills(Semgrep) | 编码时主动触发的 28 类规则指南,覆盖应用与基础设施安全 | 定位是“写代码时预防”,而非“审查既有代码判定问题”;同样不含隐私维度 |
| security-review-getsentry-skills(Sentry) | 置信度分级方法论,只报高置信度发现,专门压低误报噪音 | 与 secpriv-skill 一样重视抑制规则减少误报,但止步于安全 17 类问题,未纳入隐私合规 |
| differential-review-trailofbits-skills(Trail of Bits) | 聚焦 PR/diff 级别的安全视角审查,结合 git 历史溯源与改动影响半径量化 | 优势在改动级别的风险定位,而非覆盖完整的安全+隐私分类体系 |
四款竞品都只覆盖安全维度。secpriv-skill 是目前少见的把安全(CWE)与隐私(GDPR)纳入同一套检测-校验方法论的技能,也是唯一公开发布了精确率/召回率/F1 量化基准来证明这种统一设计确实有效的项目。
8. 用户评价
该技能上线约 2 个月,目前在 GitHub 及第三方平台尚无具名用户评价或独立讨论,仓库的 Issue 与 PR 区均为空,处于 Meta 内部研究团队独立维护的早期阶段。
9. 其他补充
仓库附带完整的可复现实验:128 案例基准测试(experiment/ 目录),含 ground truth、评测脚本(evaluate.py/aggregate.py/rescore.py)与失败模式分析工具;复现全部 5 个配置的完整基准据 README 估算约需 25 美元的模型调用成本(Claude Sonnet/Haiku)。README 明确列出了已知局限:单文件审查范围、30 类别的 schema 需要人工更新维护、以及一例已知的稳定误报(见下)。
10. 安装使用方式
渠道:从 GitHub 仓库 facebookresearch/secpriv-skill 克隆或直接下载 SKILL.md 文件。
Claude Code / Claude CLI 调用示例:
claude -p --bare --model sonnet \
--append-system-prompt "$(cat SKILL.md)" \
--output-format text \
"Review the following file. Return only the JSON array.
FILE: my_handler.py
\`\`\`python
$(cat my_handler.py)
\`\`\`"
注意事项:无需重启任何服务;每次调用都需要重新拼接约 18 KB 的系统提示词文本;返回结果是 JSON 数组,每条包含 surface(security/privacy)、category、severity、confidence 等字段,置信度低于 0.8 的发现不会返回;若要在 Codex、OpenClaw、Hermes Agent 等其他智能体中使用,需要自行确认对应工具注入系统提示词的参数写法。
11. 注意事项
- 审查范围是单文件,无法追踪跨文件的隐私数据流(如文件 A 采集数据、文件 B 造成泄露的场景)
- 30 个类别的 schema 是固定的,出现新的 CWE 或 GDPR 衍生类别时需要人工更新
SKILL.md - 已知一例稳定误报:被自定义装饰器(而非框架标准装饰器如
@login_required)保护的鉴权端点会被误判为鉴权绕过,需人工复核 - 规则重点优化了 Python 与 JavaScript/TypeScript,虽据称可推广到 Java/Go/Rust,但框架识别部分明显偏向 Python/JS 生态
- 使用方式不是 Claude Code 标准的 skills 目录自动加载,而是手动系统提示词注入,需要用户自行完成配置步骤