obsidian-cli
CLI utility for interacting with and managing Obsidian vaults.
Install
mkdir -p .claude/skills/obsidian-cli && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/14493" && unzip -o skill.zip -d .claude/skills/obsidian-cli && rm skill.zipInstalls to .claude/skills/obsidian-cli
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Use the Obsidian CLI to read, create, search, and manage vault content, or to develop and debug Obsidian plugins and themes from the command line.Key capabilities
- →Read content from an Obsidian vault
- →Create new notes in an Obsidian vault
- →Search for content within an Obsidian vault
- →Append content to existing notes
- →Set properties on notes
- →Debug Obsidian plugins and themes
How it works
The skill executes `obsidian` CLI commands to interact with a running Obsidian instance, allowing for programmatic management of vault content and development workflows.
Inputs & outputs
When to use obsidian-cli
- →Automating note creation
- →Searching vault content via terminal
- →Debugging Obsidian plugins
About this skill
Obsidian CLI
Use the obsidian CLI to interact with a running Obsidian instance. Requires Obsidian to be open.
When to Use
- Use when managing vault content through the Obsidian CLI.
- Use when developing or debugging Obsidian plugins and themes from the command line.
- Use when the user wants shell-driven interaction with a running Obsidian app.
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 development
Develop/test cycle
After making code changes to a plugin or theme, follow this workflow:
- Reload the plugin to pick up changes:
obsidian plugin:reload id=my-plugin - Check for errors — if errors appear, fix and repeat from step 1:
obsidian dev:errors - Verify visually with a screenshot or DOM inspection:
obsidian dev:screenshot path=screenshot.png obsidian dev:dom selector=".workspace-leaf" text - Check console output for warnings or unexpected logs:
obsidian dev:console level=error
Additional developer commands
Run JavaScript in the app context:
obsidian eval code="app.vault.getFiles().length"
Inspect CSS values:
obsidian dev:css selector=".workspace-leaf" prop=background-color
Toggle mobile emulation:
obsidian dev:mobile on
Run obsidian help to see additional developer commands including CDP and debugger controls.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
When not to use it
- →When Obsidian is not running
- →When the task does not involve interacting with an Obsidian vault or developing plugins/themes
- →When the user does not want shell-driven interaction
Limitations
- →The skill requires Obsidian to be open and running
- →The skill's scope is limited to managing vault content and plugin/theme development
- →The skill does not provide a graphical interface for interaction
How it compares
This skill provides shell-driven interaction with Obsidian, enabling automation and command-line debugging, which differs from direct GUI interaction.
Compared to similar skills
obsidian-cli side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| obsidian-cli (this skill) | 0 | — | Review | Intermediate |
| twinmind-hello-world | 1 | 29d | No flags | Beginner |
| granola-local-dev-loop | 1 | 29d | Review | Intermediate |
| obsidian-multi-env-setup | 1 | 29d | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by Yash000
View all by Yash000 →You might also like
twinmind-hello-world
jeremylongshore
Create your first TwinMind meeting transcription and AI summary. Use when starting with TwinMind, testing your setup, or learning basic transcription and summary patterns. Trigger with phrases like "twinmind hello world", "first twinmind meeting", "twinmind quick start", "test twinmind transcription".
granola-local-dev-loop
jeremylongshore
Integrate Granola meeting notes into your local development workflow. Use when setting up development workflows, accessing notes programmatically, or syncing meeting outcomes with project tools. Trigger with phrases like "granola dev workflow", "granola development", "granola local setup", "granola developer", "granola coding workflow".
obsidian-multi-env-setup
jeremylongshore
Configure multiple Obsidian environments for development, testing, and production. Use when managing separate vaults, testing plugin versions, or establishing a proper development workflow with isolated environments. Trigger with phrases like "obsidian environments", "obsidian dev vault", "obsidian testing setup", "multiple obsidian vaults".
notion-knowledge-capture
makenotion
Transforms conversations and discussions into structured documentation pages in Notion. Captures insights, decisions, and knowledge from chat context, formats appropriately, and saves to wikis or databases with proper organization and linking for easy discovery.
apple-reminders
openclaw
Manage Apple Reminders via the `remindctl` CLI on macOS (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.
memory-keeper-proactive-context-maintenance
b4CU-R4U
Automatically detect and maintain memory freshness by monitoring context staleness, significant code changes, task completions, and phase transitions. Proactively suggests and executes memory sync operations with user confirmation. Use when the user says "sync memory", "update context", or when the Skill detects that context is stale (>2 hours), significant changes have occurred (new commits), tasks completed, or major milestones reached. Replaces passive "context is stale" warnings with active maintenance.