SkillAgentSearch skills...

claude-obsidian

Self-organizing AI second brain for Obsidian + Claude Code. Drop any source and Claude reads, links, and files it into one connected knowledge graph of plain Markdown you own. AI note-taking, personal knowledge management (PKM), and an open-source Notion alternative.

Install / Use

npx skills add AgriciDaniel/claude-obsidian

Installs into whichever agent you are using.

About this skill
🤖

CLAUDE.md

Claude Code project instructions

Quality Score

98/100

Supported Platforms

Claude Code

Our assessment of claude-obsidian

claude-obsidian scores 98/100 on our quality scale, 29th of 965 AI & Machine Learning skills we index (top 4%).

Its CLAUDE.md is 17 KB long, well organised into 18 sections with 11 code examples: a thorough specification that gives an agent plenty to work with.

With 16,192 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
18/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 11 days ago, so claude-obsidian is actively maintained.
  • Our last check on 2026-10-17 found the source still online.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.

AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

claude-obsidian compared with similar skills

All 4 of these similar skills score higher than claude-obsidian; compare them before choosing.

SkillScoreStarsUpdatedFormat
claude-obsidian (this skill)by AgriciDaniel9816.2k11d agoCLAUDE.md
claude-memby thedotmack100113.5ktodayCLAUDE.md
taste-skillby Leonxlnx100110.6ktodayCLAUDE.md
Agent-Reachby Panniantong100109.2ktodayCLAUDE.md
Understand-Anythingby Egonex-AI10090.9k10d agoCLAUDE.md

Frequently asked questions

How do I install claude-obsidian?
Run npx skills add AgriciDaniel/claude-obsidian. The install tabs above show the steps for each supported agent.
Which AI agents does claude-obsidian work with?
It is written for Claude Code, as a CLAUDE.md file. Other agents that read the same format can often use it too.
Is claude-obsidian safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is claude-obsidian still maintained?
The repository was last updated 11 days ago, so claude-obsidian is actively maintained.
<p align="center"> <img src="assets/cover.png" alt="claude-obsidian cover featuring an astronaut, the Obsidian crystal, and a connected knowledge graph" width="100%"> </p> <h1 align="center">claude-obsidian</h1> <p align="center"> <strong>Build an Obsidian knowledge base that becomes more useful every time you use it.</strong><br> Capture sources, create connected notes, retrieve grounded answers, and keep the vault healthy—without giving up ownership of your files. </p> <p align="center"> <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-2563eb.svg" alt="MIT license"></a> <a href="https://agentskills.io"><img src="https://img.shields.io/badge/Agent%20Skills-compatible-2563eb" alt="Agent Skills compatible"></a> <a href="https://code.claude.com/docs/en/plugins"><img src="https://img.shields.io/badge/Claude%20Code-plugin-7c3aed" alt="Claude Code plugin"></a> <a href="CHANGELOG.md"><img src="https://img.shields.io/badge/release-v2.2.0-d97745" alt="Release v2.2.0"></a> </p> <p align="center"> <a href="#from-source-to-living-knowledge">See the workflow</a> · <a href="#quick-start">Quick start</a> · <a href="#15-skills-one-system">Explore the skills</a> · <a href="docs/install-guide.md">Installation guide</a> · <a href="docs/windows-wsl.md">Windows &amp; WSL</a> </p>

claude-obsidian is a local-first knowledge system for Claude Code and compatible Agent Skills hosts. It turns source material into linked, source-cited Obsidian pages; answers from the evidence already in the vault; and provides explicit workflows for research, retrieval, maintenance, and visual mapping.

Your vault remains a normal directory of Markdown, JSON, and source files. It is not hidden in a plugin cache, locked in a cloud database, or silently uploaded to a model.

From source to living knowledge

Most AI note workflows stop after saving text. claude-obsidian is organized around a repeatable loop: retain the source, ground the claims, connect the knowledge, then put it back to work.

The claude-obsidian compounding knowledge loop

  • Capture with context. Bring local sources through a visible inbox and preserve immutable, content-addressed copies before synthesis.
  • Ground every important claim. Source and claim ledgers retain authority, freshness, support, contradiction, confidence, and review state.
  • Connect what you learn. Build linked pages, indexes, Maps of Content, methodology-aware structures, and Obsidian Canvas views.
  • Use the vault again. Query, research, retrieve, lint, and fold what is already known instead of starting every conversation from zero.

