如何让你的 AI 助手学会 Obsidian 语法:obsidian-skills 与 OpenCode 集成完整指南
【免费下载链接】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
obsidian-skills 是一套为 Obsidian 编写的开源 Agent Skills。它教会 AI 助手正确书写 Obsidian 风格的 Markdown、Bases 数据库和 JSON Canvas 画布,还能通过命令行直接操作正在运行的 Obsidian。把它接入 OpenCode 之后,你让 AI 处理笔记库时,它不会再写坏文件、造出打不开的数据库。
AI 处理 Obsidian 笔记时容易踩的坑
普通的 AI 助手会写标准 Markdown,但 Obsidian 在 CommonMark 之上加了不少自己的东西:
[[双括号]]指向库内的另一篇笔记,改标题时 Obsidian 会自动跟随更新,普通 Markdown 链接做不到这一点;![[嵌入]]能把另一篇笔记、图片或 PDF 直接嵌进正文;.base文件是 YAML 写成的数据库,.canvas文件是由节点和连线构成的画布,AI 没学过这两种格式,写出来大概率打不开。
更隐蔽的问题在效率上:把一篇网页文章丢给 AI 阅读,整页的导航栏和广告都会被吃进上下文,token 白白消耗。obsidian-skills 解决的就是这两类问题——它给 AI 一份"怎么写对、写完怎么自查"的操作说明,覆盖 Obsidian 的五种核心格式和交互方式。
3 分钟装好 obsidian-skills 📦
一句话定位:五个技能的集合,遵循 Agent Skills 开放规范。规范之外没有平台绑定,支持该规范的代理都能加载。下面以 OpenCode 为例讲接入方式。
一条 clone 命令完成 obsidian-skills 安装
把整个仓库克隆到 OpenCode 的技能目录:
git clone https://gitcode.com/GitHub_Trending/ob/obsidian-skills ~/.opencode/skills/obsidian-skills这里有个容易出错的细节:要克隆完整仓库,不要只把里面的skills/文件夹拷过来。这样做,最终目录结构才是~/.opencode/skills/obsidian-skills/skills/<技能名>/SKILL.md。配置什么都不用改:OpenCode 会扫描~/.opencode/skills/下的全部SKILL.md文件,克隆完重启一次,技能就全部可用了。
快速验证技能是否生效
重启后提个具体要求试试,比如"在库里新建一篇笔记,带标签和一个提示框"。如果 AI 产出的是带 frontmatter 属性的笔记、> [!tip]形式的提示框、指向库内笔记的 wikilinks,说明技能已经接上了。反过来,如果它给你写了普通 Markdown 链接和纯文本引用,先检查仓库是否克隆完整。
五大技能分别能做什么 🧩
- obsidian-markdown:负责
.md文件。写笔记时它会先放 frontmatter,再填正文,库内引用一律走 wikilinks,重点内容包进提示框。技能自带 references 子目录,属性、嵌入、提示框的语法各自成篇,AI 动笔前可以逐条对照。 - obsidian-bases:负责
.base文件。帮你搭过滤器、公式,以及表格、卡片、列表、地图四种视图,还会替你避开两类经典错误:YAML 里的特殊字符忘加引号、引用了没定义的公式。 - json-canvas:负责
.canvas文件。往画布里加节点和连线时,它会给每个节点生成不重复的 16 位十六进制 ID,并校验每条边的两端都指向已存在的节点——画完的思维导图、流程图不会结构断裂。 - obsidian-cli:通过
obsidian命令行与正在运行的 Obsidian 实例打交道,读取、创建、搜索笔记,也覆盖插件和主题开发的调试动作,比如重载插件、跑 JavaScript、截图。前提是先打开 Obsidian。 - defuddle:从网页里抽出干净的 Markdown 正文,去掉导航和广告。给 AI 喂链接时明显省 token。它依赖一个 CLI 工具,首次使用前运行
npm install -g defuddle装好即可。
实战:把一篇网页文章变成可检索的笔记 🚀
用 OpenCode 跑一遍完整流程,你会发现任务拆得有多顺:
- 把文章链接发给它。defuddle 只取正文,导航栏不进上下文;
- 让正文存进库。obsidian-markdown 接手:frontmatter 里填标题和标签,相关概念改成 wikilinks 连到已有笔记,关键结论包进提示框;
- 建一个
.base数据库,按标签过滤出所有"阅读中"的笔记,用卡片视图展示。以后新笔记只要打上标签,就会自动出现在这个库里; - 画一张
.canvas画布,文章的各章各节变成节点,用连线标出依赖关系。
全程你只说了任务,文件类型、校验步骤都是技能里写好的。这就是这套技能的价值所在:不是给 AI 加新功能,而是让它一次写对。
进阶用法与保持技能更新 🔄
- 靠描述触发:每个 SKILL.md 的 description 就是触发条件。你提到 wikilinks、提示框、Bases、画布这些词,对应技能会自动进入工作状态,不需要手动指定。
- 组合干活:上一节的四步实际是一个 defuddle 加三个技能接力完成的。真实项目里,把目标说清楚就行,不用一步步指挥。
- 定期拉新:项目更新比较频繁,技能内容以仓库为准。在技能目录下运行下面的命令拿到最新版,重启 OpenCode 后生效:
cd ~/.opencode/skills/obsidian-skills && git pull装好这套技能后,AI 在你的库里干的活会更像"编辑"而不是"打字员":格式对得上 Obsidian 的渲染,数据库和画布打开就能用,读网页也不再浪费额度。从下一篇笔记开始试起就行。
【免费下载链接】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),仅供参考