<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/scripts/pretty-feed-v3.xsl" type="text/xsl"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:h="http://www.w3.org/TR/html4/"><channel><title>CC</title><description>CC 的个人网站：记录 AI 探索、搭建过程、工具资源与生活思考。</description><link>https://ccxgmx.fun</link><item><title>Obsidian AI Agent 配置指南：Claudian + Obsidian Skills</title><link>https://ccxgmx.fun/blog/obsidian-ai-agent-claudian-skills</link><guid isPermaLink="true">https://ccxgmx.fun/blog/obsidian-ai-agent-claudian-skills</guid><description>在 Obsidian 中配置 Claudian 与 Obsidian Skills，构建本地优先的 AI Agent 工作流。</description><pubDate>Thu, 18 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h2&gt;1. 核心组件&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Claudian&lt;/strong&gt;: Obsidian 第三方插件（暂未上架官方市场），适配 Claude Code。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Obsidian Skills&lt;/strong&gt;: 由 Obsidian CEO (Kepano) 发布的 Skill 包，赋予 AI 处理 Canvas、Markdown 及数据库的能力。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;2. 环境部署流程&lt;/h2&gt;
&lt;h3&gt;2.1 安装 Claudian 插件 (手动旁加载)&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;获取文件&lt;/strong&gt;: 访问 GitHub 仓库 &lt;code&gt;claudian&lt;/code&gt;，下载以下三个核心文件：
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;main.js&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;manifest.json&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;styles.css&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;放置插件&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;进入 Obsidian 仓库根目录。&lt;/li&gt;
&lt;li&gt;路径导航: &lt;code&gt;.obsidian&lt;/code&gt; -&gt; &lt;code&gt;plugins&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;新建文件夹命名为 &lt;code&gt;claudian&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;将上述三个文件放入该文件夹。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;启用&lt;/strong&gt;: 重启 Obsidian，在“第三方插件”中开启 Claudian。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;2.2 配置模型参数&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;打开 Claudian 设置页。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;基础设置&lt;/strong&gt;: 设置 &lt;code&gt;User Name&lt;/code&gt; (如 Jason)。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;自定义AI模型&lt;/strong&gt;: 使用智谱GLM或DeepSeek来替换Claude模型。&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic
ANTHROPIC_API_KEY=你的智谱api key
ANTHROPIC_DEFAULT_OPUS_MODEL=GLM-4.6
&lt;/code&gt;&lt;/pre&gt;
&lt;ol start=&quot;4&quot;&gt;
&lt;li&gt;&lt;strong&gt;连通性验证&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Ctrl/Cmd + P&lt;/code&gt; 调出命令面板 -&gt; 输入 &lt;code&gt;claudian&lt;/code&gt; -&gt; 选择 &lt;code&gt;Open chat view&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;发送“你好”，若回复正常则&lt;a href=&quot;%E8%90%A8%E8%BE%BE%E6%98%AF%E7%9A%84&quot;&gt;^1&lt;/a&gt;配置成功。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;2.3 部署 Obsidian Skills&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;下载&lt;/strong&gt;: 访问 GitHub 仓库 &lt;code&gt;kepano/obsidian-skills&lt;/code&gt;，下载 ZIP 包并解压。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;安装&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;复制解压后的 &lt;code&gt;skills&lt;/code&gt; 文件夹。&lt;/li&gt;
&lt;li&gt;进入 Obsidian 仓库根目录。&lt;/li&gt;
&lt;li&gt;进入或新建 &lt;code&gt;.claude&lt;/code&gt; 隐藏文件夹。&lt;/li&gt;
&lt;li&gt;粘贴 &lt;code&gt;skills&lt;/code&gt; 文件夹 (最终路径: &lt;code&gt;[Vault Root]/.claude/skills/&lt;/code&gt;)。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;验证&lt;/strong&gt;: 在 Claudian 对话框输入 &lt;code&gt;/skills&lt;/code&gt;，应显示以下三个 Skill:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;obsidian-markdown&lt;/code&gt;: 处理专有 Markdown 语法。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;json-canvas&lt;/code&gt;: 生成/编辑无限画布。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;obsidian-bases&lt;/code&gt;: 数据库管理。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;3. 实战应用与技巧&lt;/h2&gt;
&lt;h3&gt;3.1 典型用例：生成知识图谱&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;指令&lt;/strong&gt;: “使用无限画布 canvas 画出地中海饮食的知识结构图，并保存到根目录。”&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;流程&lt;/strong&gt;: AI 自动调用 &lt;code&gt;json-canvas&lt;/code&gt; skill -&gt; 分析逻辑 -&gt; 在根目录直接生成 &lt;code&gt;.canvas&lt;/code&gt; 文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;3.2 优化&lt;/h3&gt;
&lt;p&gt;由于 Skill 定义为英文，中文指令可能导致匹配偏差，建议方案：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;显式指令&lt;/strong&gt;: 在 Prompt 中明确指定工具名 (如“请使用 json-canvas skill...”)。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;系统提示词 (System Prompt)&lt;/strong&gt;: 在插件设置中添加规则 —— “收到指令后优先思考并匹配最合适的 Skill”。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;4. 理念解析：Why Local Agent?&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;官方态度 (Stephan Ango/Kepano)&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;发布渠道&lt;/strong&gt;: 选择在个人 GitHub 账号而非 Obsidian 官方账号发布，体现了“非官方强制”的定位。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心哲学&lt;/strong&gt;: 知行合一。坚持 &lt;strong&gt;Local-first&lt;/strong&gt; 和 &lt;strong&gt;Privacy-first&lt;/strong&gt;，不构建封闭的官方 AI 环境，也不参与 AI 军备竞赛。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;差异化优势&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;不同于 Notion 的云端封闭生态。&lt;/li&gt;
&lt;li&gt;Obsidian 文件完全本地化，鼓励用户基于隐私安全，“手搓”适合自己的 AI Agent。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><h:img src="undefined"/><enclosure url="undefined"/></item><item><title>Git 进阶操作：版本管理与分支管理</title><link>https://ccxgmx.fun/blog/git-advanced-version-branch</link><guid isPermaLink="true">https://ccxgmx.fun/blog/git-advanced-version-branch</guid><description>用 Git log、restore、revert、reset、blame 与分支操作管理笔记和代码版本。</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;&lt;strong&gt;版本管理：&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;精细化历史查询&lt;/strong&gt;：如何只看某一个文件的修改历史。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;版本回退&lt;/strong&gt;：如何安全或强力地让文件、甚至整个知识库回到过去。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;内容追溯&lt;/strong&gt;：如何知道笔记中的某句话是何时、为何写下的。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;分支管理：&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;创建与切换分支&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;合并分支&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;解决文件冲突&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2&gt;一、Git Log：如何查看单个文件的“成长日记”&lt;/h2&gt;
&lt;h3&gt;核心操作&lt;/h3&gt;
&lt;p&gt;最基础的命令是在 git log 后面跟上 -- 和文件路径。-- 是一个好习惯，它能明确告诉 Git 后面跟的是文件路径，而不是分支名。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 基本用法：查看特定文件的所有 commit 记录&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git log -- &amp;#x3C;文件路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git log -- &quot;我的读书笔记.md&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;h3&gt;让输出信息更友好&lt;/h3&gt;
&lt;p&gt;默认的 log 信息对非技术用户不太友好，我们可以用参数来美化它。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 单行清爽模式&lt;/strong&gt;
以单行形式展示，只看 commit 哈希值和标题，非常清爽。&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git log --oneline -- &amp;#x3C;文件路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 查看修改统计&lt;/strong&gt;
展示更详细的统计信息，能看到每次提交具体增加了哪些行、删除了哪些行。&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git log --stat -- &amp;#x3C;文件-路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 查看具体修改内容 (最实用)&lt;/strong&gt;
这是最强大的参数，-p 是 --patch 的缩写，它会展示每一次提交具体修改了什么内容。&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git log -p -- &amp;#x3C;文件路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2&gt;Git 版本回退：文件级“后悔药”与提交级“时光机”&lt;/h2&gt;
&lt;p&gt;在知识管理中，我们难免会写错东西或误删内容。Git 提供了多种“后悔药”，但它们的用途和场景完全不同。对于 Obsidian 用户来说，&lt;strong&gt;最常用、最重要的是针对单个文件的回退&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;首先，我们用一个表格来快速对比这三个命令的核心区别：&lt;/p&gt;
&lt;p&gt;| 命令            | 主要作用域        | 是否修改历史                  | 核心比喻                            |
| --------------- | ----------------- | ----------------------------- | ----------------------------------- |
| &lt;strong&gt;git restore&lt;/strong&gt; | &lt;strong&gt;File (文件)&lt;/strong&gt;   | &lt;strong&gt;否&lt;/strong&gt; (只修改工作区/暂存区)  | &lt;strong&gt;橡皮擦&lt;/strong&gt; (擦掉文件的特定修改)     |
| &lt;strong&gt;git revert&lt;/strong&gt;  | &lt;strong&gt;Commit (提交)&lt;/strong&gt; | &lt;strong&gt;否&lt;/strong&gt; (创建新提交)           | &lt;strong&gt;会计师&lt;/strong&gt; (做一笔反向操作来冲账)   |
| &lt;strong&gt;git reset&lt;/strong&gt;   | &lt;strong&gt;Commit (提交)&lt;/strong&gt; | &lt;strong&gt;是&lt;/strong&gt; (移动指针，可丢弃提交) | &lt;strong&gt;时光机&lt;/strong&gt; (直接回到过去，未来消失) |&lt;/p&gt;
&lt;hr&gt;
&lt;h3&gt;一、文件级后悔药：git restore (Obsidian 用户最常用)&lt;/h3&gt;
&lt;p&gt;git restore 是专门为&lt;strong&gt;恢复文件&lt;/strong&gt;而生的命令，它从不触碰你的提交历史，非常安全。它有两个核心功能，覆盖了我们 95% 的日常“反悔”需求。&lt;/p&gt;
&lt;h4&gt;功能1：丢弃工作区的修改 (橡皮擦)&lt;/h4&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;提示 · 场景：我不小心修改了一篇笔记，但还没提交 (commit)，现在想撤销所有改动，让它恢复到上次保存到版本库时的样子。&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这就像用橡皮擦擦掉你在笔记上的草稿，让它变回干净的版本。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 丢弃本地修改&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git restore &amp;#x3C;文件路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git restore &quot;我的读书笔记.md&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;h4&gt;功能2：从历史中恢复文件 (时光机捞取)&lt;/h4&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;提示 · 场景：我需要找回某篇笔记在几天前某个版本的内容，但又不想影响知识库里其他任何文件。&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这就像坐上时光机，去到过去，只把那一个文件“捞”回来。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 从指定 commit 中恢复文件&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git restore --source=&amp;#x3C;commit哈希值&gt; &amp;#x3C;文件路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git restore --source=1a2b3c4 &quot;我的读书笔记.md&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;执行后，这个文件的内容就变回了 1a2b3c4 时的样子。这个“恢复”本身会成为一个新的本地修改，你可以检查后再次提交。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3&gt;二、提交级后悔药：git revert 与 git reset&lt;/h3&gt;
&lt;p&gt;这两个命令更强大，也更危险，因为它们操作的对象是&lt;strong&gt;整个 Commit (提交)&lt;/strong&gt;，会一次性影响一批文件的修改。在 Obsidian 的日常使用中，这种情况较少见，但了解它有助于应对重大失误。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;警告 · 核心区别&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;git revert 和 git reset &lt;strong&gt;针对的是整个提交记录&lt;/strong&gt;，不是单个文件。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;如果你只是想恢复某个文件，请永远优先使用 git restore。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;如果你确定要撤销一整批修改（一个 Commit），那么更推荐使用 git revert。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h4&gt;The Safe Choice: git revert (安全的会计师)&lt;/h4&gt;
&lt;p&gt;它通过创建一个&lt;strong&gt;新的提交&lt;/strong&gt;来抵消旧的错误提交，&lt;strong&gt;不会修改历史&lt;/strong&gt;，非常安全。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;成功 · git revert (推荐)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;比喻&lt;/strong&gt;：像会计师做一笔反向操作来冲账，所有记录都清晰可查。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;场景&lt;/strong&gt;：当你需要撤销一个已经推送到远程（如 Gitee/GitHub）的提交时，&lt;strong&gt;这是唯一推荐的做法&lt;/strong&gt;。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;命令&lt;/strong&gt;：git revert &amp;#x3C;commit哈希值&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h4&gt;The Nuclear Option: git reset (危险的时光机)&lt;/h4&gt;
&lt;p&gt;它会&lt;strong&gt;真实地修改历史&lt;/strong&gt;，让你的知识库强制回到过去某个时间点，之后的提交记录会被抛弃。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;危险 · git reset (谨慎使用)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;比喻&lt;/strong&gt;：像启动时光机，回到过去，之后发生的一切都烟消云散。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;场景&lt;/strong&gt;：&lt;strong&gt;只应在你自己本地、还未推送分享的提交上使用&lt;/strong&gt;，用来清理凌乱的本地历史。&lt;strong&gt;绝对不要&lt;/strong&gt;对已推送的提交使用！&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;命令&lt;/strong&gt;：git reset --hard &amp;#x3C;commit哈希值&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2&gt;三、Git Blame：甩锅！&lt;/h2&gt;
&lt;p&gt;这个功能的名字有点吓人，但对于知识管理来说，它不是用来“指责”(Blame)，而是用来“追溯”的。&lt;strong&gt;（如果是软件开发：那我就是来甩锅的）&lt;/strong&gt;&lt;/p&gt;
&lt;h3&gt;核心操作&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · git blame 命令行操作&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git blame &amp;#x3C;文件路径&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git blame &quot;项目A策划案.md&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;它的输出会显示文件的每一行内容，并在行首标注出：修改这一行的 commit 哈希值、作者、以及修改日期。&lt;/p&gt;
&lt;hr&gt;
&lt;h2&gt;Git 分支管理核心命令笔记&lt;/h2&gt;
&lt;p&gt;分支是 Git 的最强大的功能，它允许你创建独立的开发线进行工作，做到平行开发，互不干扰。&lt;/p&gt;
&lt;h3&gt;一、查看与切换分支&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 列出所有本地分支&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git branch
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;当前所在的分支会以 * 标记。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 创建新分支&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git branch &amp;#x3C;分支名&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt; git branch feature/new-article&lt;/p&gt;
&lt;p&gt;这只创建了分支，你当前的位置&lt;strong&gt;并未&lt;/strong&gt;移动。当前在main分支下，就是从main分支下创建出一个新分支，但你依然停留在main分支下，你需要手动切换到这个新分支。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;从指定分支中，创建一个分支&lt;/strong&gt;：git branch &amp;#x3C;新分支名&gt; &amp;#x3C;源分支&gt;
比如：git branch hotfix/login-bug main 意思就是从main分支中，创建一个叫hotfix/login-bug的新分支。
对于个人Obsidian用户，大多情况下都在main分支上，想要创建新分支就直接用git branch &amp;#x3C;分支名&gt;就可以了&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 切换到指定分支&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git switch &amp;#x3C;分支名&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt; git switch feature/new-article&lt;/p&gt;
&lt;p&gt;这是推荐的现代命令。旧命令 git checkout &amp;#x3C;分支名&gt; 同样有效。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;提示 · 创建并立即切换 (常用)&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git switch -c &amp;#x3C;分支名&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt; git switch -c bugfix/typo-in-note&lt;/p&gt;
&lt;p&gt;这一个命令等同于 git branch 和 git switch 两步操作。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3&gt;二、合并与删除分支&lt;/h3&gt;
&lt;p&gt;当分支的工作完成后，将其成果合并回主线 (main 或 master)。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;信息 · 合并分支的标准流程&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;首先，切换回你的主分支。&lt;/strong&gt;
git switch main&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;然后，执行合并命令，将目标分支的成果合并进来。&lt;/strong&gt;
git merge &amp;#x3C;要合并的分支名&gt;
&lt;strong&gt;示例:&lt;/strong&gt; git merge feature/new-article&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;命令 · 删除已合并的分支&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;git branch -d &amp;#x3C;分支名&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;示例:&lt;/strong&gt; git branch -d feature/new-article&lt;/p&gt;
&lt;p&gt;-d 是 --delete 的缩写，它会安全地检查该分支是否已被合并。如果有没有被合并的修改，它会阻止删除。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3&gt;三、解决合并冲突&lt;/h3&gt;
&lt;p&gt;当你和主分支修改了同一个文件的同一处时，git merge 会失败并提示冲突。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;危险 · 解决冲突的标准流程&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;h1&gt;&lt;strong&gt;打开冲突文件。&lt;/strong&gt; Git 会在文件中用特殊标记标出冲突区域：
&amp;#x3C;&amp;#x3C;&amp;#x3C;&amp;#x3C;&amp;#x3C;&amp;#x3C;&amp;#x3C; HEAD (你当前分支的修改)&lt;/h1&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;#x3C;另一分支名&gt; (被合并分支的修改)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;手动编辑文件。&lt;/strong&gt; 删除所有 Git 添加的特殊标记行，只保留你最终想要的内容。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;标记冲突已解决。&lt;/strong&gt; 使用 git add 命令将修改后的文件加入暂存区。
git add &amp;#x3C;冲突文件的路径&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;完成合并。&lt;/strong&gt; 执行 git commit 命令，Git 会自动生成一个合并提交信息，直接保存即可。此时，冲突解决完毕。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;</content:encoded><h:img src="undefined"/><enclosure url="undefined"/></item><item><title>Obsidian 官方 CLI 命令全景速查表</title><link>https://ccxgmx.fun/blog/obsidian-cli-command-reference</link><guid isPermaLink="true">https://ccxgmx.fun/blog/obsidian-cli-command-reference</guid><description>按模块速查 Obsidian CLI 命令、完整样例和典型自动化场景。</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;&lt;strong&gt;核心执行逻辑说明：&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;基础格式：&lt;code&gt;obsidian &amp;#x3C;命令&gt; 参数名=参数值 标记参数&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;含有空格的值必须加双引号，例如：&lt;code&gt;content=&quot;Hello world&quot;&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;标记参数&lt;/strong&gt;（如 &lt;code&gt;open&lt;/code&gt;, &lt;code&gt;inline&lt;/code&gt;, &lt;code&gt;total&lt;/code&gt;）不需要赋值，写上就代表启用。&lt;/li&gt;
&lt;li&gt;以下表格中 &lt;code&gt;file=Recipe&lt;/code&gt; 代表对库中名为 Recipe 的文件执行操作，实际使用时需要替换为你库中真实存在的文件名。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;| 所属模块      | 命令                             | 功能解释                              | 完整样例 (直接在终端运行)                                                        |
| :-------- | :----------------------------- | :-------------------------------- | :-------------------------------------------------------------------- |
| &lt;strong&gt;基础操作&lt;/strong&gt;  | &lt;code&gt;help&lt;/code&gt;                         | 显示帮助。加上具体命令就是查看这个命令的帮助。           | &lt;code&gt;obsidian help search&lt;/code&gt;                                                |
|           | &lt;code&gt;version&lt;/code&gt;                      | 显示当前 Obsidian 软件版本号。              | &lt;code&gt;obsidian version&lt;/code&gt;                                                    |
|           | &lt;code&gt;reload&lt;/code&gt;                       | 重新加载应用窗口。                         | &lt;code&gt;obsidian reload&lt;/code&gt;                                                     |
|           | &lt;code&gt;restart&lt;/code&gt;                      | 重启整个 Obsidian 应用程序。               | &lt;code&gt;obsidian restart&lt;/code&gt;                                                    |
| &lt;strong&gt;数据库&lt;/strong&gt;   | &lt;code&gt;bases&lt;/code&gt;                        | 列出仓库中所有的 &lt;code&gt;.base&lt;/code&gt; 数据库文件。           | &lt;code&gt;obsidian bases&lt;/code&gt;                                                      |
|           | &lt;code&gt;base:views&lt;/code&gt;                   | 列出当前活动数据库文件中的视图。                  | &lt;code&gt;obsidian base:views file=Contacts&lt;/code&gt;                                   |
|           | &lt;code&gt;base:create&lt;/code&gt;                  | 在数据库中创建新记录，支持指定字段内容。              | &lt;code&gt;obsidian base:create file=Contacts name=&quot;John Doe&quot;&lt;/code&gt;                  |
|           | &lt;code&gt;base:query&lt;/code&gt;                   | 查询数据库并返回 JSON 或 CSV 结果。           | &lt;code&gt;obsidian base:query file=Contacts view=Active format=json&lt;/code&gt;           |
| &lt;strong&gt;书签&lt;/strong&gt;    | &lt;code&gt;bookmarks&lt;/code&gt;                    | 列出书签。                             | &lt;code&gt;obsidian bookmarks format=json&lt;/code&gt;                                      |
|           | &lt;code&gt;bookmark&lt;/code&gt;                     | 将指定文件或查询条件保存为书签。                  | &lt;code&gt;obsidian bookmark file=&quot;Project A&quot; title=&quot;当前项目&quot;&lt;/code&gt;                     |
| &lt;strong&gt;命令面板&lt;/strong&gt;  | &lt;code&gt;commands&lt;/code&gt;                     | 获取所有内置或插件命令的 ID。                  | &lt;code&gt;obsidian commands filter=workspace&lt;/code&gt;                                  |
|           | &lt;code&gt;command&lt;/code&gt;                      | 强制执行一个内部命令。                       | &lt;code&gt;obsidian command id=workspace:close&lt;/code&gt;                                 |
|           | &lt;code&gt;hotkeys&lt;/code&gt;                      | 列出所有快捷键映射。                        | &lt;code&gt;obsidian hotkeys verbose&lt;/code&gt;                                            |
|           | &lt;code&gt;hotkey&lt;/code&gt;                       | 获取单个命令的具体快捷键。                     | &lt;code&gt;obsidian hotkey id=workspace:close&lt;/code&gt;                                  |
| &lt;strong&gt;日记&lt;/strong&gt;    | &lt;code&gt;daily&lt;/code&gt;                        | 打开当天的每日笔记。                        | &lt;code&gt;obsidian daily paneType=tab&lt;/code&gt;                                         |
|           | &lt;code&gt;daily:path&lt;/code&gt;                   | 输出每日笔记的物理路径。                      | &lt;code&gt;obsidian daily:path&lt;/code&gt;                                                 |
|           | &lt;code&gt;daily:read&lt;/code&gt;                   | 打印当天每日笔记的文本内容。                    | &lt;code&gt;obsidian daily:read&lt;/code&gt;                                                 |
|           | &lt;code&gt;daily:append&lt;/code&gt;                 | 向每日笔记末尾追加文本，适合快速记录。               | &lt;code&gt;obsidian daily:append content=&quot;- [ ] 记得回复邮件&quot;&lt;/code&gt;                        |
|           | &lt;code&gt;daily:prepend&lt;/code&gt;                | 向每日笔记开头插入文本。                      | &lt;code&gt;obsidian daily:prepend content=&quot;# 今日重点&quot;&lt;/code&gt;                             |
| &lt;strong&gt;文件历史&lt;/strong&gt;  | &lt;code&gt;diff&lt;/code&gt;                         | 对比不同历史版本。                         | &lt;code&gt;obsidian diff file=Recipe from=2 to=1&lt;/code&gt;                               |
|           | &lt;code&gt;history&lt;/code&gt; / &lt;code&gt;history:list&lt;/code&gt;     | 显示有本地历史记录的文件列表。                   | &lt;code&gt;obsidian history file=Recipe&lt;/code&gt;                                        |
|           | &lt;code&gt;history:read&lt;/code&gt;                 | 读取某个历史版本的内容。                      | &lt;code&gt;obsidian history:read file=Recipe version=1&lt;/code&gt;                         |
|           | &lt;code&gt;history:restore&lt;/code&gt;              | 将文件回滚到指定历史版本。                     | &lt;code&gt;obsidian history:restore file=Recipe version=2&lt;/code&gt;                      |
|           | &lt;code&gt;history:open&lt;/code&gt;                 | 在界面中打开文件恢复面板。                     | &lt;code&gt;obsidian history:open file=Recipe&lt;/code&gt;                                   |
| &lt;strong&gt;文件与目录&lt;/strong&gt; | &lt;code&gt;file&lt;/code&gt; / &lt;code&gt;folder&lt;/code&gt;              | 显示文件或文件夹的元数据（大小、时间）。              | &lt;code&gt;obsidian file path=&quot;Notes/Recipe.md&quot;&lt;/code&gt;                                |
|           | &lt;code&gt;files&lt;/code&gt; / &lt;code&gt;folders&lt;/code&gt;            | 遍历列表，支持后缀过滤并返回总数。                 | &lt;code&gt;obsidian files ext=md total&lt;/code&gt;                                         |
|           | &lt;code&gt;open&lt;/code&gt;                         | 打开文件。                             | &lt;code&gt;obsidian open file=Recipe newtab&lt;/code&gt;                                    |
|           | &lt;code&gt;create&lt;/code&gt;                       | 静默创建文件，支持预设内容或应用模板。               | &lt;code&gt;obsidian create name=Meeting content=&quot;# 会议记录&quot; overwrite&lt;/code&gt;             |
|           | &lt;code&gt;read&lt;/code&gt;                         | 打印文件内容，Agent 接入必用命令。              | &lt;code&gt;obsidian read file=Recipe&lt;/code&gt;                                           |
|           | &lt;code&gt;append&lt;/code&gt; / &lt;code&gt;prepend&lt;/code&gt;           | 在文件末尾或头部插入内容。                     | &lt;code&gt;obsidian append file=Recipe content=&quot;追加的文本&quot;&lt;/code&gt;                         |
|           | &lt;code&gt;move&lt;/code&gt; / &lt;code&gt;rename&lt;/code&gt;              | 移动或重命名文件（自动更新双链）。                 | &lt;code&gt;obsidian rename file=Recipe name=NewRecipe&lt;/code&gt;                          |
|           | &lt;code&gt;delete&lt;/code&gt;                       | 删除文件，可附加 &lt;code&gt;permanent&lt;/code&gt; 彻底删除。        | &lt;code&gt;obsidian delete file=Recipe permanent&lt;/code&gt;                               |
| &lt;strong&gt;链接网络&lt;/strong&gt;  | &lt;code&gt;backlinks&lt;/code&gt;                    | 列出指向这个文件的反向链接。                    | &lt;code&gt;obsidian backlinks file=Index format=json&lt;/code&gt;                           |
|           | &lt;code&gt;links&lt;/code&gt;                        | 列出这个文件包含的出站链接。                    | &lt;code&gt;obsidian links file=Index total&lt;/code&gt;                                     |
|           | &lt;code&gt;unresolved&lt;/code&gt;                   | 提取未创建实体文件的死链接节点。                  | &lt;code&gt;obsidian unresolved format=json&lt;/code&gt;                                     |
|           | &lt;code&gt;orphans&lt;/code&gt;                      | 列出没有被引用的孤立文件。                     | &lt;code&gt;obsidian orphans total&lt;/code&gt;                                              |
|           | &lt;code&gt;deadends&lt;/code&gt;                     | 列出没有向外发出引用的死胡同笔记。                 | &lt;code&gt;obsidian deadends total&lt;/code&gt;                                             |
| &lt;strong&gt;大纲&lt;/strong&gt;    | &lt;code&gt;outline&lt;/code&gt;                      | 提取文件的标题树状结构。                      | &lt;code&gt;obsidian outline file=Recipe format=tree&lt;/code&gt;                            |
| &lt;strong&gt;插件管理&lt;/strong&gt;  | &lt;code&gt;plugins&lt;/code&gt; / &lt;code&gt;enabled&lt;/code&gt;          | 列出所有插件或已开启的插件。                    | &lt;code&gt;obsidian plugins filter=community&lt;/code&gt;                                   |
|           | &lt;code&gt;plugins:restrict&lt;/code&gt;             | 开关安全模式。                           | &lt;code&gt;obsidian plugins:restrict off&lt;/code&gt;                                       |
|           | &lt;code&gt;plugin&lt;/code&gt; / &lt;code&gt;plugin:enable&lt;/code&gt;     | 查询插件信息或开启插件。                      | &lt;code&gt;obsidian plugin:enable id=dataview&lt;/code&gt;                                  |
|           | &lt;code&gt;plugin:disable&lt;/code&gt;               | 禁用插件。                             | &lt;code&gt;obsidian plugin:disable id=dataview&lt;/code&gt;                                 |
|           | &lt;code&gt;plugin:install&lt;/code&gt; / &lt;code&gt;uninstall&lt;/code&gt; | 静默安装或卸载社区插件。                      | &lt;code&gt;obsidian plugin:install id=dataview enable&lt;/code&gt;                          |
|           | &lt;code&gt;plugin:reload&lt;/code&gt;                | 热重载插件（适合开发调试）。                    | &lt;code&gt;obsidian plugin:reload id=my-plugin&lt;/code&gt;                                 |
| &lt;strong&gt;属性元数据&lt;/strong&gt; | &lt;code&gt;aliases&lt;/code&gt;                      | 提取别名列表。                           | &lt;code&gt;obsidian aliases active&lt;/code&gt;                                             |
|           | &lt;code&gt;properties&lt;/code&gt;                   | 提取 YAML 属性，支持排序。                  | &lt;code&gt;obsidian properties sort=count&lt;/code&gt;                                      |
|           | &lt;code&gt;property:set&lt;/code&gt;                 | 修改属性值，规范化文本、日期等类型。                | &lt;code&gt;obsidian property:set name=status value=draft type=text file=Recipe&lt;/code&gt; |
|           | &lt;code&gt;property:remove&lt;/code&gt; / &lt;code&gt;read&lt;/code&gt;     | 删除属性或提取特定属性值。                     | &lt;code&gt;obsidian property:read name=status file=Recipe&lt;/code&gt;                      |
| &lt;strong&gt;发布&lt;/strong&gt;    | &lt;code&gt;publish:site&lt;/code&gt; / &lt;code&gt;list&lt;/code&gt;        | 获取 Publish 站点信息或已发布清单。            | &lt;code&gt;obsidian publish:list&lt;/code&gt;                                               |
|           | &lt;code&gt;publish:status&lt;/code&gt; / &lt;code&gt;add&lt;/code&gt;       | 检查变更或推送到云端。                       | &lt;code&gt;obsidian publish:add changed&lt;/code&gt;                                        |
|           | &lt;code&gt;publish:remove&lt;/code&gt; / &lt;code&gt;open&lt;/code&gt;      | 撤销发布或在浏览器中查看线上页面。                 | &lt;code&gt;obsidian publish:open file=Recipe&lt;/code&gt;                                   |
| &lt;strong&gt;随机笔记&lt;/strong&gt;  | &lt;code&gt;random&lt;/code&gt; / &lt;code&gt;random:read&lt;/code&gt;       | 打开随机笔记或直接打印其内容。                   | &lt;code&gt;obsidian random folder=&quot;Zettelkasten&quot; newtab&lt;/code&gt;                        |
| &lt;strong&gt;全局搜索&lt;/strong&gt;  | &lt;code&gt;search&lt;/code&gt;                       | 全文检索，返回文件路径列表。                    | &lt;code&gt;obsidian search query=&quot;TODO&quot; format=json&lt;/code&gt;                            |
|           | &lt;code&gt;search:context&lt;/code&gt;               | 提供包含上下文的检索结果。                     | &lt;code&gt;obsidian search:context query=&quot;重要&quot; limit=5&lt;/code&gt;                          |
|           | &lt;code&gt;search:open&lt;/code&gt;                  | 在图形界面中唤出搜索面板。                     | &lt;code&gt;obsidian search:open query=&quot;会议记录&quot;&lt;/code&gt;                                   |
| &lt;strong&gt;官方同步&lt;/strong&gt;  | &lt;code&gt;sync&lt;/code&gt; / &lt;code&gt;sync:status&lt;/code&gt;         | 控制同步进程开关，查看状态。                    | &lt;code&gt;obsidian sync on&lt;/code&gt;                                                    |
|           | &lt;code&gt;sync:history&lt;/code&gt; / &lt;code&gt;read&lt;/code&gt;        | 查阅云端版本历史记录或读取内容。                  | &lt;code&gt;obsidian sync:read file=Recipe version=1&lt;/code&gt;                            |
|           | &lt;code&gt;sync:restore&lt;/code&gt;                 | 强制回滚到云端版本。                        | &lt;code&gt;obsidian sync:restore file=Recipe version=2&lt;/code&gt;                         |
|           | &lt;code&gt;sync:open&lt;/code&gt; / &lt;code&gt;deleted&lt;/code&gt;        | 打开界面查看历史或已删除文件。                   | &lt;code&gt;obsidian sync:deleted&lt;/code&gt;                                               |
| &lt;strong&gt;标签&lt;/strong&gt;    | &lt;code&gt;tags&lt;/code&gt;                         | 提取标签网络，统计频次。                      | &lt;code&gt;obsidian tags sort=count format=json&lt;/code&gt;                                |
|           | &lt;code&gt;tag&lt;/code&gt;                          | 查询单个标签的分布和出现次数。                   | &lt;code&gt;obsidian tag name=&quot;#important&quot; verbose&lt;/code&gt;                              |
| &lt;strong&gt;任务管理&lt;/strong&gt;  | &lt;code&gt;tasks&lt;/code&gt;                        | 检索全库或指定日记的任务状态。                   | &lt;code&gt;obsidian tasks todo daily&lt;/code&gt;                                           |
|           | &lt;code&gt;task&lt;/code&gt;                         | 终端直连修改具体任务的勾选状态。                  | &lt;code&gt;obsidian task ref=&quot;Recipe.md:8&quot; toggle&lt;/code&gt;                              |
| &lt;strong&gt;模板&lt;/strong&gt;    | &lt;code&gt;templates&lt;/code&gt; / &lt;code&gt;template:read&lt;/code&gt;  | 查看模板库，或解析带变量的模板内容。                | &lt;code&gt;obsidian template:read name=Meeting resolve&lt;/code&gt;                         |
|           | &lt;code&gt;template:insert&lt;/code&gt;              | 将模板注入到活动笔记中。                      | &lt;code&gt;obsidian template:insert name=Meeting&lt;/code&gt;                               |
| &lt;strong&gt;外观与样式&lt;/strong&gt; | &lt;code&gt;themes&lt;/code&gt; / &lt;code&gt;theme&lt;/code&gt;             | 查看安装的主题或查看当前主题详情。                 | &lt;code&gt;obsidian themes versions&lt;/code&gt;                                            |
|           | &lt;code&gt;theme:set&lt;/code&gt; / &lt;code&gt;install&lt;/code&gt;        | 切换主题，或从终端安装并启用新主题。                | &lt;code&gt;obsidian theme:install name=&quot;Minimal&quot; enable&lt;/code&gt;                        |
|           | &lt;code&gt;theme:uninstall&lt;/code&gt;              | 卸载主题。                             | &lt;code&gt;obsidian theme:uninstall name=&quot;Minimal&quot;&lt;/code&gt;                             |
|           | &lt;code&gt;snippets&lt;/code&gt; 相关命令                | 开关 CSS 片段。                        | &lt;code&gt;obsidian snippet:enable name=custom-font&lt;/code&gt;                            |
| &lt;strong&gt;卡片盒模式&lt;/strong&gt; | &lt;code&gt;unique&lt;/code&gt;                       | 按照 Zettelkasten 时间戳生成唯一笔记。        | &lt;code&gt;obsidian unique name=&quot;Idea&quot; open&lt;/code&gt;                                    |
| &lt;strong&gt;仓库管理&lt;/strong&gt;  | &lt;code&gt;vault&lt;/code&gt; / &lt;code&gt;vaults&lt;/code&gt;             | 获取当前仓库信息或列出所有本地仓库。                | &lt;code&gt;obsidian vaults verbose&lt;/code&gt;                                             |
|           | &lt;code&gt;vault:open&lt;/code&gt;                   | 强制软件跳转打开另一个仓库。                    | &lt;code&gt;obsidian vault:open name=&quot;My Vault&quot;&lt;/code&gt;                                 |
| &lt;strong&gt;内置浏览器&lt;/strong&gt; | &lt;code&gt;web&lt;/code&gt;                          | 在 Obsidian 内直接打开网页。               | &lt;code&gt;obsidian web url=&quot;https://google.com&quot; newtab&lt;/code&gt;                        |
| &lt;strong&gt;字数统计&lt;/strong&gt;  | &lt;code&gt;wordcount&lt;/code&gt;                    | 统计字数或字符数。                         | &lt;code&gt;obsidian wordcount file=Recipe words&lt;/code&gt;                                |
| &lt;strong&gt;工作区布局&lt;/strong&gt; | &lt;code&gt;workspace&lt;/code&gt; 系列命令               | 保存、载入、删除窗口布局配置。                   | &lt;code&gt;obsidian workspace:load name=Writing&lt;/code&gt;                                |
|           | &lt;code&gt;tabs&lt;/code&gt; / &lt;code&gt;tab:open&lt;/code&gt;            | 管理标签页组，或者在新标签打开文件。                | &lt;code&gt;obsidian tab:open file=Recipe&lt;/code&gt;                                       |
|           | &lt;code&gt;recents&lt;/code&gt;                      | 返回最近打开文件的记录。                      | &lt;code&gt;obsidian recents total&lt;/code&gt;                                              |
| &lt;strong&gt;开发者模式&lt;/strong&gt; | &lt;code&gt;devtools&lt;/code&gt; / &lt;code&gt;dev:debug&lt;/code&gt;       | 调出底层控制台或挂载 Chrome 调试器。            | &lt;code&gt;obsidian dev:debug on&lt;/code&gt;                                               |
|           | &lt;code&gt;dev:cdp&lt;/code&gt;                      | 顶级权限，调用 Chrome DevTools Protocol。 | &lt;code&gt;obsidian dev:cdp method=&quot;Network.enable&quot;&lt;/code&gt;                            |
|           | &lt;code&gt;dev:screenshot&lt;/code&gt;               | 生成软件当前界面的 base64 图片数据流。           | &lt;code&gt;obsidian dev:screenshot path=screenshot.png&lt;/code&gt;                         |
|           | &lt;code&gt;dev:console&lt;/code&gt; / &lt;code&gt;css&lt;/code&gt;          | 读取控制台日志，或抓取 CSS 渲染数据。             | &lt;code&gt;obsidian dev:console level=error&lt;/code&gt;                                    |
|           | &lt;code&gt;dev:dom&lt;/code&gt;                      | 用 CSS 选择器直接抓取界面 DOM 元素。           | &lt;code&gt;obsidian dev:dom selector=&quot;.cm-content&quot; text&lt;/code&gt;                        |
|           | &lt;code&gt;dev:mobile&lt;/code&gt;                   | 开启移动端布局模拟。                        | &lt;code&gt;obsidian dev:mobile on&lt;/code&gt;                                              |
|           | &lt;code&gt;eval&lt;/code&gt;                         | 注入 JavaScript 代码到底层执行并返回结果。       | &lt;code&gt;obsidian eval code=&quot;app.vault.getFiles().length&quot;&lt;/code&gt;                    |&lt;/p&gt;
&lt;h2&gt;Obsidian CLI 典型自动化应用场景与工作流&lt;/h2&gt;
&lt;p&gt;| 工作流名称                   | 功能简介                                                                                                                                                                                | 涉及的 CLI 命令                                                                                                                                                |
| :---------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **1. 全局极速闪记 **          | &lt;strong&gt;痛点&lt;/strong&gt;：记录一闪而过的灵感时，打开软件、等插件加载、找文件太慢。&lt;strong&gt;方案&lt;/strong&gt;：在 Raycast、Alfred 甚至手机捷径中绑定一段终端脚本。输入文字后，脚本在后台直接调用 CLI，将文字无感追加到今天的日记末尾。完全不需要唤醒 Obsidian 界面。                                             | &lt;code&gt;obsidian daily:append content=&quot;灵感内容&quot;&lt;/code&gt;                                                                                                                    |
| &lt;strong&gt;2. 播客/视频沉浸式知识榨取&lt;/strong&gt;     | &lt;strong&gt;痛点&lt;/strong&gt;：看完 YouTube 视频后，手动整理笔记并建立待办事项费时费力。&lt;strong&gt;方案&lt;/strong&gt;：把链接丢给 OpenClaw 或 Telegram 机器人。AI 提取字幕并总结后，调用 CLI 直接使用你的“媒体笔记模板”创建新文件，并把提取出的行动项自动打上标签，插入到当天的日记中。                                  | &lt;code&gt;obsidian create name=&quot;视频名&quot; template=&quot;Media&quot;&lt;/code&gt;&lt;code&gt;obsidian daily:append content=&quot;- [ ] 待办项&quot;&lt;/code&gt;                                                              |
| **3. AI 收件箱自动分拣员 **     | &lt;strong&gt;痛点&lt;/strong&gt;：平时用 Web Clipper 随手剪藏的网页堆积在 Inbox 文件夹，变成“赛博垃圾场”。&lt;strong&gt;方案&lt;/strong&gt;：利用 n8n 建立定时任务，让大模型批量阅读 Inbox 里的文件。理解内容后，通过 CLI 规范化注入 YAML 属性（如作者、分类），最后安全地将文件重命名并移动到对应的归档文件夹。CLI 会自动更新全库的双链，绝不断链。  | &lt;code&gt;obsidian files folder=&quot;Inbox&quot;&lt;/code&gt;&lt;code&gt;obsidian read file=&quot;未命名&quot;&lt;/code&gt;&lt;code&gt;obsidian property:set name=&quot;category&quot; value=&quot;AI&quot;&lt;/code&gt;&lt;code&gt;obsidian move file=&quot;旧名&quot; to=&quot;新路径&quot;&lt;/code&gt; |
| &lt;strong&gt;4. 绝对隐私的本地 RAG 对话助理&lt;/strong&gt; | &lt;strong&gt;痛点&lt;/strong&gt;：搭建向量数据库（Chroma/Milvus）太繁琐，且每次笔记更新都要重新 Embedding（向量化）。&lt;strong&gt;方案&lt;/strong&gt;：在本地运行 Claude Code 或本地大模型，赋予其 CLI 执行权限。AI 会根据你的提问，自主使用带有上下文的全局搜索指令，并通过提取反向链接顺藤摸瓜，构建准确的背景知识库后再回答，完全零配置。        | &lt;code&gt;obsidian search:context query=&quot;关键词&quot;&lt;/code&gt;&lt;code&gt;obsidian backlinks file=&quot;检索到的文件&quot;&lt;/code&gt;&lt;code&gt;obsidian read file=&quot;目标笔记&quot;&lt;/code&gt;                                                |
| &lt;strong&gt;5. 跨平台数据库级联录入&lt;/strong&gt;       | &lt;strong&gt;痛点&lt;/strong&gt;：外部数据（如记账、习惯打卡）很难干净地录入到 Obsidian 的表格或 Dataview 中。&lt;strong&gt;方案&lt;/strong&gt;：结合 Obsidian 1.12 最新的 Bases（数据库）功能。通过 n8n 接收外部 Webhook（比如银行消费短信），直接让 CLI 在指定的 Base 文件中创建一条新记录，并严格按数据类型（数字、日期）注入字段。 | &lt;code&gt;obsidian base:create file=&quot;财务库&quot; name=&quot;打车&quot;&lt;/code&gt;&lt;code&gt;obsidian property:set type=&quot;number&quot; value=&quot;30&quot;&lt;/code&gt;                                                           |
| &lt;strong&gt;6. 历史知识自动唤醒与破冰&lt;/strong&gt;      | &lt;strong&gt;痛点&lt;/strong&gt;：记录了大量笔记但从不回顾，知识变成死水。&lt;strong&gt;方案&lt;/strong&gt;：每天早晨执行一个自动化脚本，利用 CLI 提取一篇早于 1 年前的随机笔记，交给 AI 提炼核心观点，并与你最近一周关注的标签（如 &lt;code&gt;#Agent&lt;/code&gt;）进行强行跨界联想，将联想结果作为“每日思考”追加到今天日记中。                                    | &lt;code&gt;obsidian random:read folder=&quot;卡片盒&quot;&lt;/code&gt;&lt;code&gt;obsidian tags sort=count limit=5&lt;/code&gt;&lt;code&gt;obsidian daily:prepend content=&quot;AI的跨界联想&quot;&lt;/code&gt;                                   |
| &lt;strong&gt;7. 批量元数据重构与清洗&lt;/strong&gt;       | &lt;strong&gt;痛点&lt;/strong&gt;：笔记库用久了，属性极其混乱（比如状态标签混用了 &lt;code&gt;doing&lt;/code&gt;、&lt;code&gt;in-progress&lt;/code&gt;、&lt;code&gt;进行中&lt;/code&gt;），导致 Dataview 列表报错。&lt;strong&gt;方案&lt;/strong&gt;：让 AI 脚本遍历你的核心文件夹，读取现有的属性值，统一转换为标准格式，然后用 CLI 进行批量覆写。这种方式强制符合 YAML 语法，绝不会多一个空格或少一个引号。         | &lt;code&gt;obsidian properties&lt;/code&gt;&lt;code&gt;obsidian property:read name=&quot;status&quot;&lt;/code&gt;&lt;code&gt;obsidian property:set name=&quot;status&quot; value=&quot;标准值&quot;&lt;/code&gt;                                      |&lt;/p&gt;</content:encoded><h:img src="undefined"/><enclosure url="undefined"/></item><item><title>Obsidian CLI 核心原理</title><link>https://ccxgmx.fun/blog/obsidian-cli-core-principles</link><guid isPermaLink="true">https://ccxgmx.fun/blog/obsidian-cli-core-principles</guid><description>理解 Obsidian CLI 的架构、Agent 集成方式与自动化工作流。</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Obsidian CLI 是一个通过命令行操作 Obsidian 笔记库的官方工具（需要 Obsidian 1.12 以上版本）。它的核心功能是为 AI 智能体（如 Gemini CLI、Claude Code、OpenClaw）和自动化工作流（如 n8n）提供原生交互接口，解决 AI 扫描整个笔记库产生高额 Token 消耗的问题。&lt;/p&gt;
&lt;h3&gt;架构机制对比&lt;/h3&gt;
&lt;p&gt;| 对比维度 | 传统直接读写文件系统 | 官方 CLI 调用 |
| :--- | :--- | :--- |
| &lt;strong&gt;交互目标&lt;/strong&gt; | 本地磁盘 Markdown 文件 | 正在运行的 Obsidian 进程 |
| &lt;strong&gt;Token 消耗&lt;/strong&gt; | 极高（需扫描数百万字符建立上下文） | 极低（约 100 Token 即可完成内置索引查询） |
| &lt;strong&gt;状态感知度&lt;/strong&gt; | 极弱（只能读取纯文本内容） | 极强（能读取图谱关系、反向链接、插件运行状态） |
| &lt;strong&gt;元数据更新&lt;/strong&gt; | 整体覆写（必须加载全量文件以修改 YAML） | 原子化更新（发送单条指令仅修改目标属性） |
| &lt;strong&gt;数据一致性&lt;/strong&gt; | 差（移动文件极易导致双向链接断链） | 极佳（自动更新所有相关引用的内部链接） |&lt;/p&gt;
&lt;h2&gt;开启与基础配置&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;确认系统环境，保证 Obsidian 客户端版本在 1.12 以上。&lt;/li&gt;
&lt;li&gt;进入 Obsidian 界面，打开“设置 -&gt; 常规 (General)”。&lt;/li&gt;
&lt;li&gt;找到“命令行界面 (Command line interface)”开关并打开。&lt;/li&gt;
&lt;li&gt;在弹出的窗口中确认注册到系统 Path。&lt;/li&gt;
&lt;li&gt;保证 Obsidian 客户端处于运行状态（如果在未运行状态下执行命令，系统会自动启动客户端）。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;验证配置成功的方法是打开操作系统的终端工具（Mac 使用 Terminal，Windows 使用 PowerShell），输入下面这个基础命令：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;obsidian daily
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;如果配置正确，Obsidian 会直接自动应用日记模版并在界面中生成今天的日记文件。&lt;/p&gt;
&lt;h2&gt;AI 智能体集成方案&lt;/h2&gt;
&lt;p&gt;为了让智能体工具掌握使用命令行的能力，我们需要为它们配置专门的 Agent Skill。这里以 Obsidian CEO (Steph Ango) 开发的官方 Skill 仓库为例。&lt;/p&gt;
&lt;h3&gt;配置 Agent Skill 目录&lt;/h3&gt;
&lt;p&gt;工具链需要严格的目录层级支持。针对不同的智能体工具，配置路径有严格的区别，必须保证 &lt;code&gt;SKILL.md&lt;/code&gt; 文件在规定的层级内：&lt;/p&gt;
&lt;p&gt;| 智能体工具 | Skill 存放路径 | 目录结构要求 |
| :--- | :--- | :--- |
| &lt;strong&gt;OpenCode&lt;/strong&gt; | &lt;code&gt;~/.opencode/skills/&lt;/code&gt; | &lt;code&gt;skills/&amp;#x3C;skill-name&gt;/SKILL.md&lt;/code&gt; |
| &lt;strong&gt;Claude Code&lt;/strong&gt; | 项目根目录的 &lt;code&gt;.claude/&lt;/code&gt; 文件夹 | 同上 |
| &lt;strong&gt;Codex CLI&lt;/strong&gt; | &lt;code&gt;~/.codex/skills/&lt;/code&gt; | 同上 |&lt;/p&gt;
&lt;p&gt;完成目录配置后，智能体就具备了直接向 Obsidian 进程发送指令的能力。&lt;/p&gt;
&lt;h2&gt;场景案例与代码实现&lt;/h2&gt;
&lt;h3&gt;案例一：让 Gemini CLI 抓取文献并生成笔记&lt;/h3&gt;
&lt;p&gt;在这个场景里，我们让智能体抓取外部数据，再用 Obsidian CLI 把数据写入笔记。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;执行提示词：&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-markdown&quot;&gt;任务：获取 arXiv 最新 AI 论文并写入 Obsidian 今日日记。

