kb-lint
Skill10 starsChanged 5 months agoMITView on GitHub
Run comprehensive health checks on the Obsidian knowledge base including broken wikilinks, orphan pages, stale status, concept page completeness, and status consistency. Trigger phrases: lint knowledge base, knowledge base health check, kb check, run lint, 知识库检查, 健康检查.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- pfeff/claude-skillstheir own version, first seen Nov 1, 2026
- janezslapnik/llm-wiki-kbtheir own version, first seen Nov 1, 2026
- viniciusbedum/vb-ai-contexttheir own version, first seen Sep 25, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- pfeff/claude-skills★ 3same name
- viniciusbedum/vb-ai-context★ 2same name
- janezslapnik/llm-wiki-kb★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository4 other files it gives its agents.
- frontend-slidesSkill
- mole-mac-toolSkill
- pptx-generatorSkill
- tool-call-repairSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 4 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 9
Run health checks on an Obsidian knowledge base using the lint_kb.py script.
- Distinctive: line 14
After any significant ingest session (adding multiple new papers/projects)
- Distinctive: line 15
Before weekly or monthly maintenance
- Very specific: line 16
When troubleshooting [[wikilink]] issues
- Very specific: line 64
Stale status: Check the paper/project status against 日志.md — if status changed per log but frontmatter wasn't updated, correct it.
- Very specific: line 66
Concept page missing refs: Add the paper's [[wikilink]] to the concept page's related_papers frontmatter list.
- Very specific: line 70
Weekly (recommended): Run full lint after each scan_vault.py weekly scan.
- Distinctive: line 71
Post-ingest: Run lint after batch-adding 3+ new cards.
- Distinctive: line 72
Monthly deep-clean: Run full lint and fix all issues.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Knowledge Base Lint (kb-lint)
Run health checks on an Obsidian knowledge base using the lint_kb.py script. Configure your vault path in the script or pass it as an argument.
When to Use
- User says "检查知识库", "跑一下 lint", "健康检查", "看看有没有断裂链接"
- After any significant ingest session (adding multiple new papers/projects)
- Before weekly or monthly maintenance
- When troubleshooting
[[wikilink]]issues
Available Script
<your-vault-path>/工具脚本/lint_kb.py — the comprehensive lint tool. Update VAULT_PATH in the script to point to your Obsidian vault.
Running Checks
⚠️ lint 报告仅输出到终端,不会写知识库文件。
Full check (all 5 categories)
cd "<your-vault-path>" && python "工具脚本/lint_kb.py"Single category check
cd "<your-vault-path>" && python "工具脚本/lint_kb.py" --check broken-links
cd "<your-vault-path>" && python "工具脚本/lint_kb.py" --check orphans
cd "<your-vault-path>" && python "工具脚本/lint_kb.py" --check stale
cd "<your-vault-path>" && python "工具脚本/lint_kb.py" --check concept
cd "<your-vault-path>" && python "工具脚本/lint_kb.py" --check consistencyVerbose mode (show detailed progress)
cd "<your-vault-path>" && python "工具脚本/lint_kb.py" --verboseUnderstanding Results
5 Check Categories
| Check | What it detects | Typical fixes |
| Broken wikilinks | [[目标]] pointing to non-existent files | Fix filename in link, or create missing card |
| Orphan pages | Pages with zero inbound [[wikilink]] | Add cross-references from related cards |
| Stale status | Cards with old status (e.g., "投稿中" unmodified >90 days) | Update status field in frontmatter |
| Concept completeness | Concept pages missing linked papers, or papers with matching tags not linked from concept page | Add related_papers to concept page frontmatter |
| Status consistency | Projects past end_date still "进行中", students past graduation without update | Update status or date in frontmatter |
Common Fix Patterns
- Broken
[[wikilink]]: The target uses[[../子目录/文件]]relative paths. UseObsidian → Files & Links → Always update internal links: trueto auto-heal on rename. - Stale status: Check the paper/project status against
日志.md— if status changed per log but frontmatter wasn't updated, correct it. - Concept page missing refs: Add the paper's
[[wikilink]]to the concept page'srelated_papersfrontmatter list.
Maintenance Workflow
Weekly (recommended): Run full lint after each scan_vault.py weekly scan.
Post-ingest: Run lint after batch-adding 3+ new cards.
Monthly deep-clean: Run full lint and fix all issues.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

