SuperAPI AI 工具集

scan

写作与研究

查看项目

更新于 10-15 21:09

技能介绍

doc-sentinel:scan 是 doc-sentinel 的深度扫描技能,与仅检查单次提交中改动文件的 hook 不同,它会扫描整个代码库,把所有文档与代码当前状态做交叉引用,报告漂移问题。该技能为只读,只报告不修改文件。

主要能力分阶段进行。第一阶段加载配置,读取 .doc-sentinel.json,若无则使用默认值(docs_root 为 docs,watch_files 含 AGENTS.md、ARCHITECTURE.md、README.md、CLAUDE.md,忽略 .test.、.spec.、tests/**)。第二阶段发现文档,收集 docs/ 目录及顶层 .md 文件。第三阶段从文档中提取引用,包括文件路径、shell 命令、端口与 URL、环境变量。第四阶段验证引用是否仍成立:文件与目录是否存在、package.json 脚本是否存在、端口是否与 compose/.env 及其他文档一致、环境变量是否仍在源码中使用、CLAUDE.md 符号链接是否完好。第五阶段做新鲜度分析,用 git log 比对文档与所引用源文件的最后修改时间,分四档:Fresh、Current、Stale、Very Stale;ADR 文件豁免。第六阶段按严重程度输出报告,分 Critical Drift、Stale References、Warnings 与 Summary。

使用方式为通过技能运行,按上述阶段自动执行集成的 find、grep、jq、git log 等命令,无需手动逐步操作。报告包含具体证据如文件路径、行号、日期。

适用场景:维护大型项目文档、检测重构后遗留的失效路径、发现文档间端口或变量冲突。限制:不修改文件;跳过 node_modules、vendor、.git;CHANGELOG.md 视为追加式,仅在其引用不存在版本/标签时标记;超过 500 行的文档只抽样前 200 行与后 100 行。