Obsidian CLI — Claude Code Skill
A skill for AI coding agents that enables full control of Obsidian vaults from the terminal using the official Obsidian CLI (v1.12+).

What This Skill Does
Once installed, your AI agent will know how to interact with Obsidian vaults through the official CLI — reading, creating, and editing notes; managing daily notes; running full-text search; querying tasks, tags, links, and properties; managing plugins and sync; and running developer tools.
Covers 130+ commands across all major areas:
| Area | Commands |
|---|
| Files | read, create, append, prepend, move, rename, delete, files, folders, file, random |
| Daily Notes | daily, daily:read, daily:append, daily:prepend, daily:path |
| Search | search, search:context with scoping, limits, JSON output |
| Properties | properties, property:read, property:set, property:remove, aliases |
| Tags | tags, tag with counts and filtering |
| Tasks | tasks, task — query, filter, toggle |
| Links | backlinks, links, unresolved, orphans, deadends |
| Bookmarks | bookmarks, bookmark |
| Templates | templates, template:read, template:insert |
| Plugins | plugins, plugin, plugin:enable/disable/install/uninstall, plugins:restrict |
| Sync | sync, sync:status, sync:history, sync:read, sync:restore, sync:deleted |
| Themes | themes, theme, theme:set, theme:install/uninstall |
| Snippets | snippets, snippets:enabled, snippet:enable/disable |
| Commands | commands, command, hotkeys, hotkey |
| Bases | bases, base:query, base:views, base:create |
| History | history, history:list, history:read, history:restore |
| Workspace | workspace, tabs, tab:open |
| Diff | diff |
| Developer | eval, dev:screenshot, dev:debug, dev:console, dev:errors, dev:css, dev:dom, devtools |
| Vault | vault, vaults, version, reload, restart, recents, outline, wordcount |
Invoking the Skill
The skill activates automatically when your request clearly involves Obsidian vault operations. For casual phrasing, you may need to invoke it explicitly:
| Method | Example |
|---|
| Natural language (usually works) | "add this to my daily note: …", "search my vault for X" |
| Explicit prefix (always works) | $obsidian-cli append to today's daily note: "…" |
| Strict mode (always active) | Enable in Claude Code settings so the skill is always loaded |
If Claude tries to answer a vault request without executing any commands, just say use obsidian-cli and it will retry with the skill active.
Prerequisites
Obsidian v1.12 is available to all users — no Early Access build or Catalyst license required.
| Requirement | Details |
|---|
| Obsidian Desktop | v1.12.0+ |
| CLI enabled | Settings → Command line interface → Toggle ON |
| Obsidian running | The desktop app must be running — the CLI communicates over IPC |
Platform notes
- macOS / Linux — the
obsidian binary is added to PATH automatically when you enable CLI in settings.
- Windows — requires an
Obsidian.com redirector file placed alongside Obsidian.exe. Must run from a normal-privilege terminal — admin terminals produce silent failures.
- Headless Linux — use the
.deb package (not snap). Run under xvfb and prefix commands with DISPLAY=:5. Set PrivateTmp=false if running as a systemd service.
Installation
Claude Code — Plugin (native)
Option A — Marketplace install (recommended):
/plugin marketplace add https://github.com/pablo-mano/Obsidian-CLI-skill
/plugin install obsidian-cli
Done — see Invoking the Skill above for how to activate it.
Option B — Direct plugin load:
- Clone this repository:
git clone https://github.com/pablo-mano/Obsidian-CLI-skill
- Load the plugin with the
--plugin-dir flag:
claude --plugin-dir ./Obsidian-CLI-skill
Option C — Persistent via settings.json:
Add to your project's .claude/settings.json:
{
"plugins": {
"obsidian-cli": {
"source": { "source": "github", "repo": "pablo-mano/Obsidian-CLI-skill" }
}
}
}
The .claude-plugin/marketplace.json manifest makes this repository compatible with Claude Code's marketplace system.
Cursor