开发工作流程
Obsidian + Claude Code 教程:连接笔记、查找并核对答案
把 Claude Code 接入 Obsidian,不必知道文件名也能找到项目笔记,并对照来源核实最新决定。附设置步骤、实测搜索提示和答案示例;MCP 与插件均可选。
01
Obsidian vault 就是一个 Markdown 文件夹。在这个文件夹运行 Claude Code,它就能读取、搜索和修改你的笔记。
02
不必知道文件名也能找到项目笔记,区分当前决定与旧消息,再核对来源。
03
Wenlan 是为 AI 整理和维护知识而设计的个人 Wiki,内置知识页、来源跟踪和修订检查。可以接入 Obsidian 笔记,也可以直接使用 Wenlan。
01
先给答案
Claude Code 搭配 Obsidian 不需要插件。在 vault 文件夹打开终端并运行 claude,Claude Code 就能在访问权限允许的范围内,读取、搜索、创建和修改这个文件夹中的笔记。
不想用终端?如果有 Claude Pro、Max、Team 或 Enterprise 订阅,在 Claude Desktop 打开 Code 标签页,选择 Local,再把练习 vault 选为项目文件夹。接着就能做下方相同的两篇笔记练习。
先完成下方的安装步骤和两篇笔记练习,查出当前项目决定、核对引用,分清已确认和仍未知的信息。需要额外功能时,再从下表选择工具:
| 做法 | 多了什么 | 适合谁 |
|---|---|---|
| 在 vault 文件夹运行 Claude Code | 读写、搜索所有 Markdown 文件 | 几乎所有人,从这里开始 |
| 在 vault 放 CLAUDE.md | 固定指示:文件夹结构、笔记风格、哪些不能动 | 希望每次 session 结果一致 |
| Obsidian CLI + Obsidian skills | 反向链接、Obsidian 搜索、任务,以及正确的 Obsidian 语法、Bases 与 Canvas | 大量使用链接与 Obsidian 功能的 vault |
| Obsidian MCP server | 提供给 MCP client 的 vault 工具 | 普通 Claude 对话或多个 client 共用工具 |
| Obsidian 内的插件(Claudian) | 在 Obsidian 侧边栏和 Claude Code 对话 | 不想用终端的人 |
02
开始前:先安装并登录 Claude Code
这篇使用桌面电脑上的 Claude Code 终端版。先按官方说明安装,再运行 claude --version,确认终端能找到命令。运行 claude 并完成登录后,再接入 vault。你需要支持的 Claude 订阅、Console API 账户或已配置的模型服务;安装 Obsidian 插件不会附送模型使用额度。
第一次操作,先建立独立的练习 vault,只放下面两份虚构笔记。把命令中的 ~/Documents/MyVault 换成它的实际路径;路径有空格时,用双引号包起来。先别用整个私人笔记库。
下方终端命令适用于 CLI 路线。如果使用 Desktop 的 Code 标签页,在那里选好练习 vault 后,可以直接跳到两篇笔记练习。
03
步骤 1:在 Obsidian vault 里运行 Claude Code
vault 就是你在 Obsidian 创建时选的文件夹。从那里启动 Claude Code。Claude Code 一保存,Obsidian 就会显示变更,所以两边可以并排打开。
如果你正在另一个项目里工作,不必切换文件夹,把 vault 加为额外文件夹即可。
- 先备份。用 git 管理 vault,或开启 Obsidian Sync 的版本历史,改坏了才能恢复。
- 先完成下方只读取、不改文件的两篇笔记练习,再尝试修改或整理笔记。
- Claude Code 会把读到的文字发送给你配置的模型服务。私密文件夹请放在练习 vault 之外;只在提示中要求不要读取,不等于限制访问权限。
cd ~/Documents/MyVault
claude
# 或在其他项目文件夹里:
claude --add-dir ~/Documents/MyVault04
第一次实操:从两篇笔记找出最新决定
在练习 vault 创建下面两篇 Markdown 笔记,分别粘贴对应文字。这是虚构练习:后一篇笔记改了日期,但仍留下一个未知问题。不需要先安装 MCP、Obsidian CLI 或插件。
在这个 vault 启动 Claude Code 后,把下方提示粘贴进对话。这次只读取并回答,不整理文件夹,也不改写笔记。
| 笔记文件名 | 粘贴的内容 |
|---|---|
| 01-plan.md | 10 月 1 日会议:预计 10 月 20 日进行演示。负责人是小梅。场地尚待确认。 |
| 02-update.md | 10 月 3 日更新:演示改到 10 月 22 日。负责人仍是小梅。尚未确认任何场地。 |
读取 01-plan.md 和 02-update.md。
不要创建、修改、移动或删除任何文件。
演示目前是哪一天?谁负责?还有什么待确认?
每个答案请列出来源文件名,并摘录支持答案的原句。
区分旧日期与新日期,不要自行补上缺少的信息。05
核对这次答案,再换成自己的笔记
答案应该是:10 月 22 日、小梅、场地尚未确认。10 月 20 日是已被更新的旧日期。自行打开它列出的来源:新日期应来自 02-update.md;如果回答了某个具体场地,就是自行编造。
找不到文件,先检查工作文件夹与文件名;用了旧日期,请它比较两份笔记的日期与原句;编造场地,就要求标注未知。两份原始笔记都应保持不变。能核对这个小答案后,再用同一个真实项目的几份非敏感笔记练习。
这样才完成第一件有用的事:从分散笔记找回最新决定,并能自己核对来源。下面的 CLAUDE.md、CLI、MCP 与插件,是以后有需要再加的可选项。这个练习不代表 AI 已能安全整理整个 vault。
想让这份答案成为项目有新进展时,还能接着使用的知识?Wenlan 已内置知识页、来源跟踪和修订检查,不必自己拼装这套维护流程。接着用下面的练习,把现有 Obsidian 笔记接进来试试。
最新日期:10 月 22 日
02-update.md:「10 月 3 日更新:
演示改到 10 月 22 日。」
负责人:小梅
02-update.md:「负责人仍是小梅。」
待确认:场地
02-update.md:「尚未确认任何场地。」
已被取代的旧日期:10 月 20 日
01-plan.md:「10 月 1 日会议:
预计 10 月 20 日进行演示。」06
不知道文件名,也能搜索现有 vault
在自己的 vault 里,难点可能是先找到相关笔记。先从一个项目和几个非敏感文件夹开始。下面的提示针对虚构的 Harbor 演示;用在自己的任务时,请替换成你的问题、时间范围、项目名称、起始文件夹、可选的归档文件夹,以及要查的信息。保留对来源、旧决定、未知信息和搜索范围的核对要求。
请 Claude 提供来源笔记及其中带日期的陈述,而不只是给出看似肯定的答案。最近保存的文件也可能引用旧消息。如果两个决定冲突,而笔记没有说明哪个取代了哪个,答案应展示冲突,不要替你选日期。
- 打开列出的笔记,核对支持答案的原句。只有笔记确实支持主张时,引用才有帮助。
- 找不到来源时,提供项目名称、别名或另一个文件夹再搜索。搜索失败不代表 vault 中没有这项信息。
- 这只是只读要求,并不限制访问权限。首次隔离测试时,请使用只包含你打算分享给模型服务的笔记的独立文件夹。
Find the latest decision about the Harbor demo in October 2026
in this vault.
Start with Projects/Harbor/; check Archive/ only if a source
points there or the current notes are insufficient.
Do not create, edit, move, or delete files.
First find and read relevant notes; do not rely on filenames
or file modification times as evidence of a decision.
Return the current demo date, owner, duration, and what must
happen before invitations can be sent.
For each fact, give the note path, its dated statement, and
a short supporting quote. Separate superseded dates and
copied old messages from the current decision.
Mark missing information unknown.
Finish with one next action, the folders actually searched,
and any files you could not read.07
项目搜索找到了什么,还有哪些地方没有检查
我们用六份虚构笔记运行了这个提示:四份关于 Harbor 当前的演示,一份 2025 年归档的 Harbor 演示,以及一份其他项目的笔记。我们只告诉 Claude 项目和文件夹,没有指定单个文件。它找到了并读取了当前项目的四份笔记。以下是这次练习的精简结果:
| 结果 | Projects/Harbor/ 下的来源 | 核对重点 |
|---|---|---|
| 演示:10 月 22 日;负责人:Mei | 2026-10-03-demo-update.md | 10 月 3 日的决定明确取代了 10 月 1 日计划于 10 月 20 日举行的安排 |
| 时长:15 分钟 | 2026-10-04-invitations.md | 清单列出时长,并说明要等场地确认后才能发送邀请 |
| 场地:仍未知 | 2026-10-03-demo-update.md | 来源说尚未确认场地;不要借用其他项目的场地信息 |
| 10 月 20 日是复制的旧消息 | 2026-10-05-chat-excerpt.md | 10 月 5 日的文件引用了 10 月 1 日的消息,并明确说明那不是新决定 |
- 下一步是由 Mei 在发送邀请前确认场地。Claude 报告它没有读取 Archive/ 或其他项目的笔记;这并非搜索了 vault 中的每一份笔记。
- 随后,我们把 demo-update 笔记中的决定改为 10 月 7 日,将演示日期改到 10 月 24 日,并在全新 session 中重复相同提示。它回答了 10 月 24 日,也指出了文件内带日期的陈述,尽管文件名仍是 10 月 3 日。
- 两次 Claude 执行都没有修改源文件。这次小型练习展示了要检查什么,不能证明它在大型个人 vault 中也准确。
- 用在自己的项目时,请根据引用笔记核对当前决定和下一步。如果想保留一份可持续更新的摘要,可以试试下面的 Wenlan 练习。
08
可选:在 vault 加上 CLAUDE.md
Claude Code 每次 session 开始时,都会读取启动文件夹里的 CLAUDE.md。用它说明 vault 的结构,就不必每次重讲。
# 我的 vault
- 笔记用 [[wikilinks]],不要用 Markdown 链接。
- 新笔记放在 Inbox/。不要把文件移出 Archive/。
- 每日笔记放在 Daily/,文件名 YYYY-MM-DD.md。
- AI 写的摘要放在 AI/,不要和我的笔记混在一起。
- 不要修改 .obsidian/ 里的任何东西。09
可选:加上 Obsidian CLI 与 Obsidian skills
Claude Code 可以直接读取笔记文字和文件头属性。Obsidian CLI 则让它使用 Obsidian 本身的搜索、反向链接等工具,也能读取任务或在每日笔记后面追加内容。
先将 Obsidian 安装程序更新至 1.12.7 以上,再到“设置 > 常规”开启“Command line interface”,按提示注册命令并重启终端。Obsidian 必须在运行中;未打开时,第一个命令会自动打开它。
- Obsidian skills(kepano/obsidian-skills)教 Claude Code 使用 Obsidian CLI,并编写 Obsidian 风格的 Markdown、Bases 与 JSON Canvas 文件。
- 以 Claude Code 插件安装:/plugin marketplace add kepano/obsidian-skills,然后 /plugin install obsidian@obsidian-skills。
- 同一套 skills 也能在 Codex 与其他支持 Agent Skills 的工具中使用。
obsidian search query="meeting notes"
obsidian backlinks file=Recipe
obsidian tasks todo
obsidian daily:append content="- [ ] Follow up"10
Obsidian MCP server:什么时候需要
Claude Code 本来就读得到你的文件,所以通常不需要 MCP server。普通 Claude Desktop 对话需要 MCP 才能使用 vault 工具;Claude Desktop 的 Code 标签页也提供 Local 文件夹访问,如果不想用终端,可以在那里选择练习 vault。MCP 也适合让多个 client 共用同一组 vault 工具。
Local REST API 第三方插件现在内置 MCP server。在 Obsidian 安装并启用它,从“设置 > Local REST API”复制 API key,再加入 Claude Code。Obsidian 必须在运行中,server 才会响应。
下方命令只配置 Claude Code。如果使用 Claude Desktop 另一个 Chat 标签页,请按 Local REST API 文档中的 Claude Desktop 步骤配置;这条 CLI 命令不会替普通对话完成配置。
- 这个插件使用自己生成的证书。连不上时,信任它的证书,或在插件设置中开启 27123 端口的 HTTP server。
- mcp-obsidian 是较早的 Python server,通过 uvx 连接同一个插件。
- 不要把 API key 放进会共享的文件,例如提交到 git 的 .mcp.json。
claude mcp add --transport http obsidian https://127.0.0.1:27124/mcp/ \
--header "Authorization: Bearer <your-api-key>"11
Claude Code 的 Obsidian 插件
不想用终端的话,插件可以让 Claude Code 在 Obsidian 里运行。你仍需要安装并登录 Claude Code。
| 插件 | 功能 | 安装方式 |
|---|---|---|
| Claudian | 在 Obsidian 侧边栏运行 Claude Code 或 Codex,以 vault 作为工作文件夹 | 第三方插件:搜索“Claudian” |
| Claude Code IDE bridge(obsidian-claude-ide) | 把当前文件与选中内容共享给终端里的 Claude Code | 设置 → 第三方插件 → 浏览,搜索“Claude Code IDE”并安装、启用;在 Claude Code 终端运行 `/ide` 选择 Obsidian |
| obsidian-claude-code(Roasbeef) | 内嵌在 vault 里的 Claude 助手 | 从 GitHub 安装 |
| obsidian-claude-code-mcp(iansinnott) | Claude Code 的 MCP 与 IDE bridge;最后更新于 2025 年 | 从 GitHub 安装 |
12
用 Claude Code 与 Obsidian 打造第二大脑
这类笔记流程通常从收件箱开始,里面放文章、会议记录或逐字稿。Claude Code 读取后写成摘要、链接到已有笔记,再归档。claude-obsidian 等套件把这些步骤做成 Claude Code skills。
AI 笔记积累后,可能更难分辨哪些是你写的、哪些是 AI 推断的,以及哪些摘要已经和来源对不上。
- AI 写的笔记放在独立文件夹。
- 要求 Claude Code 在每篇摘要中链接回它依据的笔记或文件。
- 提交前先用 git diff 检查变更。
- 原始笔记改了,就重新检查相关摘要。
13
已经用 Obsidian 加 AI,什么时候还需要 Wenlan?
Wenlan 是为 AI 整理和维护知识而设计的个人 Wiki。创建知识页、保留来源、跟踪变化和检查修订都已内置;你不用为了这些工作,另外拼装并维护一套插件、脚本和规则。
可以直接从文档、笔记和 AI 工作成果开始,Obsidian 并非必需。日常通过已连接的 AI 保存和取用知识,需要阅读页面、核对来源或检查修改时,再打开 Wenlan。如果仍需要 Obsidian 的编辑器和插件,也可以继续使用,并把笔记库接进来。
Obsidian 的 Markdown 笔记,本来就能让有访问权限的不同 AI 工具读写;claude-obsidian 等项目也提供引用和维护流程。选择 Wenlan,是选择它内置的整套流程,光是跨 AI 访问并不足以成为理由。如果现有工具已经顺手,也未必需要另装。
以这篇练习为例,值得保留的是一份能接着维护的项目摘要:展示日期从 10 月 22 日改成 24 日后,根据新来源更新同一页,核对修改依据;之后处理这个项目时,就能使用这一页,不必沿用对话里的旧答案。
Obsidian 笔记库作为来源接入,原始笔记仍保留在 Obsidian;没有你同意,Wenlan 不会改动它们,只在你接受时才写入变更。Wenlan 会在后台跟进笔记库,约每 30 秒检查一次,所以修改笔记后不必手动重新同步,直接请已连接的 AI 更新页面即可;后台更新页面还需配置模型。如果 AI 更新的是你编辑过的页面,会先提出修订供你检查。AI 承担整理工作,内容仍由你判断。
| 需求 | 可用做法 |
|---|---|
| 偶尔查找几篇笔记 | 直接让 Claude 读取文件 |
| 自动整理 vault | 使用 skills 或 claude-obsidian 等插件 |
| 使用内置流程创建并持续维护知识页 | 直接使用 Wenlan,或接入现有 Obsidian 笔记 |
14
把练习笔记整理成 Wenlan 项目摘要
如果想在对话结束后继续维护项目摘要,可以试试这个可选练习。开始前,先用下方命令把 Wenlan 连接到 Claude Code。
保留前面的两篇笔记,再添加下表中的 03-checklist.md。Wenlan 0.18.16 的默认设置需要至少三条独立来源才能创建这类摘要页;这三篇短笔记各提供一条。
| 添加笔记 | 粘贴内容 |
|---|---|
| 03-checklist.md | 10 月 4 日检查清单:演示预留 15 分钟。确认场地后才能发出邀请。 |
- 在 Wenlan 桌面 App 打开“设置 → 来源”,把练习 vault 添加为 Obsidian 来源,等三篇笔记同步完成。
- 请 Claude:“用 Wenlan 找出练习 vault 中的 01-plan.md、02-update.md 和 03-checklist.md,根据这三条来源创建项目摘要页。正文列出当前演示日期、负责人、时长与待确认事项;页面的简短摘要只描述用途,不重复日期。完成后给我 Page ID,方便下次更新同一页。”
- 打开页面及其来源,核对 10 月 22 日、小梅、15 分钟、场地未确认。不能把旧的 10 月 20 日当成当前安排。先不要手动修改摘要页,接着测试来源更新。
- 把 02-update.md 中的 10 月 22 日改成 10 月 24 日。Wenlan 会在后台跟进这个 vault,约每 30 秒检查一次,稍等片刻让变更被读入,再请 Claude 重新读取这个 Page 的来源,更新同一个 Page ID。核对正文已改为 10 月 24 日,且仍链接到三篇笔记。只让来源跟上变更,不会直接改写页面。
npx -y wenlan setup
# 接着在 Claude Code 里:
/plugin marketplace add wenlan-app/wenlan
/plugin install wenlan@7xuanlu-wenlan用现有笔记,创建第一份可持续更新的项目摘要
从你已有的笔记开始,在 Wenlan 创建第一份带引用的项目摘要。跟着上面的练习,在来源变化后更新同一页。
在实际画面中,核对引用与修订
以下来自 Wenlan App 的 Tally 发票项目演示录像。放大实际画面,查看一条引用如何回到来源,以及页面修订提出了哪些变化。
1. 从 SQLite 结论回到原始依据
Wiki 说明 Tally 为单人应用选择 SQLite。展开的引用显示「SQLite for Single-User App」来源、摘要和「Open memory」入口。再次使用这个决策前,先比较句子与来源是否一致。
2. 先看增删内容,再决定是否接受
Project notes 修订删除「数据库尚未决定」的旧文字,提出使用 SQLite 的新表述。画面保留增删差异、先前版本,以及 Skip/Approve 操作。先检查新文字和引用,再决定保留哪些内容。
常见问题