3
0
0

Hermes Agent + LLM Wiki + Obsidian:让你的知识真正复利积累

2026-08-15
摘要:

你有没有过这样的经历:跟 AI 聊了一下午,它记住了你所有的项目细节、研究进展、踩过的坑……然后你关掉会话,第二天打开,它全忘了。RAG 能救吗?能,但每次提问它都从原始文档里重新翻一遍,知识从来没有真正 "长" 出来。

这篇文章介绍一套三者结合的方案:Hermes Agent(AI 管家)+ LLM Wiki(知识库模式)+ Obsidian(浏览界面),让知识真正复利积累——你只管喂来源,AI 负责整理维护,Obsidian 负责让你看得舒服。


一、一句话定位:谁是 IDE,谁是程序员,谁是代码库?

Karpathy 在他的 LLM Wiki gist 里用一句话概括了三者的关系:

"Obsidian is the IDE; the LLM is the programmer; the wiki is the codebase."
(Obsidian 是 IDE,LLM 是程序员,wiki 是代码库。)

组件 角色 一句话
Hermes Agent 知识库的"管家/程序员" Nous Research 的自托管 AI 代理,自动抓取、整理、互链、维护 wiki
LLM Wiki 知识库的"代码库" Karpathy 提出的模式:由 LLM 增量维护的、用 [[wikilinks]] 互链的纯 markdown 知识库
Obsidian 知识库的"IDE" 人类浏览、可视化、编辑 wiki 的前端界面(vault 直接打开 wiki 目录)

你(人类)的职责:策展来源、引导分析、提出好问题、思考这一切意味着什么。
LLM 的职责:其余一切——抓取、摘要、交叉引用、建档、索引、维护一致性。


二、Hermes Agent:自托管的 AI 管家

Hermes Agent 是 Nous Research 开源的自托管 AI agent 框架,和 Claude Code、Codex 同类,但可以部署在你自己的服务器上——模型供应商支持 DeepSeek、Kimi、阿里 DashScope、GLM 等国内服务,在中国大陆部署完全可行。

它凭什么适合当 "知识库管家"?

2.1 持久记忆(Persistent Memory)

官方文档:"Hermes Agent has bounded, curated memory that persists across sessions."

  • 记忆存在 ~/.hermes/memories/ 的两个文件里:
  • MEMORY.md — 代理的个人笔记(环境事实、约定、经验),上限 2200 字符
  • USER.md — 用户画像(你的偏好、风格、期望),上限 1375 字符
  • 会话开始时作为快照注入系统提示,代理可以用 memory 工具自行增删改

这意味着什么? 你告诉它 "我是这个 wiki 的维护者,约定见 SCHEMA.md",它会一直记得——不用每次重新自我介绍。

2.2 技能系统(Skills)

技能是按需加载的知识文档(progressive disclosure,渐进式披露),兼容 agentskills.io 开放标准:

hermes skills list              # 列出已安装技能
hermes skills search QUERY      # 搜索技能中心
hermes skills install ID        # 安装技能
hermes skills publish PATH      # 发布自己的技能

llm-wikiobsidian 都是 Hermes 官方 bundled skills——开箱即用。

2.3 Cron 定时任务

# 每天定时摄入新论文进 wiki(llm-wiki + arxiv 两个技能协作)
hermes cron create "every 1d at 08:00" \
  "Check arXiv for new papers on <主题>, ingest the interesting ones into the wiki" \
  --skill llm-wiki --skill arxiv

# 每周一 lint 健康检查
hermes cron create "every monday 9am" "Lint the wiki and report issues" --skill llm-wiki

知识库在无人值守时自动生长。

2.4 多平台消息接入(Gateway)

Hermes 的 gateway 是单个后台进程,支持 20+ 平台:Telegram、Discord、Slack、WhatsApp、Signal、微信(Weixin)、企业微信(WeCom)、QQ、钉钉、飞书、Teams、LINE……

关键点:消息平台上的机器人拥有完整工具权限(含终端)——你可以直接在微信里对 Hermes 说 "把这篇论文收进 wiki",它在服务器上完成全部 ingest 工作。

2.5 自改进能力

  • 技能累积:每次解决复杂问题,Hermes 可以把过程固化为技能文档,未来自动加载
  • Curator:后台维护技能生命周期,自动归档闲置技能
  • 记忆沉淀:经验写进 MEMORY.md,跨会话保留

三、LLM Wiki 模式:为什么它比 RAG 强?

3.1 核心思想:编译一次,持续更新

Karpathy 在 gist 里一针见血地指出 RAG 的问题:

