| name | wiki-lint |
| description | 对本地知识库的 Wiki 做健康检查/质量审查。查孤立页、断链、断引用、frontmatter 缺失、空段落、内容矛盾、过时内容、INDEX 偏差、知识缺口,生成 lint 报告并给出补充方向建议。Triggers on: 健康检查, 检查 wiki 健康状况, lint, clean up wiki, wiki 维护, check the wiki, wiki audit, find orphans, 审查 wiki. |
wiki-lint: Wiki 健康检查
审查 wiki 的一致性、完整性、知识网络健康度和内容质量。
核心原则
- 源文件不可变:只能读取源文件,绝对不能修改或删除。Lint 过程中只读不写源文件。
- wiki 是复利资产:检查的不只是单个页面的质量,更要关注整个知识网络是否在不断积累和深化。
- 高效检查:不要逐个读取所有 wiki 页面。优先使用批量方式获取信息,只在需要深入检查特定页面时才单独读取。
Vault 结构
vault 根目录就是当前工作目录。源文件在子目录中(如 raw/、notes/、docs/)。
wiki 相关内容的目录结构:
wiki/ — 所有 wiki 页面的根目录
wiki/INDEX.md — 主索引
wiki/log.md — 操作日志(最新条目在最上面)
wiki/hot.md — 近期上下文缓存
wiki/meta/ — 元数据目录(lint 报告等)
wiki/sources/ — 源文件摘要页
wiki/entities/、wiki/concepts/、wiki/comparisons/、wiki/questions/ 等
检查方法
按以下顺序操作,尽量用最少的工具调用获取最多信息:
- 读取
wiki/INDEX.md — 获取所有页面的清单和摘要
- 读取
wiki/log.md — 了解最近的构建和导入历史
- 使用 Bash 一次性提取所有 wiki 页面的 [[wiki 链接]]:
grep -roh '\[\[[^]]*\]\]' wiki/ | sort | uniq -c | sort -rn
这一步能同时得到:所有被引用的页面名、引用频次、用于检测孤立页面和缺失页面。
- 使用 Bash 检查实际文件与 INDEX.md 的一致性:
find wiki/ -name '*.md' ! -name 'INDEX.md' ! -name 'log.md' ! -name 'hot.md' | sort
对比 INDEX.md 中的列表,找出未列入索引的页面和索引中存在但文件缺失的页面。
- 如果上述批量检查发现可疑问题,再针对性地读取相关页面做深入检查。
检查清单
知识网络(结构检查)
| # | 检查项 | 严重度 | 说明 |
|---|
| 1 | 孤立页面 | info | 没有任何其他页面链接指向的 wiki 页面 |
| 2 | 无出链页面 | info | 页面没有引用任何其他页面的 [[wiki 链接]] |
| 3 | 断链 | warning | [[wiki 链接]] 指向不存在的页面 |
| 4 | 缺失交叉引用 | info | 应该互相链接但没有链接的相关页面 |
| 5 | INDEX.md 偏差 | warning | 存在但未列出的页面,或列出但不存在的页面 |
内容质量(深度检查)
| # | 检查项 | 严重度 | 说明 |
|---|
| 6 | 内容矛盾 | error | 不同页面对同一主题有相互冲突的说法 |
| 7 | 过时内容 | warning | wiki 页面引用的信息已被更新的源文件取代 |
| 8 | Frontmatter 不完整 | warning | 页面缺少必需的 frontmatter 字段(type/title/tags/related/sources) |
| 9 | 空段落/占位内容 | info | 页面有空章节或只有标题没有实质内容 |
| 10 | 论点缺失 | info | overview 页面只是摘要罗列,缺少跨源文件的综合论点 |
知识缺口
| # | 检查项 | 严重度 | 说明 |
|---|
| 11 | 主题盲区 | info | 源文件涉及但 wiki 未覆盖的重要概念或实体 |
| 12 | 深度不足 | info | 已有页面过于浅显,可以通过补充源文件来深化 |
输出格式
对发现的每个问题:
### [严重度] 问题标题
- **类型**:检查项编号和名称
- **位置**:wiki/path/to/page.md
- **描述**:问题是什么
- **建议**:如何修复(给出具体操作步骤)
将完整报告写入 wiki/meta/lint-report-YYYY-MM-DD.md(YYYY-MM-DD 为当天日期)。
同时在对话中给出总结:
- 发现问题总数:N
- 严重问题(error):N
- 中等问题(warning):N
- 次要问题(info):N
- 建议补充的源文件方向(具体到主题和资料类型)
如果 wiki 状态良好,直接说明 — 不要凭空编造问题。