核心用法
Obsidian 技能通过 notesmd-cli 命令行工具与本地 Obsidian 仓库直接交互,无需 Obsidian 应用运行即可操作纯 Markdown 文件。该工具解析 macOS 上的 ~/Library/Application Support/obsidian/obsidian.json 自动识别已打开的仓库,支持设置默认仓库、搜索笔记内容、创建新笔记、管理 Daily Notes、读写 YAML Frontmatter 元数据,以及安全地移动/重命名文件并自动更新双向链接。
显著优点
- 纯文本优先:直接操作
.md文件,与任何编辑器兼容,Obsidian 自动感知变更 - 无头自动化:不依赖 Obsidian GUI,适合脚本和自动化工作流
- 链接完整性:
move命令自动修复[[wikilinks]]和普通 Markdown 链接,避免断链 - 配置感知:自动读取
.obsidian/下的 Daily Notes、模板等用户配置 - 灵活的编辑集成:支持用 Obsidian 打开,或直接用
$EDITOR编辑
潜在缺点与局限性
- 仅限 macOS:依赖特定路径的 Obsidian 配置文件,Windows/Linux 未明确支持
- 单仓库焦点:虽有仓库切换能力,但多数命令针对单一默认仓库优化
- Canvas 支持有限:
.canvas文件为 JSON 格式,工具主要处理 Markdown - 插件生态隔离:无法直接与 Obsidian 插件交互,插件生成的内容需手动处理
适合人群
- 知识管理重度用户,需批量处理或自动化 Obsidian 笔记
- 开发者/工程师,偏好命令行工作流和版本控制(Git)管理笔记
- 需要与其他 CLI 工具链集成的自动化场景
常规风险
- 路径操作风险:
delete、move直接作用于文件系统,无回收站机制 - 链接解析边界:自动链接修复可能无法覆盖所有 Obsidian 扩展语法
- 配置漂移:手动修改
.obsidian/配置可能导致工具行为异常 - 并发编辑:同时用 Obsidian GUI 和 CLI 编辑同一文件可能造成冲突