字节笔记本

2026年2月16日

Obsidian CLI 完全指南:从终端掌控你的知识库

本文介绍 Obsidian CLI,Obsidian 官方推出的命令行界面工具。它让你能够从终端控制 Obsidian,实现脚本编写、自动化和与外部工具的集成,是提升知识库工作效率的利器。

什么是 Obsidian CLI

Obsidian CLI 是 Obsidian 官方推出的命令行界面工具,让你能够从终端控制 Obsidian。无论是日常笔记管理、自动化工作流,还是与外部工具集成,都可以通过命令行完成。

核心特点

  • 几乎所有 Obsidian 功能都可以通过命令行操作
  • 包含开发者命令,支持插件开发调试
  • 支持单条命令和交互式 TUI(终端用户界面)两种模式
  • 自动补全、命令历史、反向搜索等功能

安装要求

  • Obsidian 1.12 或更高版本(当前为早期访问版本)
  • 需要 Catalyst 许可证
  • 安装器版本需更新至 1.11.7

安装步骤

  1. 升级到最新 Obsidian 安装器版本
  2. 升级到最新早期访问版本(1.12.x)
  3. 在设置中启用:Settings → General → Command line interface
  4. 按提示注册 Obsidian CLI
  5. Windows 用户还需运行 .com 文件(Catalyst 会员可在 Discord 获取)

使用方式

单条命令模式

直接运行单个命令,无需进入交互界面:

bash
# 查看帮助
obsidian help

# 打开今日日记
obsidian daily

# 搜索笔记
obsidian search query="会议记录"

TUI 交互模式

进入交互式终端界面,支持自动补全和历史记录:

bash
# 进入 TUI
obsidian

# 在 TUI 中直接输入命令
help
daily
search query="待办事项"

TUI 快捷键

  • Ctrl+R - 反向搜索历史命令
  • Tab - 接受建议
  • ↑/↓ - 浏览历史
  • Ctrl+L - 清屏

核心命令分类

日常笔记管理

命令说明示例
daily打开今日日记obsidian daily
daily:append追加内容到日记obsidian daily:append content="- [ ] 买牛奶"
create创建新笔记obsidian create name="巴黎之旅" template=旅行
read读取文件内容obsidian read file=Recipe
search搜索笔记obsidian search query="会议"

文件和文件夹

命令说明
files列出所有文件
folders列出所有文件夹
open打开文件
move移动或重命名文件
delete删除文件(默认移至回收站)

链接和关系

命令说明
backlinks列出文件的反向链接
links列出文件的出链
unresolved列出未解析的链接
orphans列出没有入链的文件
deadends列出没有出链的文件

任务管理

命令说明示例
tasks列出任务obsidian tasks
tasks todo列出未完成任务obsidian tasks todo
tasks daily列出日记中的任务obsidian tasks daily
task toggle切换任务状态obsidian task ref="Note.md:8" toggle

标签和属性

命令说明
tags列出标签
properties列出属性
property:set设置属性值
property:remove移除属性

插件管理

命令说明
plugins列出已安装插件
plugin:enable启用插件
plugin:disable禁用插件
plugin:install安装社区插件
plugin:reload重载插件(开发用)

主题和样式

命令说明
themes列出已安装主题
theme:set设置活动主题
theme:install安装社区主题
snippets列出 CSS 片段
snippet:enable启用 CSS 片段

Obsidian Sync

命令说明
sync暂停/恢复同步
sync:status查看同步状态
sync:history查看文件版本历史
sync:restore恢复到指定版本

Obsidian Publish

命令说明
publish:list列出已发布文件
publish:status查看发布变更
publish:add发布文件
publish:remove取消发布

开发者命令

Obsidian CLI 提供了丰富的开发者命令,支持插件和主题开发:

命令说明示例
devtools开关开发者工具obsidian devtools
dev:screenshot截图(返回 base64 PNG)obsidian dev:screenshot path=screenshot.png
dev:eval执行 JavaScript 并返回结果obsidian dev:eval code="app.vault.getFiles().length"
dev:console查看捕获的控制台消息obsidian dev:console
dev:errors查看捕获的 JavaScript 错误obsidian dev:errors
dev:mobile切换移动端模拟obsidian dev:mobile on

这些命令让 AI 编程助手能够自动测试和调试 Obsidian 插件。

实际应用场景

场景一:快速记录想法

bash
# 快速添加待办事项到今日日记
obsidian daily:append content="- [ ] 完成项目文档"

# 创建新笔记
obsidian create name="项目想法" content="# 新想法\n\n刚刚想到..."

场景二:自动化工作流

bash
# 搜索所有包含 "TODO" 的笔记
obsidian search query="TODO" --copy

# 统计笔记数量
obsidian files total

# 列出最近修改的文件
obsidian recents

场景三:插件开发调试

bash
# 重载正在开发的插件
obsidian plugin:reload id=my-plugin

# 截图检查 UI
obsidian dev:screenshot path=ui-check.png

# 执行代码检查状态
obsidian dev:eval code="app.workspace.activeLeaf.view"

场景四:与外部工具集成

bash
# 配合 Alfred/Raycast 快速搜索
# 配合 Hazel 自动归档笔记
# 配合 cron 定时生成报告

参数和标志

参数(带值):

bash
obsidian create name="笔记名称" content="笔记内容"

标志(布尔开关):

bash
obsidian create name=Note content="Hello" silent overwrite

常用标志

  • silent - 静默执行,不打开文件
  • overwrite - 覆盖已有内容
  • newtab - 在新标签页打开

指定目标

指定仓库

bash
obsidian vault=Notes daily
obsidian vault="My Vault" search query="test"

指定文件

bash
# 通过文件名(支持模糊匹配)
obsidian read file=Recipe

# 通过完整路径
obsidian read path="Templates/Recipe.md"

复制输出

添加 --copy 将输出复制到剪贴板:

bash
obsidian read --copy
obsidian search query="TODO" --copy

注意事项

  1. Obsidian 必须运行:如果 Obsidian 未运行,第一条命令会启动它
  2. 命令和语法可能变化:早期访问阶段 API 可能调整
  3. Windows 额外配置:需要运行额外的 .com 文件
  4. 重启终端:注册 CLI 后需要重启终端使 PATH 生效

参考链接

总结

Obsidian CLI 将 Obsidian 从图形界面应用扩展为真正的生产力平台。通过命令行,你可以:

  • 实现笔记管理的自动化
  • 与外部工具深度集成
  • 开发调试插件更加高效
  • 构建个性化的知识管理工作流

对于重度 Obsidian 用户和开发者来说,CLI 是一个值得探索的强大工具。

分享: