obsidian-cli

obsidian-cli is a skill for Claude Code from breferrari/obsidian-mind. It costs 102 tokens per session (910 once invoked), scanned A, original, MIT.

A command-line guide for working with Obsidian vaults, which are folders of notes managed by the Obsidian app.

In plain words
What is it for?
Use it to create, search, edit, and inspect notes, reload plugins, run JavaScript, capture errors, take screenshots, and inspect the app interface.
Why use it?
It lets an agent read and manage notes, tasks, properties, plugins, and themes through a running Obsidian installation.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

Part of the obsidian plugin — 8 skills, 20 commands, 10 agents, 5 hooks, 1 MCP server shipped together

About the project

Obsidian Mind is an Obsidian vault that stores notes, links, indexes, and other accumulated context so AI coding agents can retain memory across sessions. It is designed for Claude Code and also supports Codex CLI and Gemini CLI through shared hooks, commands, and vault data. Its catalogue add-ons package the vault’s commands, agents, skills, hooks, instructions, settings, plugin, and MCP integration.

breferrari/obsidian-mind · 4,599 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/breferrari/obsidian-mind/obsidian-cli
Any agent
npx skills add breferrari/obsidian-mind --skill obsidian-cli
Clone the repo
git clone --depth 1 https://github.com/breferrari/obsidian-mind

Made for: Claude Code.

Or install obsidian, the plugin that ships this one along with the rest of its 8 skills, 20 commands, 10 agents, 5 hooks, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for obsidian-cli

README.md
[![agentmods](https://agentmods.dev/badge/skills/breferrari/obsidian-mind/obsidian-cli.svg)](https://agentmods.dev/skills/breferrari/obsidian-mind/obsidian-cli)
Your own site
<a href="https://agentmods.dev/skills/breferrari/obsidian-mind/obsidian-cli"><img src="https://agentmods.dev/badge/skills/breferrari/obsidian-mind/obsidian-cli.svg" alt="Measured on agentmods" height="20"></a>
Per session 102 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 910 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00102 $0.00910
Opus 5 $0.00051 $0.00455
Sonnet 5 $0.00020 $0.00182
Haiku 4.5 $0.00010 $0.00091

Measured 6d ago against content hash 20cb8d69f7dc, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

obsidian-cli scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/obsidian-cli/SKILL.md · 110 lines

How it starts

The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Obsidian CLI

Use the obsidian CLI to interact with a running Obsidian instance. Requires Obsidian to be open.

[!IMPORTANT] macOS — open Obsidian once before using the CLI. On macOS the obsidian command launches the Electron app if no Obsidian instance is running, producing a visible window flash on the first call. Once Obsidian is open, subsequent CLI calls forward args to the running instance silently — no further flicker. For interactive workflows (slash commands), ensure Obsidian is open at the start of the session. For non-interactive contexts where you can't guarantee Obsidian is open (background hooks, automation, CI), prefer filesystem reads via Read / Grep / Glob.

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"

Read the full file on GitHub · 110 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 110 lines · 102 tokens per session scan A 20cb8d69f7dc

Subscribe to this mod's changes

obsidian-cli is a skill published in the GitHub repository breferrari/obsidian-mind (4,599 stars, last pushed 3d ago), licensed MIT. It adds 102 tokens to every session and 910 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

culture-index

Index and search culture documentation.

agent-skills-hub/agent-skills-hub · 8 tokens

granola-sync

On-demand pull of fresh calls/meetings from Granola (summaries + transcripts + participants) into the Obsidian vault via the official API. Incremental + idempotent (dedup by note id + updatedat) — safe to re-run, no duplicates. Trigger on "/granola-sync", "pull granola", "refresh meetings".

tonydzi/second-brain-starter-kit · 76 tokens

query

Interactive knowledge assistant via Telegram. Can read, create, and modify documents. Destructive actions require user approval.

Yrzhe/pagefly · 24 tokens

loop-wiki

Ingest and grow an Obsidian knowledge base as a verifiable loop. Combines Loop Engineering (machine-checkable completion criteria, boundary guardrails, a verification pass that resists gaming) with the Obsidian "second brain" organizing model (typed nodes, wikilinks, MOC, an index and an audit log). Use this whenever…

uninhibited-scholar/obsidian-loop-wiki · 208 tokens

paper-retriever

Retrieve a scientific paper PDF given an arxiv URL, DOI, or paper title. Downloads to papers/ directory. Handles open-access retrieval (arxiv direct, Chrome print-to-pdf for publisher-direct HTML, Unpaywall, title-based open-repository search); for paywalled papers it hands off to whichever paper-retriever- access…

ctoth/research-papers-plugin · 88 tokens

process-new-papers

Process all unprocessed PDF files in the papers/ root directory. If subagents are available, parallelize across papers immediately after listing them; otherwise process sequentially. Any PDF in papers/ root is unprocessed by convention (processed papers live in subdirectories). Invokes paper-reader on each PDF.

ctoth/research-papers-plugin · 65 tokens