Obsidian 笔记库正在腐烂?程序员用 LLM “编译”把它当代码仓库管的完整工程方案

张开发
2026/5/30 11:28:42 15 分钟阅读
Obsidian 笔记库正在腐烂?程序员用 LLM “编译”把它当代码仓库管的完整工程方案
当你打开 Obsidian看到几百篇笔记层层堆叠却连自己三个月前记下的核心观点都找不到时那种“明明有货却取不出来”的挫败感大多数人第一反应是“再加几个标签、再补几条双链就好了”。我起初也这么干——手动整理了两周就彻底放弃。因为靠人去维护一个持续增长的知识库就跟靠人工跑全量回归测试一样理论上可行实际上早晚崩盘。直到看到 Karpathy 最近那条推文他把整个过程概括为一个词编译Compile。把原始资料“编译”成结构化知识把 Obsidian Vault 当成代码仓库把 LLM 当成编译器。这句话像一把钥匙一下子把我几个月在 Vault 里瞎折腾的所有碎片全部串了起来。为什么传统笔记整理注定失败而“编译”才是可持续的底层逻辑传统笔记库的死法其实非常一致剪藏一堆文章、记一堆灵感、攒一堆链接。三个月后回头看90% 变成了“死文件”。你知道里面有金矿却根本找不到入口。Karpathy 的洞察在于——别让人去整理让 LLM 用软件工程的方式去整理。生活类比你的笔记就像一堆原材料堆在工厂仓库里。传统做法是每次需要时手动翻箱倒柜编译做法则是建一条生产线原材料进来 → 自动化加工 → 产出结构化半成品和索引。原材料不变但取用效率天差地别。更进一步这套方法论把知识管理彻底映射成了代码仓库管理分层原始资料、编译产物、运行时输出三层彻底隔离就像 .java、.class、.jar 绝不混在一起。增量不用每次全量重建每天新进几篇就只编译新增部分。可追溯每条知识都能精确回溯到原始来源出问题能立刻定位根因。三层目录结构把 Vault 变成真正的知识工厂我按照 Karpathy 的思路把自己的 Vault 彻底重构成了下面这个结构保留了平台内容目录因为我既要做个人 wiki也要做对外内容Obsidian Vault ├── raw/ # 原始摄取层只进不出 │ ├── articles/ # 网页文章 │ ├── podcasts/ # 播客转录 │ └── tweets/ # X 推文等碎片 ├── wiki/ # 编译产物层结构化知识 │ ├── summaries/ # 逐篇结构化摘要 │ ├── concepts/ # 概念条目核心 │ └── indexes/ # All-Sources.md All-Concepts.md ├── outputs/ # 运行时输出层 │ ├── qa/ # 每次复杂提问的结果 │ └── health/ # 每周健康检查报告 └── platform/ # 对外内容工厂不混入 wiki这个结构不是随意划分而是严格遵循“输入-编译-输出”的工程逻辑确保每一层职责单一、可独立演进。摄取层标准化入口元数据决定生死所有内容进来必须带元数据否则后面编译直接废掉。我用了三个入口Web Clipper强制模板写入 source_url、author、published、tagsPodwise播客自动转录AI 摘要直接导出 Markdown手动 Claude Skillbaoyu-url-to-markdownX 推文或任意链接秒变干净 Markdown没有元数据的剪藏相当于代码没写注释后面维护的人LLM根本没法下手。编译层LLM 不是聊天工具而是你的 CI/CD 流水线这是整套系统的核心。我在 Obsidian 里用 Claude Code 做编译器指令非常明确“读 raw/articles/ 里最近新增的文章为每篇生成结构化摘要核心结论、关键证据、疑点、术语提取概念并映射到 wiki/concepts/最后更新 All-Sources.md 和 All-Concepts.md。严格按照 CLAUDE.md 里的编译规范执行。”CLAUDE.md 里写死了所有模板和规则摘要必须有哪些字段、概念条目必须包含哪些 section、命名必须统一。LLM 每次启动都先读这个文件输出质量立刻稳定下来。第一次全量编译可能要半小时到一小时但后面每天增量编译只要几分钟——这正是工程思维的威力。# 编译规范示例CLAUDE.md 关键片段 ## 摘要模板 - 核心结论 - 关键证据 - 主要疑点 - 核心术语 - 原始引用(保留原文段落 链接) ## 概念映射规则 - 新概念 → 新建 wiki/concepts/xxx.md - 已有概念 → 在对应条目追加「新增证据」section并保留来源输出层每次对话都变成永久库存最妙的设计是“Output 落文件”。以前问 LLM 问题答案只存在聊天记录里下次还要重问。现在每次复杂提问的结果都以 Markdown 形式存到 outputs/qa/带完整推理过程和原始引用。下次遇到类似问题Claude 直接读已有的 QA 文件知识库本身就越用越厚。健康检查给知识库做每周“代码审查”大多数人从来没想过笔记库也会有“技术债”。我现在每周让 Claude 跑一次健康检查重点看三件事一致性同一个概念是否有多版本定义完整性哪些条目缺定义、缺例子、缺来源孤岛笔记入链出链都少于 2 的条目报告自动存到 outputs/health/。做了几周后我搜到任何一条笔记都敢直接信任——这在以前是完全不敢想象的。传统手动整理 vs LLM 编译方案对比生产级权衡表维度传统手动整理LLM 编译体系实际影响3 个月后维护成本指数级上升人肉整理接近线性增量编译从“放弃”到“每天 5 分钟”知识可发现性靠记忆标签索引概念映射健康检查搜索命中率提升 5 倍一致性极易出现矛盾定义每周自动审计几乎零矛盾可追溯性模糊“好像在哪里看过”精确到原始段落引用时不再心虚规模扩展性200 篇后彻底失控轻松过万篇先索引后 RAG流程跑通后再上基础设施为什么现在别急着上 RAG先跑通最小闭环很多人一上来就想搭向量数据库、调 Embedding、切片策略结果一个月过去了笔记库还是只有 20 篇文章。Karpathy 的建议非常务实在笔记规模 100 篇、40 万词左右时靠几个索引文件 LLM 直接阅读就完全够用。只有当规模真正爆炸、搜索开始失效时再考虑 RAGMotherDuck 甚至有现成的 DuckDB Obsidian 方案。先跑通“raw → 编译 → 输出”的闭环比任何基础设施都重要。这和写代码一个道理先让 MVP 能用再谈架构优化。两周就能跑通的最小闭环实践建议第一周建 raw/wiki/outputs 三个目录配好 Web Clipper 模板攒 5-10 篇 raw 后做第一次编译。第二周开始把复杂 QA 落盘启动第一次健康检查按报告补缺失、加链接。两周后你就会拥有一个能自我进化的小系统。后面只需要持续喂 raw/让编译器持续工作即可。知识库的“GitHub 时刻”已经到来。今天它还是 Obsidian LLM 手搓脚本的组合看起来 hacky但底层范式已经确立把知识当代码管有输入、有编译、有测试、有健康检查。程序员积累多年的工程直觉终于可以直接用在自己的大脑扩展上了。如果你也在搭建自己的第二大脑你目前是用什么工具、什么流程来对抗笔记腐烂欢迎在评论区分享你的方案——这个领域还很早期说不定你正在实践的就是未来某个 killer product 的雏形。我是紫微AI在做一个「人格操作系统ZPF」。后面会持续分享AI Agent和系统实验。感兴趣可以关注我们下期见。

更多文章