请按以下步骤执行：

1. 获取论文数据
   从以下 RSS feed 获取论文列表：
   https://export.arxiv.org/rss/cs.AI

解析 RSS 内容，并 **按发布时间排序，选取最新发布的 10 篇论文**。

2. 提取并处理字段
   对每篇论文保留以下字段：

* title
* abstract
* link
* published date

然后执行以下处理：

* 将 **title 翻译为中文**
* 将 **abstract 翻译为中文**
* 保留原始 link
* 保留 published date

3. 整理为 Markdown 表格

生成如下格式的 Markdown 表格：

| 标题（中文） | 摘要（中文） | 原文链接 | 发布日期 |
| ------ | ------ | ---- | ---- |
| ...    | ...    | ...  | ...  |

要求：

* 每篇论文一行
* 摘要不要截断

4. 写入 Obsidian 日记

使用 **obsidian-cli skill** 完成以下操作：

* 创建或打开 **今天的日记**
* 在日记末尾追加以下内容：

## 今日AI论文

（在这里插入生成的 Markdown 表格）

5. 写入规则
* 必须使用 `obsidian-cli` skill 完成 Obsidian 操作，不要直接操作文件系统。

&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;案例二：通过 Python 脚本调用&lt;/h3&gt;
&lt;p&gt;使用代码调用 CLI 命令适合每日定时触发的确定性任务。让 AI 编写代码时，要把 Obsidian CLI 的官方文档发送给 AI 提供上下文。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;生成代码的提示词：&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-markdown&quot;&gt;**角色设定**：你是一位精通 Python 和自动化办公的专家，为我编写一个 Python 自动化脚本。
**任务目标**：我需要从 [输入源，例如：ArXiv API] 获取最新的 [内容类型，例如：AI 相关论文]，并将这些内容整理后通过Obsidian-CLI发送到我的Obsidian。
**详细需求**：
1. **数据获取**：从这个接口 [粘贴 URL] 获取前 10 条数据。我需要提取论文的“标题”、“发布日期”、“摘要（限制 200 字）”和“原文链接”。
2. **数据格式化**：将这些数据整理成 Markdown 表格形式，表头为：序号 | 论文名称 | 发布日期 | 简介 | 链接。
3. **与软件交互**：使用命令行方式调用Obsidian-CLI来创建并写入这些内容。

    - 使用模版 [模版名] 创建名为 [笔记名] 的笔记。

    - 然后将表格内容逐行追加到笔记中。

    - 最后自动在软件中打开这个笔记。

