⬇️ 下载 obsidian-wiki.zip · 更新于 2026-04-28
是什么
obsidian-wiki 是一个给 Obsidian 知识库做结构化维护的 Skill。
核心思路来自 Karpathy 的 LLM Wiki:把原始笔记、派生 Wiki、结构规则分开,让 AI 负责簿记,人负责判断。
它主要做四类事:
- Ingest:新文章进来后,先检查 frontmatter,再做双链建议和入库刷新
- Query:先读 wiki 层,再回到原文补细节,不是每次都从零开始 RAG;有价值的综合分析可回写到
wiki/synthesis/ - Lint(结构):检查 frontmatter、别名归一、结构污染和派生层一致性
- Lint(语义):检查孤立页、时效性过期、缺失双链、跨作者观点矛盾
这次更新了什么(2026-04 大版本)
相对上一版的主要变化:
- 新增
wiki_lint_semantic.py:语义层检查(孤立页 / 时效性 / 缺失双链 / 观点矛盾) - 新增
wiki_synthesis.py:Query 回写,把跨作者综合分析存为独立综合页 - 新增
wiki_backfill_summary.py:单独补 frontmatter 一句话摘要,给主题页/作者页用 - 新增"思考沉淀型"文章规范:在
# 总结后插入# 我的思考,分核心判断与 AI 讨论留档 - 新增标题前缀系列规则:标题命中关键词时自动注入固定 topic(典型场景:「睡前消息」每期自动带
[[睡前消息]]) - 把 LLM 调用统一到
lib/summarizer.py一个入口;想换 provider 只改这一个文件
使用前提
- 安装 Claude Code 或 Codex CLI
- 安装 Python 3
- 你已经有自己的 Obsidian 仓库
- 想用 obsidian:// URL 跳转打开文章的话,可以装
obsidianCLI(可选) - 如果你要让脚本调 LLM 自动补总结/摘要,准备 DeepSeek API Key(也可以改
lib/summarizer.py换其他 provider)
安装方式
-
下载上方 zip 文件
-
解压后把
obsidian-wiki文件夹放到你正在用的工具目录里:- Claude Code:
~/.claude/skills/obsidian-wiki/ - Codex CLI:
~/.codex/skills/obsidian-wiki/
- Claude Code:
-
改成你自己的 vault 路径——所有脚本里硬编码的
VAULT = Path("/path/to/your/OBSIDIAN_VAULT")都要替换。涉及文件:scripts/wiki_common.pyscripts/wiki_ingest.pyscripts/wiki_add_summary.pyscripts/wiki_backfill_summary.pyscripts/wiki_fix_frontmatter.pyscripts/wiki_fix_and_enrich.pyscripts/ob_shuanglian.py
也可以不改源码,改用环境变量:
export OBSIDIAN_VAULT="/你的/路径/OBSIDIAN_VAULT" export OBSIDIAN_AUTHOR="你自己" # 04输出 默认作者,按 Obsidian 实体页文件名命名 -
配置 LLM 凭证(不补总结/摘要可跳过):
export DEEPSEEK_API_KEY=sk-你的-key想换成 Claude / OpenAI / Kimi / 本地模型,直接改写
lib/summarizer.py的call_summarize(prompt, timeout=300)实现,签名保持不变。 -
在 Claude Code 或 Codex 里输入
/obsidian-wiki调用
使用方法
处理新文章
/obsidian-wiki 帮我处理这篇文章 04输出/你的文章.md
查询知识库
/obsidian-wiki 帮我看看我收藏里关于某个主题都写了什么
健康检查
/obsidian-wiki 帮我检查一下知识库
语义层检查(可选)
/obsidian-wiki 跑一下语义 lint,看看有没有孤立页和过期主题
说明
- 这套 Skill 是按我的库结构写的:
00收集箱/、01笔记/、04输出/、01笔记/wiki/ - 你可以参考我的方法,但不要照抄;你的目录、字段、topics 粒度、作者命名,最好都按你自己的库改
- 不需要 LLM 自动补总结的话,可以先不配置 DeepSeek API,照样能用 Ingest / Query(手填摘要)/ Lint 这几部分
- 如有问题欢迎到公众号 HelloRanceLee 留言