我用 AI 给 Obsidian 写了一个"LLM-wiki"插件
起因 前几天,Karpathy 发了一条推。 他讲自己怎么用 LLM 管个人知识库,用了一个词:编译(Compile)。意思是,把原始资料"编译"成结构化知识。Obsidian Vault 是代码仓库,LLM 就是编译器。 我看完愣了一下——这不就是我最近几个月一直在折腾的事吗?我一直在做一个流程,把 raw 资料变成 wiki 条目,只是一直没找到一个好的词来概括。现在有了:知识编译。 然后我就做了一个程序员会做的事:把它做成了 Obsidian 插件。 思路 传统管理知识库的方式,大家应该都不陌生:你积累了 500 篇笔记,然后加标签、建链接、分类整理,再然后……三个月后放弃了,笔记库慢慢腐烂。 编译方式不一样。你只管把原始资料丢进 raw/ 目录,LLM 负责读取、提炼、交叉引用,自动产出结构化的 wiki 页面。你只需要做两件事:喂料,提问。 这跟写代码一模一样。raw/ 是源码,wiki/ 是编译产物,index.md 是目录清单,log.md 是构建日志,编译器是 LLM。你不会手动把 .java 文件逐行翻译成 .class——同理,你也不应该手动给 500 篇笔记加标签。 三层目录,各管各的 先看一下目录结构: Vault/ ├── raw/ # 原始资料,人类添加,LLM 自动归类 │ ├── tech/ # 技术文章、论文、教程 │ ├── work/ # 工作相关文档 │ ├── reading/ # 读书笔记、播客笔记 │ ├── general/ # 其他内容 │ └── assets/ # 图片附件 │ ├── wiki/ # 编译产物,完全由 LLM 维护 │ ├── summaries/ # 每篇源文件的结构化摘要 │ ├── concepts/ # 概念页面(跨源综合) │ ├── entities/ # 人物/工具/框架页面 │ ├── comparisons/ # 对比分析 │ └── analysis/ # 深度分析(从好的问答中沉淀) │ ├── legacy/ # 已有的旧笔记库,冻结存档 ├── drafts/ # 碎片想法,人类专属 ├── CLAUDE.md # LLM 的"编译规范" ├── index.md # Wiki 主索引 └── log.md # 操作日志 我定了一个很严格的 ownership 规则: ...