Requirements章节要求“A coding agent with a model that supports tool use and parallel sub-agents”;Usage章节提供“security audit this codebase”。
security-audit:用六阶段流程验证代码漏洞并生成结构化报告
给安全工程师的代码代理审计技能,用六阶段流程和独立复核替代一次性漏洞扫描。
🧭 决策指南
为什么现在热: 无法从材料判断
适合,如果你
-
你有支持工具调用和并行子代理的coding agent,并要审计一个代码库。
-
你需要confirmed、needs_validation、rejected三类结构化漏洞记录。What it does章节说明Phase 4将记录写入findings.json,并定义三种verdict。
-
你希望按coverage-ledger.json持续补齐审计范围。Multiple runs章节说明重复运行会使用prior ledgers and findings来针对缺口。
不适合,如果你
-
你的环境不能提供禁用外部网络、限制资源和限定写入路径的OS沙箱。Requirements章节明确要求这些控制;否则workflow会保持needs_validation而不执行目标代码。
-
你只需要一次性快速扫描,不需要六阶段流程和独立记录验证。What it does章节规定Reconnaissance至Target-neutral reporting六个阶段。
-
你的coding agent不支持工具调用或并行子代理。Requirements章节将tool use and parallel sub-agents列为前置条件。
前置条件
- 需要支持工具调用和并行子代理的coding agent。
- 需要Node.js,用于zero-dependency findings和coverage-ledger validators。
- 需要OS-enforced sandbox:禁用外部网络、使用sanitized allowlisted environment、限制资源,并只允许写入assigned scratch paths。
第一步命令(README 原文)
security audit this codebase
要注意
-
没有OS沙箱时,blocked lead只能保持needs_validation,不能执行target-controlled builds或tests。Requirements章节明确规定sandbox控制与needs_validation行为。
-
不要把defense-in-depth gap当作漏洞;Layer A已阻断攻击时只能记为hardening note。Design principles章节说明Defense-in-depth gaps are not vulnerabilities。
-
severity必须基于likelihood x impact,不能只因偏离checklist而定级。Design principles章节说明Severity requires impact。
-
发现者与验证者必须是不同agent,候选验证会交给fresh verifier尝试证伪。Candidate validation和Adversarial validation章节均明确独立验证要求。
材料未说明
- README没有说明支持哪些具体coding agent或模型名称。
- README没有说明Node.js最低版本。
- README没有给出单次审计耗时、资源消耗或并行子代理数量上限。
- README没有提供与其他安全扫描器的准确覆盖率或误报率对比。
- 项目没有版本发布记录,无法从材料确认稳定版本或兼容性承诺。
💡 深度解析
6
不适合
我负责一个需要完整记录架构、信任边界和输入面的单仓库评审,并且我们的 coding agent 支持工具调用和并行子代理;这个 skill 能否替代一次传统人工安全评审?
适合读者: 使用支持工具调用和并行子代理的 coding agent、负责单仓库安全评审的产品安全团队
不适合把它当作传统人工评审的替代品,因为它是 coding-agent 的审计编排方法,不是独立漏洞扫描器。
- 它会经过侦察、覆盖驱动猎寻、候选验证、结构化输出、独立记录验证和目标中立报告六个阶段。
coverage-ledger.json记录架构区域、审计单元、已执行检查、证据和缺口;findings.json区分confirmed、needs_validation与rejected。- 每个候选由新的验证代理尝试证伪,降低发现者自行确认造成的偏差。
- README 明确说明项目不保证发现所有漏洞,也不会替代人工安全评估;严重性、业务风险和披露决策仍需人工判断。
- What it does:六阶段审计流程
- What it does:`coverage-ledger.json` 与 `findings.json` 的状态定义
- Limitations:不是独立的静态分析器、动态扫描器或漏洞数据库,不替代人工安全评估
适合
我维护一个会持续发生源代码、依赖和部署变化的大型代码库,希望第二轮审计能复用上一轮的 ledger 和 findings,同时只重新检查变化与缺口;这个 skill 是否支持这种增量流程?
适合读者: 需要在大型或复杂代码库上进行多轮复审的项目维护者,且代码、依赖或部署配置会持续变化
适合,它明确支持同一仓库的多次增量审计,但不会把旧证据无条件视为当前事实。
- README 说明 multiple runs 是 additive,会利用 prior ledgers 和 findings 定位缺口、重新验证 changed source,并携带 current-source evidence。
- 流程明确不把 stale 或 unresolved work 当成已覆盖,因此历史
needs_validation不会自动变成已完成审计。 validate-coverage-ledger.cjs会在创建 ledger 及后续更新后运行;validate-findings.cjs在 Phase 4 和 Phase 5 replacement 后运行。- 输出层从验证记录生成
REPORT.md、FINDINGS-DETAIL.md和NEEDS-VALIDATION.md,适合把本轮确认项与历史未决事项分开管理。
- What it does:Multiple runs against the same repo are additive
- What it does:stale or unresolved work 不视为 covered
- What it does:两个 zero-dependency validator 的运行时机
- What it does:三类 Markdown 报告由 verified records 派生
security audit this codebase
适合
我审计的是包含原生目标的代码库,需要覆盖内存安全、二进制和内核攻击面;同时我能提供禁用外网、清理环境变量、资源限制和限定写入路径的 OS 级沙箱,这个 skill 是否适合?
适合读者: 维护原生代码库、需要检查内存安全、二进制和内核路径的安全研究员
适合,前提是你的 OS 级沙箱确实满足 README 对目标代码执行的限制。
- 文件清单为原生目标提供了
MEMORY-SAFETY-AND-BINARY.md,覆盖内存安全、二进制和内核 hunting classes。 - 流程会把构建、测试、进程、浏览器、模拟器、fuzzer 和 fixture 等目标控制活动放进沙箱。
- Requirements 要求禁用外部网络、使用清理后的 allowlisted 环境、实施资源限制,并只允许写入指定 scratch 路径。
- 缺少这些控制时,流程会把相关线索保留为
needs_validation,而不是执行目标代码后升级为confirmed,因此沙箱能力直接影响验证深度。
- Files:`MEMORY-SAFETY-AND-BINARY.md`
- Requirements:OS-enforced sandbox、禁用外部网络、清理环境、资源限制和限定写入路径
- Requirements:缺少控制时保持 `needs_validation`
security audit this codebase
适合
我希望把 AI 辅助审计接入现有自动化流程,团队已经使用 Node.js,并要求 findings 和 coverage ledger 在进入下游系统前通过无依赖校验;这个 skill 是否适合?
适合读者: 希望把 AI 辅助审计接入自动化安全流程的平台安全团队,使用 Node.js 并要求 JSON 结果可机器校验
适合,项目的机器接口正是结构化 JSON 加 Node.js 无依赖校验器,但它不等于完整的漏洞扫描平台。
report-schema.json定义三种 findings verdict,validate-findings.cjs校验findings.json,validate-coverage-ledger.cjs校验coverage-ledger.json。- README 明确要求在 Phase 4、Phase 5 replacement,以及 ledger 创建和后续更新后执行相应校验,便于把格式检查嵌入流水线。
- 结构化记录再派生出三类 Markdown 报告,机器接口与人类阅读层分离。
- 但项目依赖具备工具调用和并行子代理的 coding agent,且没有发布版本信息;版本固定、模型供应商、凭据管理和 CI 集成方式仍需团队自行建立。
- Files:`report-schema.json`、`validate-findings.cjs`、`validate-coverage-ledger.cjs`
- What it does:校验器在 Phase 4、Phase 5 和 ledger 更新后的执行要求
- Project data:主语言为 JavaScript;latest_release 为空;release_count 为 0
- Requirements:依赖支持工具调用和并行子代理的 coding agent
适合
我正在审计一个包含 prompt injection、agent/tool 调用和 output handling 的 LLM 代码库,希望把尚未证实的输入事实与真正的边界失败分开;这个 skill 是否能满足这种判定要求?
适合读者: 负责 AI 与 LLM 产品安全的研究员,代码库包含 prompt injection、agent/tool 和 output-handling 路径
适合,因为它把 AI 与 LLM 攻击面列为专门审计类别,并明确保留未决事实而不强行判定为漏洞。
- 文件清单中的
AI-AND-LLM.md覆盖 prompt-injection、agent/tool 和 output-handling hunting classes,与你的代码路径直接对应。 confirmed要求完整 source trace 和有边界的 observed result;无法闭合证据链的线索进入needs_validation,且该状态没有 severity。- 候选验证由发现者之外的新代理执行,并要求尝试推翻原结论,适合检查模型代理对输入边界和工具权限的误判。
- 报告由经过验证的结构化记录生成,能把确认项、待验证项和被证伪项分开输出,而不是只给自然语言结论。
- Files:`AI-AND-LLM.md`:prompt-injection、agent/tool、output-handling
- What it does:`confirmed`、`needs_validation`、`rejected` 的定义
- Design principles:Adversarial validation;Only confirm established boundary failures
find security vulnerabilities in ./src
视情况
我需要在同一个仓库里同时检查 HTTP request framing、cache、authentication protocol,以及 IAM、IaC、container 和 serverless 配置;这个 skill 能否覆盖这些不同攻击域?
适合读者: 维护 HTTP 协议和认证服务的产品安全团队,同时还要检查云部署、IAM、容器和 serverless 配置
视情况,攻击类别本身覆盖得较好,但最终覆盖质量取决于 agent 是否正确识别架构和执行环境。
WEB-PROTOCOL-AND-AUTH.md明确包含 HTTP request-framing、cache 和 authentication-protocol hunting classes。CLOUD-AND-DEPLOYMENT.md覆盖 IAM、infrastructure-as-code、container、serverless、ingress 和 runtime-configuration。- 六阶段流程先建立架构、信任边界、输入面和 coverage ledger,再按 ledger unit 分派隔离 hunter,并由 coverage critic 找缺口。
- README 同时警告 coverage ledger 只能证明执行过哪些检查,不能证明攻击提示完整,也不能保证 agent 正确理解每个覆盖单元;复杂构建或缺少测试也会降低验证能力。
- Files:`WEB-PROTOCOL-AND-AUTH.md`
- Files:`CLOUD-AND-DEPLOYMENT.md`
- What it does:侦察、coverage-led hunting 和 coverage critics
- Limitations:coverage ledger 不证明提示完整;复杂构建系统或缺少测试会降低验证能力
do a security review, output to ~/audits/my-project
✨ 核心亮点
-
六阶段流程覆盖侦察、验证、报告与独立复核
-
findings.json支持confirmed等三类机器可读结论
-
Node.js零依赖校验器检查覆盖账本与发现记录
-
重复运行测试中单次仅发现约半数漏洞
🔧 工程化
-
通过coverage-ledger.json分配隔离猎手并追踪检查范围
-
用validate-findings.cjs校验findings.json结构与记录
-
从已验证记录生成REPORT.md与FINDINGS-DETAIL.md
⚠️ 风险
-
缺少OS沙箱时不会执行目标代码,仅保留needs_validation
-
要求支持工具调用和并行子代理的coding agent
-
README未提供版本发布,当前No releases且仅3位贡献者
👥 适合谁?
-
需要审计JavaScript或多类型代码库的安全工程师
-
已有支持并行子代理coding agent的团队
-
需要findings.json和coverage-ledger.json审计产物的项目