Back to Skills

obsidian

Activate when the user mentions their Obsidian vault, notes, tags, frontmatter, daily notes, backup, or sync. Route operations across MCP, Obsidian CLI/app actions, and git sync with safe defaults.

1,617stars122forksUpdated 8/16/2026

Security Assessment

Safe(93/100)
Security Score93/100

About obsidian

Obsidian is a routing skill that coordinates operations on an Obsidian vault across three backends with safe defaults: an MCP server for vault data operations, Obsidian CLI/app context for app-specific workflows, and CLI git for sync and backup. It solves the problem of choosing the right backend for a given intent and executing note operations — reads, writes, patches, searches, moves, tag and frontmatter updates — without silently corrupting a vault, defaulting to MCP for data operations unless the user explicitly asks for sync, backup, git, or app behavior.

A central feature is a safe note-rename workflow: it mandates MCP move_note over the Obsidian CLI move (which can apply stale byte offsets and silently corrupt unrelated notes, per an upstream issue), and treats backlink preservation as an explicit, verifiable second step — searching for old wikilink targets by path and basename, patching only exact link targets while preserving aliases and heading/block suffixes, then re-searching to report any remaining references. It documents numerous tool gotchas: patch_note's multi-match and frontmatter-matching behavior and its rejection of empty strings, search_notes's minified JSON and hard 20-result cap, write_note's directory auto-creation and frontmatter merge semantics, and the exact-path confirmation required by delete_note and move_file. Bundled resources cover Obsidian conventions (vault structure, wikilinks, daily notes, frontmatter, tags, templates, URIs), per-tool behavioral patterns, and git sync.

It targets Obsidian users and automation authors who want reliable, non-destructive agent operations on their notes. The skill is safety-first: it emphasizes confirmation-guarded deletes and moves, explicit backlink verification, and honest reporting when exhaustive repair cannot be proven, with no exfiltration or risky system behavior.

FAQ

How does it decide which backend to use?

It defaults to MCP for vault data operations (read, write, patch, search, move/rename, frontmatter and tags), uses Obsidian CLI/app context only when app-specific behavior is needed, and uses CLI git for sync and backup. When ambiguous, it picks MCP unless you explicitly ask for sync, backup, git, or app behavior.

Why does it avoid the Obsidian CLI move command?

The CLI's delayed link rewrites can apply stale byte offsets to notes edited after the move began, silently corrupting unrelated content (referencing an upstream issue). It uses MCP move_note instead and repairs backlinks as an explicit, verified step.

How does it protect against accidental data loss?

delete_note requires a character-identical confirmPath and move_file requires both old and new paths confirmed exactly. The skill reports moves and backlink repairs separately and flags any stale references rather than claiming success.

What are the search limitations to be aware of?

search_notes returns minified JSON with abbreviated fields and caps results at 20 regardless of the limit requested. If a search hits that cap or a basename is ambiguous, the skill tells the user exhaustive backlink repair cannot be proven and asks before a broader scan.

What does it need to run?

An Obsidian MCP server for data operations, optionally the Obsidian desktop app/CLI for app-context actions, and git for sync/backup workflows. Bundled resources document Obsidian conventions, tool patterns, and git sync.

All Files

4 files
resources/obsidian-conventions.md4.4 KB
View
resources/tool-patterns.md5.3 KB
View
resources/git-sync.md3.0 KB
View
SKILL.md11.3 KB
View

Install obsidian

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill