Generated banner for Obsidian CLI
Generated logo for Obsidian CLI

Obsidian CLI

Steph Ango (Obsidian)CommunityCreated by Steph Ango (Obsidian)

  • Skill
  • Tool integration
  • Automation and integrations
  • MIT
  • No issues found

From the author

Interact with Obsidian vaults using the Obsidian CLI to read, create, search, and manage notes, tasks, properties, and more. Also supports plugin and theme development with commands to reload plugins, run JavaScript, capture errors, take screenshots, and inspect the DOM. Use when the user asks to interact with their Obsidian vault, manage notes, search vault content, perform vault operations from the command line, or develop and debug Obsidian plugins and themes.
— the description by Steph Ango (Obsidian)

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

The obsidian-cli skill provides a command-line interface for interacting with a running instance of Obsidian. It enables users to perform vault operations such as reading, creating, and searching notes, managing properties, and handling tasks. Additionally, it offers a suite of developer-focused commands to streamline the plugin and theme development lifecycle, including hot-reloading, error monitoring, DOM inspection, and JavaScript execution within the Obsidian context.

What it does

  • Read, create, and append content to notes within an Obsidian vault.
  • Search vault content and manage note properties or tasks.
  • Reload plugins and themes to test code changes without manual restarts.
  • Capture screenshots and inspect the DOM or CSS for visual debugging.
  • Execute arbitrary JavaScript code within the Obsidian application context.
  • Target specific vaults and manage file operations via command-line parameters.

When to use it

  • When you need to automate note creation or data entry into Obsidian.
  • When developing or debugging Obsidian plugins and themes.
  • When you prefer managing vault content via terminal commands rather than the GUI.
  • When you need to perform bulk operations or search queries across your vault.

Advantages

  • Enables rapid development cycles for plugin and theme authors.
  • Provides programmatic access to vault data for automation scripts.
  • Supports complex workflows like daily note management and task tracking.
  • Allows for deep inspection of the Obsidian environment via DOM and console tools.

Usage examples

“Create a new note titled 'Meeting Notes' with some initial content.”
The agent executes 'obsidian create name="Meeting Notes" content="# Meeting Notes"' to generate the file in the active vault.
“Reload my plugin named 'my-plugin' and check for errors.”
The agent runs 'obsidian plugin:reload id=my-plugin' followed by 'obsidian dev:errors' to verify the update.
“Search for all notes containing the term 'project' and limit to 5 results.”
The agent executes 'obsidian search query="project" limit=5' to return the requested list of notes.
“Get the background color of the workspace leaf.”
The agent runs 'obsidian dev:css selector=".workspace-leaf" prop=background-color' to retrieve the CSS value.

Install

  1. Download the skill as a ZIP:

    https://autogineer.com/agent-skills/kepano/obsidian-cli/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip obsidian-cli.zip -d .agents/skills

Documentation by Steph Ango (Obsidian)

Obsidian 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 development

Develop/test cycle

After making code changes to a plugin or theme, follow this workflow:

  1. Reload the plugin to pick up changes:

    obsidian plugin:reload id=my-plugin
  2. Check for errors — if errors appear, fix and repeat from step 1:

    obsidian dev:errors
  3. Verify visually with a screenshot or DOM inspection:

    obsidian dev:screenshot path=screenshot.png
    obsidian dev:dom selector=".workspace-leaf" text
  4. 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.

Files

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
Steph Ango (Obsidian)
Publisher
Steph Ango (Obsidian) (Community)
Source
kepano/obsidian-skills · skills/obsidian-cli · commit 3ccff53
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Steph Ango (Obsidian) or Steph Ango (Obsidian).

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download obsidian-cli.zip