---
name: Wiki Lint
slug: wiki-lint-3
category: Quality
description: Wiki Lint checks a local wiki for broken links, orphan pages, missing frontmatter, empty sections, contradictions, stale content, and index drift. Use it to audit knowledge-base health and generate a lint report with follow-up suggestions.
github: "https://github.com/zhuzhaoyun/Molio/tree/main/apps/daemon/src/tools/skills/wiki-lint"
language: TypeScript
stars: 241
forks: 35
install: "npx degit https://github.com/zhuzhaoyun/Molio/tree/main/apps/daemon/src/tools/skills/wiki-lint ~/.claude/skills/wiki-lint"
installs_to: ~/.claude/skills/wiki-lint
source_path: apps/daemon/src/tools/skills/wiki-lint/SKILL.md
collection_size: 8
category_size: 1418
collection_url: "https://dirskills.com/collections/zhuzhaoyun/Molio"
added: 2026-09-02T05:22:05.233Z
last_synced: 2026-09-02T05:22:05.233Z
canonical_url: "https://dirskills.com/skills/wiki-lint-3"
---

# Wiki Lint

Wiki Lint checks a local wiki for broken links, orphan pages, missing frontmatter, empty sections, contradictions, stale content, and index drift. Use it to audit knowledge-base health and generate a lint report with follow-up suggestions.

**Install:**

```bash
npx degit https://github.com/zhuzhaoyun/Molio/tree/main/apps/daemon/src/tools/skills/wiki-lint ~/.claude/skills/wiki-lint
```

## README

# wiki-lint: Wiki 健康检查

审查 wiki 的一致性、完整性、知识网络健康度和内容质量。

## 核心原则

- **源文件不可变**：只能读取源文件，绝对不能修改或删除。Lint 过程中只读不写源文件。
- **wiki 是复利资产**：检查的不只是单个页面的质量，更要关注整个知识网络是否在不断积累和深化。
- **高效检查**：不要逐个读取所有 wiki 页面。优先使用批量方式获取信息，只在需要深入检查特定页面时才单独读取。

## Vault 结构

vault 根目录就是当前工作目录。源文件在子目录中（如 raw/、notes/、docs/）。
wiki 相关内容的目录结构：
- `wiki/` — 所有 wiki 页面的根目录
- `wiki/INDEX.md` — 根索引：只列目录级概览（各目录页数 + 覆盖范围）与概述入口页，不逐页罗列
- `wiki/<dir>/INDEX.md` — 每个内容目录自己的索引，列全该目录页面及一句话摘要
- `wiki/log.md` — 操作日志（最新条目在最上面）
- `wiki/hot.md` — 近期上下文缓存
- `wiki/meta/` — 元数据目录（lint 报告等）
- `wiki/sources/` — 源文件摘要页
- `wiki/entities/`、`wiki/concepts/`、`wiki/comparisons/`、`wiki/questions/` 等

## 检查方法

按以下顺序操作，尽量用最少的工具调用获取最多信息：

1. 读取根 `wiki/INDEX.md` — 了解目录级概览；分层布局下再读各内容目录的 `wiki/<dir>/INDEX.md`，获取所有页面的清单和摘要（旧单索引库的根 INDEX 本身逐页列全，直接用它即可，并记为检查项 13）
2. 读取 `wiki/log.md` — 了解最近的构建和导入历史
3. 使用 Bash 一次性提取所有 wiki 页面的 [[wiki 链接]]：
   ```bash
   grep -roh '\[\[[^]]*\]\]' wiki/ | sort | uniq -c | sort -rn
   ```
   这一步能同时得到：所有被引用的页面名、引用频次，用于检测断链/缺失页面和引用结构。**孤立页的判定不靠这里的计数**——grep 会把 INDEX 的枚举链接算进入度，导致"每个 stub 都被 INDEX 链过 → 永远测不出孤儿"，用专用脚本（口径：排除 INDEX/log/hot 结构页）：
   ```bash
   node ".claude/skills/wiki-build/scripts/orphan-audit.mjs" --vault .
   ```
4. 使用 Bash 检查实际文件与索引的一致性（两层对比）：
   ```bash
   find wiki/ -name '*.md' ! -name 'INDEX.md' ! -name 'log.md' ! -name 'hot.md' | sort
   ```
   - 目录层：各目录 INDEX.md 条目 ↔ 目录内实际文件，找出未列入索引的页面和索引中存在但文件缺失的页面
   - 根层：根 INDEX.md 的目录行 ↔ 实际存在的内容目录（目录缺失、页数严重不符、漏列目录）
5. 如果上述批量检查发现可疑问题，再针对性地读取相关页面做深入检查。

## 检查清单

### 知识网络（结构检查）

| # | 检查项 | 严重度 | 说明 |
|---|--------|--------|------|
| 1 | 孤立页面 | info | 没有任何其他页面链接指向的 wiki 页面。**判定用 `orphan-audit.mjs`**（见检查方法 3：排除 INDEX/log/hot 的枚举链接，因为枚举链接会掩盖真实孤儿）。入度=0 的 stub 多为"背景挂点误建页"，详见 wiki-build「建页粒度」的孤儿审计 |
| 2 | 无出链页面 | info | 页面没有引用任何其他页面的 [[wiki 链接]] |
| 3 | 断链 | warning | [[wiki 链接]] 指向不存在的页面 |
| 4 | 缺失交叉引用 | info | 应该互相链接但没有链接的相关页面 |
| 5 | INDEX.md 偏差 | warning | 存在但未列出的页面，或列出但不存在的页面（目录索引与目录文件两层都查） |
| 13 | 旧单索引布局 | warning | 根 INDEX.md 仍逐页罗列、内容目录无 INDEX.md。建议触发一次「入库/归档」自动升级，或显式说「重构索引」（见 wiki-build 的索引分层迁移） |

### 内容质量（深度检查）

| # | 检查项 | 严重度 | 说明 |
|---|--------|--------|------|
| 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 状态良好，直接说明 — 不要凭空编造问题。