See the vault

The output is meant to remain useful with or without an agent: plain Markdown for portability, Obsidian for navigation and visual exploration.

<p align="center"> <img src="assets/screenshots/graph-view.png" alt="Example claude-obsidian vault in Obsidian Graph view" width="49%"> <img src="assets/screenshots/wiki-map-view.png" alt="Example claude-obsidian knowledge map in Obsidian Canvas" width="49%"> </p> <p align="center"> <sub>Linked knowledge in Graph view · A visual knowledge map in Obsidian Canvas</sub> </p>

Why it feels different

  • Local by default. The vault is user-owned and works as ordinary files. Network egress is a separate, explicit decision.
  • Sources survive the summary. Notes point back to durable source evidence; unsupported and contradictory claims remain visible.
  • Knowledge compounds deliberately. Ingestion, querying, linting, retrieval, research, and rollups share one provenance-aware model.
  • Parallel agents cannot race the vault. Workers return drafts. One orchestrator inspects and applies one recoverable transaction.
  • Capabilities are stated honestly. Optional tools are detected, maturity is declared, and missing adapters degrade clearly instead of being simulated.

This is not an automatic transcript recorder, a cloud sync service, a factual oracle, or a substitute for backups and source control.

Quick start

The safest first run uses a source checkout and a separate user vault. Every mutating setup command previews its exact operation before it can apply.

1. Get the product

git clone https://github.com/AgriciDaniel/claude-obsidian.git
cd claude-obsidian

The checkout contains the product. It is not your knowledge vault.

2. Initialize a separate vault

export GENERATED_AT="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
export OPERATION_ID="init-reviewed"

python3 scripts/claude-obsidian.py init "$HOME/Documents/MyKnowledgeVault" \
  --generated-at "$GENERATED_AT" --operation-id "$OPERATION_ID"

Review the JSON plan and copy its approved_plan_sha256, then apply that exact operation:

python3 scripts/claude-obsidian.py init "$HOME/Documents/MyKnowledgeVault" \
  --generated-at "$GENERATED_AT" --operation-id "$OPERATION_ID" \
  --approved-plan-sha256 "<sha256-from-the-plan>" --apply

For an existing Obsidian vault, use the non-destructive adopt workflow described in the installation guide.

3. Start from the vault

Open the new directory in Obsidian, then run Claude Code from that directory with the local plugin:

cd "$HOME/Documents/MyKnowledgeVault"
claude --plugin-dir /absolute/path/to/claude-obsidian

Start with:

/claude-obsidian:wiki

Then place a source in inbox/ and invoke /claude-obsidian:wiki-ingest. Save an answer explicitly with /claude-obsidian:save; ask the vault with /claude-obsidian:wiki-query.

For Codex, OpenCode, Gemini, or ZCode, preview and then apply the portable skill links from the product checkout:

bash scripts/setup-multi-agent.sh --host codex
bash scripts/setup-multi-agent.sh --host codex --apply

Cursor and Windsurf use workspace-local skill discovery. Marketplace setup, every supported host, vault adoption, upgrades, and uninstall steps are covered in the full installation guide.

15 skills, one system

The skills are small enough to invoke directly and coordinated enough to share the same evidence, vault-selection, and mutation rules.

Build and use the wiki

| Skill | What it does | |---|---| | wiki | Initializes or adopts a vault, diagnoses readiness, and routes work | | save | Saves one scoped answer or insight—never an automatic transcript | | wiki-ingest | Turns captured sources into linked pages and provenance records | | wiki-query | Answers read-only from relevant vault evidence | | wiki-lint | Reports dead links, orphans, metadata gaps, stale indexes, and empty sections |

Extend the workflow

| Skill | What it adds | |---|---| | autoresearch | Bounded web research with explicit egress and a separate canonical merge | | canvas | Wiki-scoped Obsidian Canvas creation and maintenance | | defuddle | Clean, readable web content before ingestion | | wiki-fold | Extractive, traceable rollups of the operation log | | wiki-mode | Generic, LYT, PARA, or Zettelkasten filing conventions | | wiki-retrieve | Contextual prefixes, BM25, and optional cosine reranking | | wiki-cli | Obsidian CLI reads and search with transaction-safe writes |

