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.
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.
npx agentmods add skills/breferrari/obsidian-mind/obsidian-clinpx skills add breferrari/obsidian-mind --skill obsidian-cligit clone --depth 1 https://github.com/breferrari/obsidian-mindWrote 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.
[](https://agentmods.dev/skills/breferrari/obsidian-mind/obsidian-cli)<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>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.
| Model | Per session | Once 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 |
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.
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
obsidiancommand 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 viaRead/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"
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.
- 6d ago First seen · 110 lines · 102 tokens per session scan A 20cb8d69f7dc
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.
Other skills, from other repositories
culture-index
Index and search culture documentation.
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".
query
Interactive knowledge assistant via Telegram. Can read, create, and modify documents. Destructive actions require user approval.
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…
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…
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.