4. **稳定性要求**：

    - 考虑 Windows 系统的兼容性，确保代码在输出中文或特殊符号时不会报错（强制使用 UTF-8 编码）。

    - 因为是自动化脚本，如果操作失败（比如软件没响应或命令执行错误），务必在终端里清晰地打印出错误原因，不要静默崩溃。

    - 代码结构要清晰，方便我修改里面的配置参数（如笔记名称、搜索关键词等）。
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;案例三：在N8N工作流中调用&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;需要在本地部署N8N，以便于N8N能够直接访问本地文件系统。在Docker中部署的N8N无法做到这一点。&lt;/li&gt;
&lt;li&gt;启动N8N的时候，设置参数来保证所有节点都可用：&lt;code&gt;set NODES_EXCLUDE=[] &amp;#x26;&amp;#x26; n8n start&lt;/code&gt;。（n8n 2.x 为了安全，默认禁用了涉及本地文件系统操作和 Shell 命令的节点。）&lt;/li&gt;
&lt;li&gt;添加Execute Command节点，设置执行命令：&lt;code&gt;python C:\Users\jason/obsidian-cli-diary-code.py&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;点击Execute Step按钮测试。&lt;/li&gt;
&lt;li&gt;注意事项：如果遇到utf-8编码问题，启动n8n的时候添加参数：&lt;code&gt;set PYTHONIOENCODING=utf-8 &amp;#x26;&amp;#x26; n8n start&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;注意事项&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Obsidian CLI 的所有命令执行都依赖 Obsidian 桌面端程序的运行状态。&lt;/li&gt;
&lt;li&gt;在本地运行 OpenClaw 这类高频自主智能体时，需要严格监控 Token 消耗。确定的日常操作建议全部转交给 n8n 或 Python 脚本。&lt;/li&gt;
&lt;li&gt;浏览器内容抓取可以配合 &lt;code&gt;defuddle&lt;/code&gt; 这个 Skill 工具，把网页内容清洗成干净的 Markdown 格式后直接写入笔记库。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;官方理念与隐私边界&lt;/h2&gt;
&lt;p&gt;Obsidian 联合创始人是 Erica Xu 和 Shida Li。现任 CEO 是 Steph Ango（网络 ID 是 kepano）。&lt;/p&gt;
&lt;p&gt;官方坚守本地优先和数据隐私底线。官方决不在软件内部强制集成任何云端 AI 模块。CLI 工具充当了一个开放的外部操作手脚。用户全权决定把笔记库接入哪种 AI 框架。&lt;/p&gt;
&lt;p&gt;有极高隐私要求的用户可以使用 NAS 进行多端数据同步。配合本地部署的大语言模型处理数据。根据2026年的前沿模型能力测试，70B 级别的本地开源模型在执行多步骤、重度依赖工具调用的智能体任务时，表现一般。长周期任务规划能力明显弱于前沿闭源模型。智能体操作具有不可控风险。必须通过 Git 定时提交做好知识库版本备份。&lt;/p&gt;</content:encoded><h:img src="undefined"/><enclosure url="undefined"/></item><item><title>Obsidian 必装 Skills</title><link>https://ccxgmx.fun/blog/obsidian-essential-skills</link><guid isPermaLink="true">https://ccxgmx.fun/blog/obsidian-essential-skills</guid><description>整理适合 Obsidian AI 工作流的 Skills、用途、依赖与风险。</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;| 作者                                                                        | Skill名称                 | 功能描述                                                                                                                | 推荐度 |
| :------------------------------------------------------------------------ | :---------------------- | :------------------------------------------------------------------------------------------------------------------ | :-- |
| &lt;strong&gt;Obsidian CEO @kepano&lt;/strong&gt;GitHub: &lt;code&gt;kepano/obsidian-skills&lt;/code&gt;              | defuddle                | 网页内容清洗工具，专门用来把杂乱的网页转换成纯净的 Markdown 格式，通过剔除广告和导航栏来帮你节省 AI 调用时的 Token 消耗。                                             | ✅   |
|                                                                           | obsidian-cli            | 让 AI Agent 能够直接调用 Obsidian 官方的命令行工具，从而实现对笔记、任务、属性的增删改查，以及对插件开发环境的调试与管理。                                             | ✅   |
|                                                                           | obsidian-bases          | 让 AI 能够创建和维护 .base 格式的配置文件，从而在 Obsidian 里生成类似 Notion 数据库的动态视图，实现对笔记的过滤、计算和结构化展示。                                    | ✅   |
|                                                                           | obsidian-markdown       | 让 AI 能够编写和编辑符合 Obsidian 官方规范的增强版 Markdown 文档，实现双向链接、内容嵌入、提示框以及结构化属性的深度集成。                                           | ⚠️  |
|                                                                           | json-canvas             | 让 AI 能够创建和编辑 Obsidian 的 .canvas 白板文件，通过 JSON 结构实现节点（文本、文件、链接、组）的布局以及它们之间的连线逻辑。                                      | ❌   |
|                                                                           |                         |                                                                                                                     |     |
| &lt;strong&gt;Axton，著名博主@回到Axton&lt;/strong&gt;GitHub: &lt;code&gt;axtonliu/axton-obsidian-visual-skills&lt;/code&gt; | obsidian-canvas-creator | 加强版的 json canvas skill，解决了节点重叠和空间分布不均的问题。                                                                           | ✅   |
|                                                                           | mermaid-visualizer      | 将文本逻辑转化为专业的 Mermaid 架构图或流程图，并内置了针对 Obsidian 渲染引擎的语法纠错机制。                                                            | ✅   |
|                                                                           | excalidraw-diagram      | 将文本逻辑转化为手绘风格的 Excalidraw 图表                                                                                         | ✅   |
|                                                                           |                         |                                                                                                                     |     |
| &lt;strong&gt;OpenClaw官方GitHub&lt;/strong&gt;GitHub: &lt;code&gt;openclaw/openclaw/skills/obsidian&lt;/code&gt;       | obsidian-skill          | 直接操作文件系统，也就是文件I/O，非常消耗Token，在官方已经发布Obsidian-cli的情况下，没有理由继续使用这个过时的方式。                                                | ❌   |
|                                                                           |                         |                                                                                                                     |     |
| &lt;strong&gt;Choi Wontak&lt;/strong&gt;GitHub: &lt;code&gt;RoundTable02/tutor-skills&lt;/code&gt;                    | tutor-skills            | 两个 Skill (tutor-setup 和 tutor) ，构成了一个“输入-内化-检测”的完整闭环：将文档或代码库一键转化为结构化的 Obsidian 知识库，之后通过无提示的交互式测验不断暴露出你的知识盲区并记录学习轨迹。 | ✅   |
|                                                                           |                         |                                                                                                                     |     |
| &lt;strong&gt;EESJGong&lt;/strong&gt;GitHub: &lt;code&gt;EESJGong/scholar-skill&lt;/code&gt;                          | scholar-skill           | 基于 OpenClaw 框架的学术研究skill，通过L1-L3的分级阅读策略在后台长时间静默解析论文，并自动将结构化笔记、核心记忆与知识冲突报告写入你的本地 Obsidian 知识库中。                      | ✅   |&lt;/p&gt;
&lt;h2&gt;Obsidian CEO 发布的 Skills&lt;/h2&gt;
&lt;h3&gt;defuddle&lt;/h3&gt;
&lt;h4&gt;Skill功能&lt;/h4&gt;
&lt;p&gt;Defuddle 主要用来抓取网页里的核心正文。它会自动删掉导航条、侧边栏和广告等干扰元素，只留下干净的 Markdown 内容。这个功能让 AI 在处理长文章、在线文档或博客时，不仅能读得更准，还能大幅减少不必要的字符开销。最近一次更新中已经支持YouTube视频链接，它获取YouTube视频字幕的方式是调用YouTube官方API，而不是我们之前熟知的&lt;code&gt;yt-dlp&lt;/code&gt;组件。&lt;/p&gt;
&lt;h4&gt;所需依赖&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;Node.js 运行环境。&lt;/li&gt;
&lt;li&gt;全局安装的 defuddle 包，安装命令是 &lt;code&gt;npm install -g defuddle&lt;/code&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;h4&gt;触发条件和使用方法&lt;/h4&gt;
&lt;p&gt;当你给 Agent 发送一个网页链接（URL），并要求它阅读、分析或总结里面的内容时，就会触发这个 Skill。&lt;/p&gt;
&lt;p&gt;提示词样例：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;提取这个网页的正文，转成干净的 Markdown 格式：[URL]。
&lt;/code&gt;&lt;/pre&gt;
&lt;h4&gt;注意事项&lt;/h4&gt;
&lt;p&gt;这个工具对标准 HTML 网页（如新闻、博客、官方文档）效果最好，但如果网页需要登录或者是纯动态渲染的单页应用，抓取效果可能受限。&lt;/p&gt;
&lt;h3&gt;obsidian-cli&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;功能开启与基础配置&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;确认系统环境，保证 Obsidian 客户端版本在 1.12 以上。&lt;/li&gt;
&lt;li&gt;进入 Obsidian 界面，打开“设置 -&gt; 常规 (General)”。&lt;/li&gt;
&lt;li&gt;找到“命令行界面 (Command line interface)”开关并打开。&lt;/li&gt;
&lt;li&gt;在弹出的窗口中确认注册到系统 Path。&lt;/li&gt;
&lt;li&gt;保证 Obsidian 客户端处于运行状态（如果在未运行状态下执行命令，系统会自动启动客户端）。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;验证配置成功的方法是打开操作系统的终端工具（Mac 使用 Terminal，Windows 使用 PowerShell），输入下面这个基础命令：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;obsidian daily
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;如果配置正确，Obsidian 会直接自动应用日记模版并在界面中生成今天的日记文件。&lt;/p&gt;
&lt;h3&gt;obsidian-bases&lt;/h3&gt;
&lt;h4&gt;Skill 功能&lt;/h4&gt;
&lt;p&gt;这个 Skill 允许 AI 通过编写 YAML 格式的 &lt;code&gt;.base&lt;/code&gt; 文件来创建Obsidian bases数据库。它支持非常强大的公式系统，可以读取笔记的 Frontmatter 属性或文件元数据（如创建时间、字数等），并进行条件判断、日期运算和字符串处理。&lt;/p&gt;
&lt;h4&gt;所需依赖&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Maps 插件&lt;/strong&gt;：如果需要使用这个 Skill 里的 map（地图）视图，必须额外安装名为 Maps 的社区插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;触发条件和使用方法&lt;/h4&gt;
&lt;p&gt;样例提示词：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;写一个 .base 文件来管理我的项目笔记，要求筛选出所有带 #project 标签的文件，用表格显示项目名称、截止日期和剩余天数。
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;视图限制&lt;/strong&gt;：目前只支持 table（表格）、cards（卡片）、list（列表）和 map（地图）这四种类型。&lt;/p&gt;
&lt;h3&gt;obsidian-markdown&lt;/h3&gt;
&lt;h4&gt;使用方法&lt;/h4&gt;
&lt;p&gt;样例提示词：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;根据这段会议记录生成一份 Obsidian 笔记。要求在顶部包含日期和参会人的属性，使用双向链接关联到“项目 A”笔记，并把关键决策点用important类型的提示框标注。
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;扩展&lt;/strong&gt;：因为skill是对格式的语法和约束，所以可以将个人obsidian格式偏好加入到skill中，以保证Agent写出的知识笔记符合你的要求。&lt;/p&gt;
&lt;h3&gt;json-canvas&lt;/h3&gt;
&lt;h4&gt;使用方法&lt;/h4&gt;
&lt;p&gt;样例提示词：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;创建一个名为“AI 学习路径”的 json canvas文件。中心是一个文本节点，连向三个文件节点，分别是“模型基础”、“提示词工程”和“智能体实战”。
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;obsidian-canvas-creator&lt;/h3&gt;
&lt;h4&gt;Skill 功能&lt;/h4&gt;
&lt;p&gt;内置了径向布局（MindMap）和自由排版（Freeform）算法，能够自动计算节点坐标、处理连接线路径、并根据文本长度动态调整节点尺寸，从而生成整齐、美观且逻辑清晰的视觉架构。&lt;/p&gt;
&lt;h4&gt;使用方法&lt;/h4&gt;
&lt;p&gt;样例提示词：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;把这markdown知识笔记转换成一个mindmap格式的 Obsidian Canvas。
&lt;/code&gt;&lt;/pre&gt;
&lt;h4&gt;与 json-canvas skill 的对比&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;侧重点不同&lt;/strong&gt;：&lt;code&gt;json-canvas&lt;/code&gt; 主要关注底层的 JSON 语法正确性和属性定义；而 &lt;code&gt;obsidian-canvas-creator&lt;/code&gt; 侧重于高层的排版策略和空间坐标计算。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;自动化程度不同&lt;/strong&gt;：使用 &lt;code&gt;json-canvas&lt;/code&gt; 时，AI 可能只是机械地摆放节点；使用本 Skill 时，AI 会根据 &lt;code&gt;layout-algorithms.md&lt;/code&gt; 计算每个节点的 X/Y 坐标，确保节点不重叠且间距符合视觉审美。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;结构化逻辑&lt;/strong&gt;：本 Skill 引入了特定的布局模式（如 MindMap 模式和 FreeForm模式），能自动处理父子层级关系，而不仅仅是单一的节点创建。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;mermaid-visualizer&lt;/h3&gt;
&lt;h4&gt;使用方法&lt;/h4&gt;
&lt;p&gt;样例提示词：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;根据这段关于软件开发生命周期的描述生成一个横向的 Mermaid 流程图，要求包含不同的子图来区分开发环境和测试环境。
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;excalidraw-diagram&lt;/h3&gt;
&lt;h4&gt;所需依赖&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Excalidraw 插件&lt;/strong&gt;：必须安装并启用 Excalidraw 插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;触发条件和使用方法&lt;/h4&gt;
&lt;p&gt;样例提示词：&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;用 Excalidraw 画一个 AI 智能体的工作流动画图，按照感知、思考、行动的顺序设置动画步骤，并保存为 .excalidraw 文件。
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;tutor-skills&lt;/h3&gt;
&lt;h4&gt;Skill 功能&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;tutor-setup&lt;/code&gt; 能将任何本地文档或源代码工程自动解析，并生成带有双链、MOC 和复习题的独立 Obsidian 学习金库 (StudyVault)；而 &lt;code&gt;tutor&lt;/code&gt; 则读取知识库的进度数据，在终端内为你生成互动式测验，追踪并攻克你的知识薄弱点。&lt;/p&gt;
&lt;h4&gt;所需依赖&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;基础环境&lt;/strong&gt;：智能体工具如 Claude Code, OpenCode。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;使用方法&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;使用方法&lt;/strong&gt;：在特定工作目录输入命令 &lt;code&gt;/tutor-setup&lt;/code&gt; 触发构建，或在已有 StudyVault 的目录下输入 &lt;code&gt;/tutor&lt;/code&gt; 触发复习。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Skill 的特殊机制&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;模式自动侦测&lt;/strong&gt;：无需手动指定，Skill 会自动扫描当前工作目录，若发现 &lt;code&gt;package.json&lt;/code&gt; 或 &lt;code&gt;pom.xml&lt;/code&gt; 等工程文件会自动进入“代码库模式”；若只有 PDF/纯文本，则进入“文档模式 ”。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;注意事项&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Token 消耗风险&lt;/strong&gt;：尽管禁止了 PDF 图像读取，但“代码库模式”会递归读取大量源文件并进行架构溯源（Phase C1-C9 循环），在短时间内消耗大量 Token 额度。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;scholar-skill&lt;/h3&gt;
&lt;h4&gt;Skill 功能&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;scholar-skill&lt;/code&gt; 是一个深度的个人知识管理与文献解构工作流。它通过分级标准（L1分发/L2标准阅读/L3深度解构），将原始论文（PDF/ArXiv）转化为 Obsidian 中的双链卡片、MOC（内容地图）以及系统性的反思报告。它还能记录你阅读过程中的误区并提取可复用的研究方法论。&lt;/p&gt;
&lt;h4&gt;所需依赖&lt;/h4&gt;
&lt;p&gt;要运行此系统，你需要配置一套相对重型的底层环境：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;基础环境&lt;/strong&gt;：本地 Python 环境与预先安装好的 Obsidian 客户端（及配置好的 Vault 文件夹）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心框架&lt;/strong&gt;：安装配置好的 OpenClaw 智能体框架。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;依赖 Skill (通过 ClawHub 安装)&lt;/strong&gt;：
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;obsidian-direct&lt;/code&gt;（必须）：用于绕过官方限制，直接通过 Python 强行读写本地 &lt;code&gt;.md&lt;/code&gt; 文件。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;arxiv-watcher&lt;/code&gt;（必须）：用于通过 ArXiv API 抓取文献资源。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;durable-task-runner&lt;/code&gt;（核心必须）：用于支持 L3 级别长时间挂机任务的调度与断点续传。&lt;/li&gt;
&lt;li&gt;增强依赖（可选）：&lt;code&gt;tavily&lt;/code&gt;（联网抓取）、&lt;code&gt;pdf&lt;/code&gt;（文本解析）、&lt;code&gt;academic-research-hub&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;触发条件与使用方法&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;触发条件&lt;/strong&gt;：当意图匹配到“阅读论文”、“L1/L2/L3阅读”、“知识内化”或“文献笔记”时自动触发工作流。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;使用方法（提示词样例）&lt;/strong&gt;：&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class=&quot;language-text&quot;&gt;获取这篇文献 ArXiv:2407.19354 并进行处理。
先做 L1 快速评估，如果判定为 P0 优先级，则请在后台直接启动 L3 深度阅读。
完成后将知识树更新推送到我的 Obsidian 对应目录。
&lt;/code&gt;&lt;/pre&gt;
&lt;h4&gt;Skill 的特殊机制&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;超长周期任务编排&lt;/strong&gt;：由于大模型无法一次性吃透几十页附带复杂公式的论文，L3级深度阅读被设计为长达 2.5 小时的异步挂机任务。底层深度依赖 OpenClaw 的 &lt;code&gt;durable-task-runner&lt;/code&gt; 来处理多次 LLM 推演循环、API 限流等待以及崩溃恢复。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;周期性反思机制&lt;/strong&gt;：内置时间触发器逻辑，强制在周末或月末对“临时存储的知识”进行 L2/L3 反思，生成知识体系演进报告。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;人类确认防呆机制&lt;/strong&gt;：当 AI 发现新论文推翻了你旧笔记的结论时，不会直接覆写旧笔记，而是生成一份确认单放进 &lt;code&gt;0-Inbox&lt;/code&gt; 文件夹，等待人类审核确认（Human in the loop）。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;注意事项与风险预警&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;财务毁灭/算力黑洞风险&lt;/strong&gt;：长达 2.5 小时的 L3 循环和高频的历史知识检索（RAG）会消耗极其恐怖的 Token。如果后端挂载的是商用前沿模型（如 Claude 3.5 Sonnet 或 GPT-4o），单篇深读可能带来高昂的 API 账单。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;数据覆写与坏档风险&lt;/strong&gt;：底层的 &lt;code&gt;obsidian-direct&lt;/code&gt; 使用的是民间 Python 暴力文件 I/O 脚本，而非 Obsidian 官方 CLI 通信。在文件多端同步（如 iCloud/Obsidian Sync）期间，极易引发文件冲突、内容丢失或双链索引错误。强烈建议在独立测试库中运行，并开启 Git 快照。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2&gt;核心插件&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;claudian&lt;/strong&gt;: Obsidian 第三方插件（暂未上架官方市场），适配 Claude Code。GitHub Repo: &lt;code&gt;YishenTu/claudian&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;obsidian-agent-client&lt;/strong&gt;: 第三方插件（暂未上架官方市场），适配主流智能体：Claude Code, Codex, Gemini CLI, OpenCode, Qwen Code。GitHub Repo: &lt;code&gt;RAIT-09/obsidian-agent-client&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;1. 安装方式&lt;/h3&gt;
&lt;h4&gt;方案 A：通过 BRAT 安装 (推荐)&lt;/h4&gt;
&lt;p&gt;这是保持插件自动更新的最佳方式，适合尚未上架市场的 Beta 插件。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;安装 BRAT&lt;/strong&gt;: 在 Obsidian 插件市场搜索并安装 BRAT。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;添加仓库&lt;/strong&gt;: 打开 设置 -&gt; BRAT -&gt; Add Beta plugin，输入仓库地址：YishenTu/claudian。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;启用&lt;/strong&gt;: 点击 Add Plugin 等待下载完成后，在“第三方插件”列表中开启 &lt;strong&gt;Claudian&lt;/strong&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;h4&gt;方案 B：手动加载&lt;/h4&gt;
&lt;p&gt;若网络环境无法直接连接 GitHub 仓库，可采用此法。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;获取文件&lt;/strong&gt;: 访问 GitHub 仓库 Releases 页面，下载 main.js、manifest.json、styles.css。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;创建路径&lt;/strong&gt;: 进入仓库目录 .obsidian/plugins/，新建文件夹 claudian。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;放置文件&lt;/strong&gt;: 将下载的三个文件放入该文件夹。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;启用&lt;/strong&gt;: 重启 Obsidian 或在插件设置页刷新，手动开启。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;2. 插件设置&lt;/h3&gt;
&lt;h4&gt;claudian设置&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;打开 claudian 设置页。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;基础设置&lt;/strong&gt;: 设置 &lt;code&gt;User Name&lt;/code&gt; (如 Jason)。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;自定义AI模型&lt;/strong&gt;: 使用兼容Anthropic接口的模型（如智谱GLM或DeepSeek）来替换Claude模型。&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic
ANTHROPIC_API_KEY=你的智谱api key
ANTHROPIC_DEFAULT_OPUS_MODEL=GLM-5
&lt;/code&gt;&lt;/pre&gt;
&lt;ol start=&quot;4&quot;&gt;
&lt;li&gt;&lt;strong&gt;连通性验证&lt;/strong&gt;:&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Ctrl/Cmd + P&lt;/code&gt; 调出命令面板 -&gt; 输入 &lt;code&gt;claudian&lt;/code&gt; -&gt; 选择 &lt;code&gt;Open chat view&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;发送“你好”，若回复正常则配置成功。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;obsidian-agent-client设置&lt;/h4&gt;
&lt;p&gt;以 OpenCode为例：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;打开 agent-client 设置页。在 Custom Agent 中，点击 &lt;code&gt;Add Custom Agent&lt;/code&gt;按钮。设置 Agent ID 和 Display Name 为 OpenCode。&lt;/li&gt;
&lt;li&gt;在命令行中输入 &lt;code&gt;where opencode&lt;/code&gt; 查看 OpenCode 安装路径，把路径填入Path。&lt;/li&gt;
&lt;li&gt;Arguments 填如下信息，注意第三行是你的Obsidian Vault路径：&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;acp
--cwd
D:\Obsidian Vault\MyObVault
&lt;/code&gt;&lt;/pre&gt;
&lt;ol start=&quot;4&quot;&gt;
&lt;li&gt;&lt;strong&gt;连通性验证&lt;/strong&gt;:&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;在Agent Client的AI对话框中，发送“你好”，若回复正常则配置成功。&lt;/li&gt;
&lt;/ul&gt;</content:encoded><h:img src="undefined"/><enclosure url="undefined"/></item></channel></rss>