用 obsidian-skills 让 AI 操作 Obsidian:从 5 分钟装好到跑通第一条自动化
【免费下载链接】obsidian-skillsAgent skills for Obsidian. Teach your agent to use Obsidian CLI and open formats including Markdown, Bases, JSON Canvas.项目地址: https://gitcode.com/GitHub_Trending/ob/obsidian-skills
上次让 AI 把网页存进 Obsidian,写出来全是普通 Markdown,wikilink 和 callout 一个没有。装上 obsidian-skills 这套 Agent 技能后,它才学会 Obsidian 方言。
让 AI 写对 Obsidian 方言:wikilink、callout 和 frontmatter
场景:你让 AI 整理会议纪要存成笔记,它写的是标准 Markdown——链接是文字这种,重点没有高亮,在 Obsidian 的反向链接图谱里,这篇笔记跟谁都没有关系。
操作:这个仓库本质是几份 SKILL.md 技能文件,AI 读完就知道 Obsidian 的扩展语法怎么写。skills/obsidian-markdown/SKILL.md 覆盖了内部链接[[笔记名]]、嵌入![[...]]、callout> [!note]、frontmatter 属性这些 Obsidian 特有语法。装好后直接说需求就行:
# Claude Code:把仓库内容放进 vault 根目录的 .claude 文件夹 # Codex:把 skills/ 目录拷到 ~/.codex/skills你看到了什么:再让它整理同一份纪要,出来的笔记带 frontmatter 标签,重点段落用 callout 框出来,相关笔记之间是[[wikilink]]。在 Obsidian 里点开,图谱里能看到连线,而不是孤零零一个文件。
用 Obsidian CLI 让 Agent 直接操作笔记库
场景:你不想切窗口打开 Obsidian 界面,就想让 Agent 把一条任务加进今天的日记,再顺手把某篇笔记的状态字段改掉。
操作:skills/obsidian-cli/SKILL.md 教 Agent 用obsidian命令行,直接操作当前打开着的 Obsidian 实例。最常用的就这几条:
obsidian daily:append content="- [ ] 补全昨天的笔记状态" obsidian search query="status" limit=10 obsidian property:set name="status" value="done" file="待办清单"你看到了什么:命令跑完,日记笔记里多了一行任务,目标笔记的 frontmatter 也被改了,全程没碰过 Obsidian 界面。注意它要求 Obsidian 正在运行;命令拿不准就先让它跑obsidian help,那里的列表永远是最新的。
用 Bases 和 Canvas 把笔记变成表格和画布
场景:库里攒了几十条带task标签的笔记,你想有一个视图只显示没做完的,而且能自己刷新。
操作:skills/obsidian-bases/SKILL.md 让 Agent 生成.base文件——一个 YAML,写清过滤条件和视图列即可:
filters: and: - file.hasTag("task") - 'status != "done"' views: - type: table name: "未完成"想要流程图或脑图,skills/json-canvas/SKILL.md 则生成.canvas文件:文本节点、文件节点、连线都是合法 JSON,Obsidian 打开即是可点、可拖的画布。
你看到了什么:.base文件在 Obsidian 里打开就是一张实时刷新的任务表,新建一条带标签的笔记,它自己就出现在表里;画布里的节点双击直接跳到对应笔记。
跑通一次:从一篇网页文章到带属性的笔记
选最小场景"把一篇文章存进库、加到待读清单",完整走一遍:
- 装技能:按你用的 Agent 走对应方式(Claude Code 放 vault 的
.claude,Codex 拷skills/目录)。 - 让 Agent 用 defuddle 提取网页正文,比直接抓 HTML 干净得多:
defuddle parse "https://example.com/post" --md -o 待读文章.md(defuddle 没装时先
npm install -g defuddle) - 让它把文件挪进 vault 并补上 frontmatter:
tags: [reading]、status: to-read。 - 用 CLI 把待办加进今天的日记:
obsidian daily:append content="- [ ] 阅读 待读文章" - 让它建一个读书清单
.base,按status == "to-read"过滤。 - 打开这个
.base,确认新文章出现在列表里。
跑完之后你会得到:vault 里一篇正文干净、属性齐全的笔记,今天日记里的一条待办,以及一个能持续跟踪的待读清单——中间没有手改过一个文件。
避开新手常踩的 4 个坑
问题:obsidian create之类命令没反应或报错 →解法:CLI 操作的是运行中的 Obsidian 实例,先把 vault 打开再跑命令。
问题:OpenCode 装了技能却不生效 →解法:必须整仓 clone 到~/.opencode/skills/obsidian-skills,只拷内层skills/目录会破坏路径结构,装完还要重启 OpenCode。
问题:canvas 文本节点里出现字面量\n两个字符 →解法:JSON 里换行写转义\n,写成双反斜杠\\n会被 Obsidian 原样渲染出来。
问题:Bases 公式一打开就报 YAML 错误 →解法:公式里含双引号时整体用单引号包,如'if(done, "Yes", "No")';另外两个日期相减得到的是 Duration,要先取.days再做数值运算。
它适合谁,不适合谁
适合:
- 已经在用 Claude Code、Codex、OpenCode 这类 Agent,希望它能读写你的 Obsidian vault
- 笔记里大量用 wikilink、callout、frontmatter,受够了 AI 写出"半残"的 Obsidian 语法
- 想让 Agent 顺手建 Bases 视图或 canvas 画布,而不是自己手敲 YAML
不适合:
- 你不用 AI Agent,只想要模板或插件——这个仓库是写给 AI 看的说明书,直接打开没用
- 不打算在电脑上常驻 Obsidian 桌面端——obsidian-cli 部分依赖运行中的实例
- 只在手机或平板上用 Obsidian——技能目录和 CLI 都是桌面侧的事
它不是插件,只是把你的 AI 教会 Obsidian 的读写规则,建笔记、改属性、画画布就都交出去了。下一步复制这条命令:
git clone https://gitcode.com/GitHub_Trending/ob/obsidian-skills【免费下载链接】obsidian-skillsAgent skills for Obsidian. Teach your agent to use Obsidian CLI and open formats including Markdown, Bases, JSON Canvas.项目地址: https://gitcode.com/GitHub_Trending/ob/obsidian-skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考