用 Hermes 打造 LLM Wiki 知识库:Karpathy 方法实战指南

用 Hermes 打造 LLM Wiki 知识库:Karpathy 方法实战指南
青萍叙事前言
你用过 RAG 吗?
把一堆文档扔给 AI,它帮你检索、回答问题。
听起来很美,但用久了你会发现一个问题:每次提问,AI 都在从头翻你的文档。
上周它帮你总结过的东西,这周再问,它又重新读一遍原始材料,可能还得出不同的结论。
知识不会积累,问一次用一次,用完就丢。
2026 年 4 月,Karpathy 发了一个 GitHub Gist,提出了一个叫 LLM Wiki 的模式。
核心思路很简单:别让 AI 每次都重新翻文档,让它把知识编译成结构化的 wiki,持续维护。
Hermes Agent 内置了一个 llm-wiki skill,把这个模式落地了。
今天来看看怎么用。
RAG 和 Wiki 的区别
传统 RAG 的工作方式是”即时检索”:你问一个问题,系统从原始文档里找最相关的片段,拼进上下文,让 LLM 生成回答。
LLM Wiki 的思路完全不同:知识先编译,再查询。
graph LR
A[原始文档] --> B[RAG: 每次检索]
A --> C[Wiki: 一次编译]
B --> D[临时回答]
C --> E[持久化知识页面]
E --> F[交叉引用+持续更新]
Wiki 里的页面已经做好了交叉引用,矛盾已经被标记,综合分析已经反映了所有已收录的来源。
你问问题的时候,直接读 wiki 页面就行,不需要重新解析原始文档。
Karpathy 是这么说的:
Obsidian 是 IDE,LLM 是程序员,wiki 是代码库。
三层架构
LLM Wiki 的目录结构分三层,Hermes 的 llm-wiki skill 按这个思路设计了具体的组织方式:
graph TD
A[wiki 目录] --> B[Layer 1: raw/ 原始来源]
A --> C[Layer 2: entities/ concepts/ comparisons/]
A --> D[Layer 3: SCHEMA.md 配置]
B --> E[不可修改的原始材料]
C --> F[Agent 维护的知识页面]
D --> G[定义结构和规则]
**第一层 raw/**:存放原始材料,网页文章、PDF 论文、会议记录等。
这些文件一旦存入就不再修改,是知识的”源代码”。
第二层 wiki 页面:由 Agent 创建和维护的 markdown 文件。
分成四种类型:
- **entities/**:实体页面,比如某个工具、某个人物、某个产品
- **concepts/**:概念页面,比如”RAG 是什么””向量数据库原理”
- **comparisons/**:对比页面,比如”Docker vs Podman”
- **queries/**:有价值的查询结果归档
第三层 SCHEMA.md:Hermes 把这个配置文件命名为 SCHEMA.md(Karpathy 原始模式中叫 CLAUDE.md 或 AGENTS.md)。
它定义了 wiki 的领域范围、命名规范、标签分类、页面创建门槛等。
这是让 Agent 成为”纪律严明的 wiki 维护者”而不是”随便聊天的 AI”的关键。
三大核心操作
收录(Ingest)
把一篇新文章喂给 wiki,Agent 会:
- 保存原始文件到
raw/articles/,计算 sha256 用于后续检测内容变化 - 识别文章中提到的实体和概念
- 检查 wiki 里是否已有相关页面,避免重复创建
- 创建或更新 wiki 页面,添加交叉引用
- 更新
index.md索引和log.md日志
一篇来源文章可能触发 5-15 个 wiki 页面的更新。
这就是”知识复利”的效果。
查询(Query)
对 wiki 提问,Agent 会:
- 先读
index.md找到相关页面 - 大型 wiki(100+ 页面)还会全文搜索
- 读取相关页面后综合回答,引用来源页面
- 如果这个回答有长期价值,归档到
queries/目录
查询结果被归档后,下次遇到类似问题就不用重新推理了。
健康检查(Lint)
定期让 Agent 检查 wiki 的健康状况:
- 孤儿页面(没有被其他页面引用的页面)
- 断链(wikilink 指向不存在的页面)
- 过时内容(有新来源提及但页面超过 90 天没更新)
- 矛盾标记(
contested: true的页面需要人工审查) - 标签一致性(所有标签必须在 SCHEMA.md 的分类表里)
用 Hermes 实战
Hermes Agent 内置了 llm-wiki skill,直接用斜杠命令 /llm-wiki 就能激活完整的工作流。
初始化 Wiki
对 Hermes 发送:
1 | /llm-wiki 帮我创建一个 wiki,领域是 AI 工具和开发技术。 |
Hermes 会创建目录结构,生成定制化的 SCHEMA.md、index.md 和 log.md。
你也可以自定义 wiki 路径,在 ~/.hermes/.env 中设置:
1 | WIKI_PATH=~/my-wiki |
不设置的话默认在 ~/wiki。
收录一篇文章
1 | /llm-wiki 帮我把这篇文章收录到 wiki:https://example.com/some-article |
Hermes 会用 web_extract 抓取内容,保存到 raw/articles/,然后自动创建或更新相关 wiki 页面。
你也可以一次性收录多篇文章,Hermes 会批量处理,减少重复更新。
提问
1 | /llm-wiki 我的 wiki 里关于 Docker 的内容有哪些? |
Hermes 会搜索 wiki,找到所有 Docker 相关页面,给你一个结构化的回答。
健康检查
1 | /llm-wiki 帮我检查一下 wiki 的健康状况。 |
Hermes 会运行完整的 lint 流程,报告问题并给出修复建议。
和 Obsidian 配合
Wiki 目录就是一个普通的 markdown 文件夹,可以直接用 Obsidian 打开。
[[wikilinks]] 在 Obsidian 里会渲染成可点击的链接,Graph View 能直观看到知识网络的连接关系。
如果你装了 Dataview 插件,还能用 YAML frontmatter 做高级查询,比如”列出所有标签包含 llm 的页面”。
使用建议
不要追求完美分类:知识的边界是模糊的,先把内容收录进去,交叉引用会帮你建立连接。
收录比查询更重要:wiki 的价值在于积累。
读到好文章就告诉 Hermes “收录一下”,比等到要用再翻文档高效得多。
定期做健康检查:每月跑一次 lint,清理断链和过时内容。
善用 confidence 标记:对于只有一个来源支撑的观点,标记 confidence: medium,避免弱证据被当成定论。
知识管理的本质不是收集信息,而是让信息在需要的时候出现,并且是已经整理好的状态。
LLM Wiki 让这件事第一次变得真正可行。











