From dev-toolkits
Audits .dev_doc/ directory Markdown files for health issues: orphaned docs, stale plans, deprecated content inconsistencies, broken refs, and multi-version files. Generates a diagnostic report with fix suggestions. Triggered by phrases like 'update docs' or 'doc audit'.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dev-toolkits:update_docThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
从当前工作目录向上查找,找到包含 `.dev_doc/` 的项目根目录。
从当前工作目录向上查找,找到包含 .dev_doc/ 的项目根目录。
检查 .dev_doc/.update_doc_state/ 是否存在:
读取 .dev_doc/.update_doc_state/dismissed.json(如果存在),获取用户已永久忽略的 issue_id 列表。
读取 .dev_doc/.update_doc_state/audit_state.json(如果存在),获取 last_audit 字段。
使用 Glob 工具:
pattern: .dev_doc/**/*.md
过滤掉 .dev_doc/.update_doc_state/ 下的文件。
记录总文档数。
使用 Grep 工具扫描所有 .dev_doc/ 下的 .md 文件:
任务 1:统计每个文档被引用的次数(孤立文档检测)
architecture.md).dev_doc/*.md 中搜索该文件名任务 2:收集所有内部 .md 链接
]( 找出所有 ](xxx.md) 和 ](../xxx.md) 链接broken_md_link → HIGH对每份文档执行以下检查,通过 Read 读取文档内容,Grep 验证引用:
在文档中搜索 .py 文件路径(xxx.py、Agent/xxx.py、extra_function/...py 等)。
用 Glob 验证每个引用的文件是否存在于项目目录。
用 Grep 在文档中搜索关键词:
废弃、deprecated、obsolete、已删除、已移除、nano.*废弃、废弃.*nano用 Glob 扫描 .dev_doc/ 下所有 .md 文件,识别有版本后缀的文件(如 xxx_v5.md、xxx v5.6.md、xxx-v2.md)。
同系列有两个以上版本 → 保留最新,旧版本标记为待归档 → MEDIUM
用 Glob 识别 YYYY-MM-DD-*.md 格式文件(日期前缀的计划/设计文档)。
读取 work_done.md 和 status.md,检查该计划是否已标记完成(已完成、done、completed)。
若计划已完成但文档仍在根目录未归档 → MEDIUM
根据第三步收集的引用统计,无任何其他文档引用的文档 → LOW
对每个发现的问题,用 Write 工具创建稳定可重复的 issue_id:
issue_id 生成规则: 将以下字符串拼接后计算 md5 前12位:
"doc路径 | 行号 | 信号文本 | 问题类型"
问题记录格式(供后续第六步使用):
[issue_id] | [risk] | [category] | [doc] | [line] | [signal] | [problem] | [suggestion]
过滤:已存在于 dismissed.json 的 issue_id 跳过,不出现在报告中。
使用 Write 工具,将报告写入:
.dev_doc/.update_doc_state/diagnostic_report_<YYYYMMDD>.md
报告结构:
# .dev_doc 文档健康度诊断报告
**生成时间**:YYYY-MM-DD HH:mm
**审计范围**:.dev_doc/ 下所有 .md 文件(X 个)
**上次审计**:YYYY-MM-DD(首次审计则注明)
---
## 执行摘要
| 风险等级 | 数量 | 状态 |
|---------|------|------|
| HIGH | X | ⚠️ 待处理 |
| MEDIUM | X | 📋 建议处理 |
| LOW | X | 💡 可选处理 |
| 已忽略 | X | 🔕 永久忽略 |
---
## HIGH 级问题(必须处理)
### [#N] [category] — [问题简述]
**文档**:`.dev_doc/xxx.md`,第 N 行
**信号**:`[引用的原始文本]`
**问题**:`[问题描述]`
**建议**:`[修复建议]`
**Issue ID**:`[issue_id]`
> [FIX] [IGNORE] [SKIP]
---
## MEDIUM 级问题(建议处理)
### [MN] [category] — [问题简述]
...
## LOW 级问题(可选处理)
### [LN] [category] — [问题简述]
...
---
## 当前文档架构
[.dev_doc/ 目录树]
---
## 下次审计建议
建议在下一次大规模代码变更后或 PR 合并前再次运行 `/update_doc`。
按 HIGH → MEDIUM → LOW 顺序展示每个问题。 对每个问题,用户选择一项:
| 选择 | 操作 |
|---|---|
| FIX | LLM 直接执行修复(用 Edit/Delete/Rename 工具),更新文档或移动/删除文件 |
| IGNORE | 将该 issue_id 追加写入 .dev_doc/.update_doc_state/dismissed.json |
| SKIP | 不记录,本次跳过,下次审计仍会出现 |
用 Write 工具更新 .dev_doc/.update_doc_state/audit_state.json:
{
"last_audit": "YYYY-MM-DD",
"total_docs": X,
"issues_count": {
"HIGH": X,
"MEDIUM": X,
"LOW": X,
"dismissed": X
}
}
git status,确保工作目录已提交git add 当前状态.dev_doc/ 超过 50 个文件,分批处理并向用户说明进度Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub ayanjiushishuai/dev_toolkits