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. Based on Karpathy's LLM Wiki pattern.
Claude-obsidian is a Claude Code plugin that turns an Obsidian vault into a self-organizing knowledge base by giving Claude Code 15 structured skills covering ingestion, retrieval, maintenance, and reasoning. When a user drops in a source, Claude reads it, extracts entities and concepts, writes plain Markdown notes, and wires them into the vault with bidirectional links. Four primary slash commands drive daily use: `/wiki` scaffolds and continues the vault, `/autoresearch` runs an autonomous multi-step research loop, `/canvas` generates visual Obsidian canvas maps, and `/think` applies a 10-principle reasoning framework introduced in v1.9. Retrieval uses a hybrid stack combining contextual prefix search, BM25, and cosine reranking based on Anthropic's September 2024 contextual retrieval research. Version 1.8 added first-class support for LYT, PARA, Zettelkasten, and Generic methodology modes, and v1.7 introduced per-file advisory locking to prevent multi-writer corruption. Optional MCP integration and a DragonScale Memory extension are also available. The project targets researchers, writers, and developers who want a private, locally owned alternative to cloud note tools.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Healthy fork ratio
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
/plugin marketplace add AgriciDaniel/claude-obsidian
/plugin install claude-obsidian16 items in this repository
Ingest supplied source material into an Obsidian vault with provenance and claim tracking: pasted text, files staged in the selected vault's inbox or .raw archive, or explicitly approved URLs. Use for a single source or bounded batch, not for saving an assistant answer. Triggers: ingest, ingest this file, ingest this URL, process this source, read and file this source, batch ingest, ingest these sources.
Run a deterministic, read-only health check on an Obsidian wiki. Use for lint, vault health check, audit wiki health, find orphans, find dead links, frontmatter audit, provenance audit, or wiki audit. Reports graph, link, frontmatter, provenance-ledger, empty-section, and stale-index findings; it does not reason broadly or repair files.
Run a bounded, source-grounded research loop, draft a cited dossier, and optionally propose a separately reviewed canonical vault merge. Use when the user wants autonomous or deep research that may access the public web. Triggers: /autoresearch, autoresearch, research this topic, deep dive into, investigate, find everything about, research and file, go research, build a wiki on.
Create, inspect, and update Obsidian JSON Canvas boards with text, file, link, group, and edge nodes. Use for canvas status, canvas lists, visual maps, zones, spatial layouts, adding vault notes or media to a .canvas file, and requests such as create canvas, add to canvas, or put this on the canvas.
Save a user-selected answer, decision, insight, or session summary into an Obsidian vault as one reviewed transaction. Use only when the user explicitly asks to preserve specific conversation content, not when they supply a file or URL to ingest. Triggers: /save, save this, save that answer, file this conversation, save this analysis, keep this insight, preserve this chat result.
Initialize, adopt, and route work for a separate Obsidian knowledge vault through the portable claude-obsidian core. Use for vault setup, scaffolding, workspace selection, cross-project configuration, or choosing the correct wiki sub-skill. Triggers: /wiki, set up wiki, scaffold vault, create knowledge base, adopt this vault, Obsidian vault, second brain setup, persistent wiki.
Plan and, with explicit network consent, use an optional external Defuddle cleaner to extract article-like HTTPS pages as Markdown. Use for defuddle, clean this URL, strip page clutter, readable Markdown from a web page, or preparing a web source for later wiki ingestion.
Explain, draft, and validate Obsidian Bases .base files with filters, formulas, properties, summaries, and table, card, or list views. Use for Obsidian Bases, database-like vault views, dynamic tables, reading lists, task trackers, filters, formulas, summaries, and .base file edits.
Explain, draft, or validate Obsidian Flavored Markdown syntax: properties, wikilinks, embeds, callouts, tags, comments, highlights, block references, math, and Mermaid. Use when the user explicitly requests Obsidian note formatting or syntax help, not for general Markdown or broad vault operations.
Apply the Fable-derived 10-stage OBSERVE, OBSERVE, LISTEN, THINK, CONNECT, CONNECT, FEEL, ACCEPT, CREATE, GROW loop to consequential or ambiguous reasoning and decisions. Use for think this through, deep think, architecture review, postmortem, tradeoff analysis, or challenges to assumptions. This is a reasoning review, not a deterministic vault health check or repair workflow.
Detect and use the official Obsidian command-line interface for read-only vault access; use for wiki-cli, Obsidian CLI, Obsidian read, Obsidian search, vault transport, which transport, transport detection, backlinks, tags, or Obsidian command line. Mutations always go through the claude-obsidian transaction core.
Create a bounded, extractive, structurally idempotent rollup of recent Obsidian wiki log entries, with dry-run preview by default and one optional transaction apply. Use for manual log compression without modifying child pages. Triggers: fold the log, run a fold, run wiki-fold, log rollup, roll up log entries, commit the fold.
Read or configure the vault filing methodology and suggest destinations for planned knowledge creation under Generic, LYT, PARA, or Zettelkasten. Use for wiki mode, methodology mode, what is my vault mode, set vault mode, switch to PARA, use LYT, Zettelkasten setup, change mode, configure mode, or methodology routing. This skill does not save content or migrate notes.
Answer an explicitly vault-scoped question from an Obsidian wiki without changing it. Use when the user selects the vault as the evidence source: query the wiki, query quick, query deep, explain from the wiki, summarize the vault, find in wiki, search the wiki, or based on the wiki. Do not route ordinary general-knowledge questions here.
Build and query a vault-local contextual BM25 retrieval index with optional multilingual Nomic cosine reranking; use for retrieve, hybrid retrieval, BM25, rerank, contextual retrieval, chunk search, vault search, semantic search, find relevant passages, or retrieval diagnostics. Derived caches stay under .vault-meta, remote egress requires explicit consent, and unavailable reranking falls back deterministically.
Plugins overview
<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 & WSL</a> </p> claude-obsidian is a local-first knowledge system for Claude Code and compatible [Agent Skills](https://agentskills.io) 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.  - **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 ```bash 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 ```bash 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: ```bash 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](docs/install-guide.md#adopt-an-existing-vault). ### 3. Start from the vault Open the new directory in Obsidian, then run Claude Code from that directory with the local plugin: ```bash cd "$HOME/Documents/MyKnowledgeVault" claude --plugin-dir /absolute/path/to/claude-obsidian ``` Start with: ```text /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 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](docs/install-guide.md). ## 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 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](skills/wiki/references/operation-transactions.md), [provenance contract](skills/wiki/references/provenance.md), and [Compound Vault architecture](docs/compound-vault-guide.md) 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
What people ask about claude-obsidian
What is AgriciDaniel/claude-obsidian?
+
AgriciDaniel/claude-obsidian is plugins for the Claude AI ecosystem. 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. Based on Karpathy's LLM Wiki pattern. It has 14.8k GitHub stars and its last recorded update is dated 2026-09-10.
How do I install claude-obsidian?
+
You can install claude-obsidian by cloning the repository (https://github.com/AgriciDaniel/claude-obsidian) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is AgriciDaniel/claude-obsidian safe to use?
+
Our security agent has analyzed AgriciDaniel/claude-obsidian and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains AgriciDaniel/claude-obsidian?
+
AgriciDaniel/claude-obsidian is maintained by AgriciDaniel. The last recorded GitHub activity is dated 2026-09-10, with 20 open issues.
Are there alternatives to claude-obsidian?
+
Yes. On ClaudeWave you can browse similar plugins at /categories/plugins, sorted by popularity or recent activity.
Deploy claude-obsidian to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/agricidaniel-claude-obsidian)<a href="https://claudewave.com/repo/agricidaniel-claude-obsidian"><img src="https://claudewave.com/api/badge/agricidaniel-claude-obsidian" alt="Featured on ClaudeWave: AgriciDaniel/claude-obsidian" width="320" height="64" /></a>More Plugins
Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.
AI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
Academic Research Skills for Claude Code: research → write → review → revise → finalize
Agent skill that removes signs of AI-generated writing from text
A skill to stop your coding agent from burying the answer. ADHD-friendly output.
Create beautiful slides on the web using a coding agent's frontend skills