用途:对源代码树做静态漏洞审查,发现潜在漏洞候选。它不执行代码,只读取源码并推理,最终生成 VULN-FINDINGS.json(含 .md 人读版),可直接交给 /triage 处理。需要执行验证(如 ASAN 崩溃、可复现 PoC)时,指引用户使用 vuln-pipeline run <target>,见 README Step 2。
主要能力:按焦点领域并行派发 Task 子代理(最多 10 个并发);小型目标(少于 15 个源文件)自动退化为单次顺序扫描。支持读取 THREAT_MODEL.md 第 3 节(入口点与信任边界)和第 4 节(威胁)来界定扫描范围;无该文件且未指定 --focus 时先做侦察,提出 3-10 个焦点领域。可选的置信度复核遍为每条发现独立打分,不丢弃任何发现,只按置信度排序(confidence 降序,再 severity、file、line)。
使用方式:/vuln-scan <target-dir>。参数:<target-dir>(必填);--focus <area>(可重复,跳过侦察);--single(不派发子代理);--extra <file>(把该文件内容追加进审查简报);--no-score(跳过 Step 3b 置信度复核)。优先使用 Glob 与 Grep 工具;不可用时仅允许只读 Bash 命令(rg --files、ls -R、rg -n、grep -rn、wc、head、file),不得写辅助脚本或把目标内容管道进 shell 解释器。
限制:绝不执行目标代码,不用 Bash、构建、Docker 或网络;停留在 <target-dir> 内,不跟随符号链接或 .. 越界;不编造行号,只报告实际 Read 或 Grep 到的 file:line,不确定时引用函数名并说明。发现是候选而非最终结论,本技能从不丢弃发现,严格核验由 /triage 完成。对复现或 PoC 确认的请求应拒绝并指向 vuln-pipeline。
输出结构:VULN-FINDINGS.json 包含 target、scanned_at、focus_areas、findings(含 id、file、line、category、severity、confidence、title、description、exploit_scenario、recommendation、confidence_reason)及 summary(total、high、medium、low、low_confidence);同时写出 VULN-FINDINGS.md 摘要表与逐条详情。完成后回报计数、置信度前三项,并提示下一步:> /triage <target-dir>/VULN-FINDINGS.json --repo <target-dir>。