Obsidian Wiki — AI 代理的第二大脑
让 AI 代理把你弄明白的知识沉淀为相互链接的 Markdown 页面,随时可查、可维护的数字大脑。
- Star 数
- ★ 3.6k
- 最近更新
- 2 天前
- License
- MIT
- 主语言
- Python
- FA 评分
- 84/100 · 表现良好
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Codex · Claude Code
- 费用
- 免费,无需付费服务
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 开发者三个月后在另一个仓库遇到类似问题,用 /wiki-query 检索当年已编译的解法,带 wikilink 引用直接命中。
- 不适合
- 需要官方同步或备份服务的团队,项目本身只是本地文件夹
- 主要想摄入音频和视频资料的用户,这些格式会被跳过
- 源码审查
- 84/100 · 表现良好
这个 Agent 能做什么,适合哪些场景?
obsidian-wiki 是一个基于 Obsidian 库的代理记忆系统,灵感来自 Andrej Karpathy 的 LLM Wiki 模式:把知识编译进互相链接的 Markdown 页面,而不是反复向 LLM 提问或每次重跑 RAG。它提供 39 个以 Markdown 文件形式分发的技能(slash commands),可被 Claude Code、Codex、Cursor、Gemini CLI 等十余种代理读取执行,另附可选的 Python CLI 和 from obsidian_wiki import Memory 库接口。摄入支持增量处理(manifest 跟踪已摄入来源),每条断言标记为 extracted、inferred 或 ambiguous;lint、去重和交叉链接技能负责保持知识库整洁。会话钩子在会话开始时注入主档案和未完结线索,结束时提示捕获可复用内容。所有知识都是磁盘上的纯 Markdown,无运行时、无 API key、无厂商锁定。
运行 /wiki-setup 初始化知识库后,/wiki-ingest ~/research 摄入文档、PDF、聊天记录、转录、截图和 URL;/wiki-update 在当前仓库内提炼知识(代码图感知);/wiki-capture 保存当前对话;/wiki-history-ingest claude 挖掘过去的 Claude 会话。查询用 /wiki-query、/wiki-narrate(带 [[wikilink]] 引用的主题简报)和 /wiki-digest,会话检索用 obsidian-wiki sessions-build 与 sessions-query。维护靠 /wiki-lint(断链、孤页、矛盾)、/wiki-dedup、/cross-linker 和 /wiki-status。Python 侧通过 Memory("~/brain") 调用 remember、add、search、recap,无需 API key 或向量库。图可导出为 graph.json、GraphML、Neo4j Cypher、Postgres SQL 或交互式 graph.html,也可经 Docker 部署为 HTTP/MCP 记忆服务。
- 开发者三个月后在另一个仓库遇到类似问题,用 /wiki-query 检索当年已编译的解法,带 wikilink 引用直接命中。
- 研究员把 ~/research 目录交给 /wiki-ingest,让代理把论文和笔记合并进已有页面而非堆积重复文件。
- 重度 Claude 用户用 /wiki-history-ingest 把历史会话中散落的结论挖进知识库。
- 多代理并行工作的团队靠带锁的原子写入(index.md、log.md、hot.md、_meta/)避免互相覆盖更新。
- 想直观了解知识结构的用户在 Obsidian 图谱视图中让代理 'color my graph' 按标签着色节点。
- Python 开发者用 Memory 类把现有 Obsidian 库当作代理记忆,在会话开始时注入 recap。
如何安装或部署这个 Agent?
推荐方式是 pip 安装并初始化知识库:
pip install obsidian-wiki
obsidian-wiki setup --vault ~/brain使用 uv 或 pipx 的用户:
uv tool install obsidian-wikipipx install obsidian-wiki(注意 uvx 不适用,详见安装文档。)setup 默认注册两个会话钩子,加 --no-hooks 可跳过。Claude Code 用户可改用插件方式,无需 Python:
/plugin marketplace add Ar9av/obsidian-wiki
/plugin install obsidian-wiki@obsidian-wiki(插件只含技能,不含会话钩子和 CLI。)也可以完全不在终端操作,直接对代理说:
https://github.com/Ar9av/obsidian-wiki — set up my wiki无需任何 API key。
如何使用这个 Agent?
安装后打开任意项目,对代理说 "set up my wiki"。日常循环以三条命令起步:
/wiki-setup
/wiki-capture
/wiki-query摄入资料:
/wiki-ingest ~/research
/wiki-update
/wiki-history-ingest claude查询:
/wiki-query what do I know about rate limiting?
/wiki-narrate MCP security
/wiki-digest week维护知识库:
/wiki-lint
/wiki-dedup
/wiki-statusPython 调用示例:
from obsidian_wiki import Memory
memory = Memory("~/brain")
memory.remember("stack", "Python, FastAPI", confidence=0.9)
memory.add("Postgres was chosen over MySQL for partial indexes.")
memory.search("postgres")
memory.recap()在 Obsidian 中打开库,用 Cmd/Ctrl+P → "Open graph view" 查看图谱。
这个 Agent 有哪些优点和局限?
- 知识是磁盘上的纯 Markdown,可读、可 grep、可 diff,无厂商锁定,用 git 或自己的同步方式管理即可。
- 编译而非堆积:新知识合并进已有页面,矛盾被标记,避免重复。
- 增量摄入:manifest 跟踪每个来源,第二次运行只处理变化部分。
- 实测结构性问题提速明显:同一模型下回答时间 81s→19s,正确率 44%→83%,工具调用 9.9→4.6。
- 跨 39 个技能、十余种代理通用,一个 .skills/ 目录符号链接到所有代理即可。
- 评测样本很小(38 页库、每格 n=2),官方也承认百分比只是指示性,且有一次运行代理忽略 CLI 导致失败。
- 不是同步服务或备份,需要自己用 git 或其他方式保护数据。
- 音频和视频输入被跳过,Office 文件取决于所用代理的能力。
- 不是转录记录器,内容只有在你或技能判断值得保留时才写入,可能漏掉想留的信息。
- 项目自述处于早期阶段,去重与交叉引用质量仍有改进空间。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Obsidian Wiki — AI 代理的第二大脑 当前 | 84 · 表现良好 | Agent 插件 / 技能免费 | ★ 3.6k | 2 天前 | Python | Codex · Claude Code |
| SwarmVault | 67 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 731 | 4 个月前 | TypeScript | Codex · Claude Code |
| Obsidian Second Brain | 66 · 存在缺口 | Agent 插件 / 技能免费 + 模型费 | ★ 5k | 今天 | Python | Codex · Claude Code |
| PipesHub 企业 AI 上下文平台 | 66 · 存在缺口 | 自托管服务免费 + 模型费 | ★ 3.9k | 今天 | Python | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
最小权限:核心 CLI 零第三方依赖、纯本地运行,但 setup 会向十余个 agent 目录写入符号链接和规则文件并自动注册会话钩子(有 --no-hooks 但默认开启),扣 1 分。用户确认:暂存写入(_staging + wiki-stage-commit)、捕获钩子仅建议不强制、GitHub 同步可选,但安装阶段批量写入无逐项确认。数据流透明度满分:_raw 暂存、manifest 增量、'nothing leaves your machine' 与架构文档一致。敏感数据处理:visibility/pii 标签与过滤模式是可选而非默认,无自动 PII 检测,扣分。依赖安全满分:运行时依赖为零,CI action 全部按 SHA 锁定。外部影响:可选的 cron 自动提交与多目录写入属合理但非最小。回滚:金库是普通 git 目录且写入原子化,但技能安装/卸载无明确回滚路径。来源归属满分:明确引用 Karpathy 模式、wikilink 引用、trust 字段与置信度体系。
自洽性满分:39 个技能、CLI、Python API 在 README/installation/configuration 间表述一致,legacy 配置路径仍被尊重。依赖可用性扣 1 分:CodeGraph、QMD、PageIndex 等外部后端有优雅降级,但其 CLI/MCP 契约未版本锁定,存在漂移风险。失败信息满分:doctor 健康检查、钩子全部 exit 0 不阻塞会话、WIKI_RECAP_DEBUG 可解释静默退出、schema 校验失败关闭(exit 1)。
受众与场景满分:明确面向开发者知识管理,覆盖摄入/查询/清理/会话记忆全链路。能力边界满分:'What it isn't' 一节明确列出非转录、非备份、非 oracle、非转换器。触发精确度扣 1 分:斜杠命令精确,但大量依赖自然语言路由('set up my wiki'、过滤模式触发短语),静态文本下无法验证路由歧义。环境适配满分:覆盖十余个 agent、XDG 规范、legacy 路径兼容、多金库 @name 路由。
信息架构满分:文档矩阵完整(安装/技能/架构/CLI/配置/API/部署)。安装说明满分:五种安装路径、陷阱提示(uvx 问题、legacy 迁移)、doctor 验证。命名稳定性扣 1 分:存在 HIVEMIND_CAPTURE 旧拼写、~/.obsidian-wiki 旧路径、Skills CLI 已弃用,说明有历史改名成本(虽兼容处理到位)。示例与 FAQ 满分:18 页 demo 金库、对比表、图导出示例。已知局限满分:研究小样本如实披露、'What it isn't' 明确。许可满分:MIT 双处声明(LICENSE + pyproject license-files)。版本管理扣 1 分:CalVer 标签存在但证据中未见 CHANGELOG 文件。维护责任扣 1 分:SECURITY.md 有响应承诺与支持版本说明,但证据显示为单一维护者的早期项目(Beta 分类器),持续性无保障。
输出可用性满分:wikilink 引用、lint/去重/状态命令、多种图导出格式、graph.html 自包含交互页。边际价值扣 1 分:性能对比(4.4× 提速、44%→83% 正确率)仅有作者自报的小样本基准(n=2/单元格、单金库 38 页),虽方法与局限披露诚实,但静态审查无法独立证实收益幅度。成本效益扣 1 分:'API 成本不变' 仅来自同一自报基准;安装成本(symlink 多 agent、钩子注册)与维护金库成本未被量化。
主张可追溯性满分:基准数据溯源到 PR #175,含逐次日志、networkx 第三方 ground truth(3.5e-18 匹配)与方法细节。跨来源印证扣 1 分:README/docs/CI/测试内部相互印证(wheel 技能校验、test fixtures 与文档契约一致),但无第三方评测或独立用户验证。事实与推断分离满分:产品本身强制 extracted/inferred/ambiguous 标注且 lint 检测漂移,文档对自身研究的推断性结论也明确降级('treat the exact percentages as indicative')。
- 安装会向多个 agent 目录写入符号链接与规则文件并默认注册会话钩子;不需要钩子时务必使用 --no-hooks,并在安装后用 obsidian-wiki doctor 核查。
- 敏感数据保护依赖可选的 visibility/pii 标签,默认模式下所有页面均可输出;摄入含个人信息的文档前请自行评估。
- 性能与准确率提升数据为作者自报的小样本基准(n=2),只应视为量级指示而非保证。
- 可选后端(CodeGraph、QMD、PageIndex)的 CLI/MCP 契约未版本锁定,升级后行为可能漂移。
- 如启用 GitHub 同步,请确保仓库为私有;可选的 cron 自动提交会推送全部金库变更。
- 发布路径(Claude Code 插件)跟踪 main 分支最新提交而非固定版本,存在行为随时变更的风险。