| name | obsidian-cli |
| description | Use this skill whenever the user wants to interact with their Obsidian vault from the command line or terminal. Triggers include: creating, reading, editing, moving, or deleting notes; managing daily notes; searching vault content; managing tasks, tags, or properties; working with plugins, themes, or snippets; accessing sync or publish features; managing bookmarks or bases; running obsidian commands; or any automation involving an Obsidian vault. Also triggers for phrases like "in my vault", "my notes", "obsidian note", "daily note", "add to obsidian", "search obsidian", "obsidian task". Always use this skill when the user wants Claude to do anything with Obsidian on their behalf.
|
Obsidian CLI Skill
This skill helps you use the official Obsidian CLI (v1.12+) to automate and control Obsidian from the terminal. The CLI connects to a running Obsidian instance via IPC.
Prerequisites
- Obsidian 1.12+ installed and running
- CLI enabled: Obsidian Settings → General → Command line interface → Enable
- The
obsidian binary available in your PATH (on macOS, it's typically added automatically; on Windows/Linux, add Obsidian's install directory to PATH)
Core Syntax
obsidian <command> [parameters] [flags]
- Parameters use
key=value format. Quote values with spaces: name="My Note"
- Flags are standalone keywords (no value):
silent, overwrite, copy
- File targeting: use
file=<name> (wikilink-style) or path=<vault-root-path> for exact paths
- Vault targeting: defaults to the most recently focused vault, or use
vault=<name>
- Run
obsidian help to see all commands; obsidian help <command> for details on a specific command
Command Reference
For the full detailed reference with all parameters, options, and examples, read:
→ references/command-reference.md
Below is a quick index organized by category.
Files & Notes
read, create, append, prepend, open, delete, move, rename, files, folders, file, random, wordcount, outline
Daily Notes
daily, daily:read, daily:append, daily:prepend, daily:path
Search
search, search:context
Tasks
tasks, task, task:toggle
Tags
tags, tag
Properties / Frontmatter
properties, property:read, property:set, property:remove, aliases
Links
backlinks, links, unresolved, orphans, deadends
Bookmarks
bookmarks, bookmark, bookmark:add
Bases (Database Views)
bases, base:query, base:views, base:create
Templates
templates, template:read, template:insert
Commands & Hotkeys
commands, command, hotkeys, hotkey
Tabs & Workspaces
workspace, tabs, tab:open
History & Diff
history, history:list, history:read, history:restore
Sync
sync, sync:status, sync:history, sync:read, sync:restore, sync:deleted
Publish
publish, publish:status, publish:changes, publish:file, publish:unpublish, publish:files
Themes & CSS
themes, theme, theme:set, theme:install, theme:uninstall, snippets, snippets:enabled, snippet:enable, snippet:disable
Plugins
plugins, plugin, plugin:enable, plugin:disable, plugin:install, plugin:uninstall, plugin:reload, plugins:restrict
Vault & App
vault, vaults, version, reload, restart, recents
Developer Tools
eval, dev:screenshot, dev:debug, dev:console, dev:errors, dev:css, dev:dom, devtools
Common Workflows
Create a note
obsidian create name="Meeting Notes" content="## Agenda\n- Item 1"
obsidian create name="Project Plan" template="templates/project"
Read a note
obsidian read file="Meeting Notes"
Append to a note
obsidian append file="Meeting Notes" content="## Follow-ups\n- Action item"
Work with today's daily note
obsidian daily:read
obsidian daily:append content="- [ ] Review PR"
Search vault
obsidian search query="project alpha" limit=10
obsidian search query="TODO" context=2
Manage tasks
obsidian tasks
obsidian tasks status=todo
obsidian task:toggle file="Notes" line=5
Manage properties/frontmatter
obsidian property:read file="My Note"
obsidian property:set file="My Note" key=status value=done
obsidian property:remove file="My Note" key=draft
Find orphaned or broken notes
obsidian orphans
obsidian unresolved
obsidian deadends
Plugin management
obsidian plugins
obsidian plugin:enable id=dataview
obsidian plugin:reload id=my-plugin
Tips for Claude
- Always check if the user wants to target a specific vault; if so, add
vault=<name>
- Use
silent flag when you don't want the note to open in Obsidian after an operation
- Use
--copy flag on list/read commands to copy output to clipboard
- For large content insertions, use a heredoc or pass content via stdin when possible
- When the user's vault path or note names are unclear, ask before running destructive commands (
delete, move)
- Prefer
file=<name> over path= unless the user specifies exact paths — wikilink-style resolution matches Obsidian's internal behavior
- If the CLI returns an error like "Cannot connect to Obsidian", remind the user that Obsidian must be running and the CLI must be enabled in settings