"Most people's experience with LLMs and documents looks like RAG: you upload a collection of files, the LLM retrieves relevant chunks at query time... the LLM is rediscovering knowledge from scratch on every question. There's no accumulation."
(LLM 在每个问题上都从零重新发现知识,没有积累。)

LLM Wiki 的做法相反:加入新来源时,LLM 不只是建索引,而是真正阅读它、提取关键信息、整合进现有 wiki——更新实体页、修订主题摘要、标注新旧数据的矛盾、加强或挑战已有的综合结论。

"The wiki is a persistent, compounding artifact. The cross-references are already there. The contradictions have already been flagged. The synthesis already reflects everything you've read."
(wiki 是持久、复利积累的产物:交叉引用已就位,矛盾已标注,综合已反映你读过的一切。)

3.2 三层架构

wiki/
├── SCHEMA.md           # 第3层:结构约定、标签体系、维护工作流
├── index.md            # 内容目录:每页一行(wikilink + 摘要)
├── log.md              # 时间线日志:append-only
├── raw/                # 第1层:不可变原始资料(articles/papers/transcripts/assets)
├── entities/           # 第2层:实体页(人/组织/产品/模型)
├── concepts/           # 第2层:概念/主题页
├── comparisons/        # 第2层:对比分析页
└── queries/            # 第2层:值得保留的查询结果
内容 谁拥有
Raw sources 原始资料合集(文章/论文/图片),不可变,LLM 只读不改
The wiki LLM 生成的 markdown 文件(摘要/实体页/概念页/综合结论) LLM 写作,你阅读
The schema SCHEMA.md,告诉 LLM wiki 的结构和约定 你与 LLM 共同演化

Schema 是关键——"它让 LLM 成为守纪律的 wiki 维护者,而不是通用聊天机器人"。

3.3 两大导航文件

  • index.md(内容导向):所有页面的目录,每页一行链接+摘要。LLM 回答查询时先读 index 找相关页。中等规模(约 100 来源、数百页)下无需 embedding 向量检索也能高效工作。
  • log.md(时间线导向):append-only 的 ingest/query/lint 记录。可用 grep "^## \[" log.md | tail -5 查看最近活动。

3.4 三大操作

  1. Ingest(摄入):丢新来源 → LLM 读 → 写摘要页 → 更新 index → 更新相关页面 → 记 log。单个来源可能触及 10-15 个页面(复利效应!)
  2. Query(查询):向 wiki 提问 → LLM 搜索、阅读、带引用综合回答 → 好答案归档回 wiki(comparisons/)
  3. Lint(体检):检查矛盾、过时主张、孤儿页、断链、缺页概念、缺失交叉引用

四、Obsidian:知识库的 IDE

4.1 Vault 直接打开 wiki 目录

wiki 就是一个 markdown 文件目录——"open it in Obsidian, VS Code, or any editor. No database, no special tooling required."(Karpathy 原话)在 Obsidian 里 "Open folder as vault" 选择 wiki 目录即可,零迁移成本

4.2 Wikilinks 渲染

Obsidian 原生支持 [[wikilinks]] 格式,而且有个杀手级特性:链接到不存在的笔记时,Obsidian 会自动创建它——非常适合 LLM 生成 wiki 页面的工作流。文件重命名时 Obsidian 自动更新所有内部链接。

4.3 Graph View:看你的知识网络

Karpathy:"Obsidian's graph view is the best way to see the shape of your wiki — what's connected to what, which pages are hubs, which are orphans."

  • 圆点 = 笔记,连线 = 内部链接,被引用越多节点越大(hubs 一目了然)
  • "Orphans" 开关显示无链接的孤儿页——这正是 wiki lint 要找的!

4.4 Dataview:用 frontmatter 做动态查询

如果 LLM 给 wiki 页面加上 YAML frontmatter(tags、dates、sources),Dataview 插件就能实时生成动态表格:

TABLE tags, updated FROM "entities" WHERE contains(tags, "company")
TABLE created, sources FROM "concepts" SORT updated DESC

4.5 配套工具

  • Obsidian Web Clipper(浏览器扩展):网页一键转 markdown,快速进入 raw 集合
  • 附件目录:Settings → Files and links → 设为 raw/assets/
  • wiki 本身是 git 仓库:免费获得版本历史、分支、协作

五、三者结合:知识复利的完整闭环

5.1 分工明确

职责 承担者
选择/整理来源、提问、引导方向 (人类)
抓取、摘要、交叉引用、建档、索引、维护 Hermes Agent(LLM 程序员)
浏览、可视化、手动编辑、评审 Obsidian(IDE)
存储编译后的知识 LLM Wiki(代码库/持久知识层)

5.2 RAG vs LLM Wiki