Reference skills

| Skill | What it provides | |---|---| | obsidian-markdown | Correct Obsidian Flavored Markdown, links, embeds, and callouts | | obsidian-bases | Native .base tables, cards, filters, formulas, and summaries | | think | A structured observe, listen, connect, create, and grow review loop |

Claude Code exposes namespaced invocations such as /claude-obsidian:wiki-lint; other hosts use their native Agent Skills invocation. Trigger phrases and exact contracts live in each skills/<name>/SKILL.md.

Trust is part of the architecture

The claude-obsidian product and vault trust boundary

The product never treats a source checkout, plugin cache, or contributor state as the default vault. A vault is selected explicitly, through CLAUDE_OBSIDIAN_VAULT, by the nearest .claude-obsidian.json, or by one unambiguous initialized ancestor. If selection is uncertain, the command exits without writing.

One logical knowledge operation is one recoverable transaction:

  1. Read every target and record its expected SHA-256.
  2. Let parallel workers return drafts and evidence only.
  3. Merge the complete change into one operation bundle.
  4. Inspect the bundle, then apply it once.
  5. Report the operation ID and exact changed paths.

The core holds one process-lifetime vault lock, journals backups, uses atomic replacement, and restores the prior state if an apply cannot finish. A changed target is a conflict, never a silent overwrite. Git checkpoints, destructive repairs, network egress, and canonical research merges remain explicit operations.

Read the transaction contract, provenance contract, and Compound Vault architecture for the machine-facing detail.

Honest capability boundaries

| Input or capability | Current support | |---|---| | Local filesystem sources | Implemented bounded, content-addressed byte capture | | Images | Metadata, hash, size, and bounded dimensions when available | | PDF and EPUB | Metadata, hash, and size; no built-in semantic extraction | | URL and YouTube | Validated consent plans; a configured external runner is required | | OCR | Local-file consent plan; a configured external runner is required | | BM25 retrieval | Local and deterministic | | Contextual prefixes or remote models | Optional and gated by explicit egress consent | | Obsidian CLI | Optional for reads/search; filesystem transport remains available |

High-risk accepted claims require two independent sources. Unsupported or contradictory evidence stays visible, and a grounded refusal is preferred over an invented citation. Model-based retrieval falls back to deterministic BM25 when the embedding or reranking stage cannot be trusted.

Shape the vault to the way you think

wiki-mode can route new notes using four methodologies without bulk-moving existing knowledge:

| Mode | Filing principle | |---|---| | Generic | Sources, concepts, entities, and sessions | | LYT | Maps of Content and linked atomic notes | | PARA | Projects, Areas, Resources, and Archives | | Zettelkasten | Stable identifiers, atomic notes, and dense links |

Generic is the default when no mode is configured. Switching modes changes how new notes are routed; it does not silently reorganize old ones. See the methodology modes guide.

Operator reference

<details> <summary><strong>Portable CLI</strong></summary>

The wrapper is python3 scripts/claude-obsidian.py.

| Command | Effect | |---|---| | doctor --vault PATH | Show vault selection and readiness | | init PATH [--approved-plan-sha256 HASH --apply] | Plan or create a separate vault | | adopt PATH [--approved-plan-sha256 HASH --apply] | Plan or adopt an existing Obsidian vault | | migrate --vault PATH [--approved-plan-sha256 HASH --apply] | Add v1 ledgers and configuration without rewriting legacy data | | transaction inspect BUNDLE --vault PATH | Validate a write bundle without mutation | | transaction apply BUNDLE --vault PATH --approved-plan-sha256 HASH | Apply one inspected, recoverable operation | | transaction recover --vault PATH [--force-stale-lock] | Restore an interrupted operation | | lint --vault PATH [--as-of YYYY-MM-DD] [--exclude GLOB]... | Emit findings deterministic for the declared UTC date | | contracts --verify --vault PATH | Execute capability readiness contracts | | capture plan --vault PATH [SOURCE ...] | Run a local capture preflight without writes | | capture apply --vault PATH [SOURCE ...]

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars16.2k
CategoryAI
Updated11d ago
Forks1.6k

Languages

Python

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions