用途 用于发现文档相对代码变更产生的漂移(drift),并在发布或 CI 阶段对文档健康度做量化把关。
主要能力
- 完整漂移分析:将文档映射到代码目录,比较 git 修改历史,检测重命名文件、版本漂移、失效引用和结构性缺口,并按类别、严重程度和修复类型分类。
- API 文档校验:基于 AST 提取 Python 函数签名与类定义,与 Markdown API 文档对比,发现未记录项、幽灵文档、参数不匹配与弃用项。
- 陈旧度评分:按五个维度给出加权 0-100 新鲜度分数,支持 CI 阈值门禁与聚焦 README 模式。
- 链接完整性审计:校验本地文件、锚点、跨文档锚点、图片、大小写敏感与重复锚点,可选检查外部 URL。
- 漂移分类:结构、事实、引用、时间、语义五类,并标注 [AUTO]/[SEMI]/[MANUAL] 以决定修复方式。
- CI/CD 集成:支持非零退出码、JSON 输出、GitHub Actions 与 pre-commit 配方。
使用方式 先明确要执行的检查,再选择对应脚本: drift_analyzer.py:python scripts/drift_analyzer.py <repo> --min-severity high --json doc_staleness_scorer.py:python scripts/doc_staleness_scorer.py <repo> --threshold 60 api_doc_validator.py:python scripts/api_doc_validator.py <src> <docs> --recursive link_checker.py:python scripts/link_checker.py <repo> --broken-only 所有工具要求 Python 3.8+,仅用标准库,支持 --json 与 --help,跨操作系统,CI 环境中失败返回非零退出码。
适用场景 文档与代码脱节时做全量漂移分析;发布前用聚合陈旧度分数做门禁;在 CI 中因高/严重漂移或坏链阻断 PR;对照 Python 源码审计 API 文档准确性;重构后检查 README 健康度与链接完整性。
限制 AST 校验仅支持 Python,TypeScript、Go、Rust、Java 需借助各自语言的文档生成工具再配合链接检查;--check-external 只做一次性 HEAD 请求,不提供持续监控;工具只分类问题不自动重写文档;评分衡量新鲜度与结构完整性,不评估文笔质量。
配置需确认 需确认执行哪种检查、仓库与代码/文档路径、严重程度或陈旧度阈值,这些会显著影响输出。
分类:属文档与代码一致性检测工具,偏开发流程,归入编程与开发。