维度 RAG LLM Wiki
每次查询 从原始文档重新检索分块 直接读已编译好的页面
积累 无——知识不沉淀 有——持续复利
交叉引用 每次现场找 已内嵌在 wikilinks 中
矛盾处理 每次重新发现 摄入时已标注
维护成本 低(但质量不增长) 低(LLM 做书呆子式维护)

"Humans abandon wikis because the maintenance burden grows faster than the value. LLMs don't get bored, don't forget to update a cross-reference, and can touch 15 files in one pass."
(人类放弃 wiki 是因为维护负担增长快于价值;LLM 不会无聊、不会忘记更新交叉引用、一次能改 15 个文件。)

5.3 Hermes 让闭环自动运转

  1. cron 定时 ingest:每天自动检查 RSS/arXiv,把新内容收进 wiki
  2. 多平台入口:微信/Telegram 里随手丢链接"收进 wiki"
  3. 持久记忆:每次会话自动带"你是 wiki 维护者"的上下文
  4. 查询即沉淀:好答案 filed 回 wiki,探索也复利
  5. lint 自动化:定时健康检查、矛盾标记、孤儿页清理

六、动手配置:10 分钟跑起来

6.1 确认两个官方技能

# 安装 Hermes(如直连受限,先配代理或国内镜像)
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

# 确认 obsidian 和 llm-wiki 技能已装
hermes skills list | grep -E "llm-wiki|obsidian"

# 缺失则安装
hermes skills install llm-wiki
hermes skills install obsidian

6.2 ⚠️ 关键配置:两个环境变量指向同一目录

这是最常见的坑——两个技能各自用不同的环境变量定位目录,缺省值不一样~/wiki vs ~/Documents/Obsidian Vault),不配置的话它们根本不会指向同一个地方!

# 编辑 ~/.hermes/.env(用 hermes config env-path 查看实际路径)
WIKI_PATH=/home/user/wiki
OBSIDIAN_VAULT_PATH=/home/user/wiki

llm-wiki skill 的官方说明:"If using the Obsidian skill alongside this one, set OBSIDIAN_VAULT_PATH to the same directory as the wiki path."

改完 /reload 生效。

6.3 初始化 wiki

# 让 Hermes 按 llm-wiki skill 流程初始化(会创建 SCHEMA/index/log 并问你领域)
hermes chat -q "请用 llm-wiki skill 初始化我的 wiki,领域是:AI/ML 研究"

6.4 Obsidian 端设置

  1. Open folder as vault → 选择 wiki 目录
  2. 附件目录设为 raw/assets
  3. 确认 "Use [[Wikilinks]]" 开启
  4. 安装 Dataview 插件
  5. 打开 Graph View,勾选 Orphans 发现孤儿页

6.5 日常使用

摄入:/skill llm-wiki,请摄入这篇论文:<URL>。原始资料存 raw/papers/,更新相关页面。
查询:基于 wiki 回答:X 和 Y 有什么区别?
体检:lint 一下 wiki

6.6 服务器场景(headless)

Hermes 跑在服务器上、Obsidian 在笔记本 / 手机上?
- 方式 A:obsidian-headless(Node.js CLI)把服务器 wiki 与 Obsidian Sync 云端 vault 同步
- 方式 B:wiki 目录就是 git 仓库,服务器提交、本地拉取
- 方式 C:Syncthing / NextCloud 同步 ~/wiki


七、注意事项(避坑)

  • raw/ 目录不可变:LLM 只读不写,修正只发生在 wiki 页面层
  • 先定向再动手:llm-wiki skill 强制先读 SCHEMA + index + log,防止重复建页
  • frontmatter 必填:title / created / updated / type / tags / sources——支撑 Dataview 查询与过期检测
  • 标签必须来自 SCHEMA 的 taxonomy:新标签先加进 SCHEMA 再用,防止标签蔓延
  • WIKI_PATH / OBSIDIAN_VAULT_PATH 是 skill 约定变量,不是 Hermes 核心配置项——很多人在这里栽跟头

八、适用场景

  • 个人:目标、健康、心理、自我提升的长期记录
  • 研究:数周/数月深入一个主题,构建不断演化的综合 wiki
  • 读书:边读边建档,人物/主题/情节线页面互链
  • 团队/商业:会议记录、项目文档、客户通话喂给 LLM 维护的内部 wiki
  • 竞品分析、尽职调查、旅行规划、课程笔记、爱好深潜……

参考链接


一句话总结:让 Hermes 当书呆子管理员,让 wiki 当你的第二大脑,让 Obsidian 当大脑的显示器——而你要做的,只是不断往里面丢有意思的东西。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

评论