About obsidian-cli
obsidian-cli is a skill for using the `obsidian` command-line interface with a running Obsidian instance. It covers vault and note operations, plus guidance for plugin and theme development.
Key features
- 01Read, create, and append notes
- 02Search vault content
- 03Manage daily notes and tasks
- 04Set note properties
- 05Target files and vaults
- 06Guide plugin and theme development
Use cases
- 01Create or update notes from the command line
- 02Search notes in a selected vault
- 03Add tasks to a daily note
- 04Develop or debug an Obsidian plugin or theme
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ timlai666/ skills --skill obsidian-cliAfter installing, type/obsidian-cliin Claude Code to confirm it loaded.
Bundled filesreferences/plugin-development.md
Details
From the project READMEObsidian CLI
Use the obsidian CLI to interact with a running Obsidian instance. Requires Obsidian to be open.
Command reference
Run obsidian help to see all available commands. This is always up to date. Full docs: https://help.obsidian.md/cli
Syntax
Parameters take a value with =. Quote values with spaces:
obsidian create name="My Note" content="Hello world"
Flags are boolean switches with no value:
obsidian create name="My Note" silent overwrite
For multiline content use \n for newline and \t for tab.
File targeting
Many commands accept file or path to target a file. Without either, the active file is used.
file=<name>— resolves like a wikilink (name only, no path or extension needed)path=<path>— exact path from vault root, e.g.folder/note.md
Vault targeting
Commands target the most recently focused vault by default. Use vault=<name> as the first parameter to target a specific vault:
obsidian vault="My Vault" search query="test"
Common patterns
obsidian read file="My Note"
obsidian create name="New Note" content="# Hello" template="Template" silent
obsidian append file="My Note" content="New line"
obsidian search query="search term" limit=10
obsidian daily:read
obsidian daily:append content="- [ ] New task"
obsidian property:set name="status" value="done" file="My Note"
obsidian tasks daily todo
obsidian tags sort=count counts
obsidian backlinks file="My Note"
Use --copy on any command to copy output to clipboard. Use silent to prevent files from opening. Use total on list commands to get a count.
Plugin and theme development
Before developing or debugging an Obsidian plugin or theme, read Plugin development for the complete reload, error-checking, visual-verification workflow and developer command examples.