Tutorial: Obsidian Knowledge Base with Claude Code

Learn how to build a lightweight, markdown-based personal knowledge base in Obsidian that Claude Code can query without a vector database or embeddings. Following Andrej Karpathy's published design, you'll organize notes into a structured vault hierarchy, configure a CLAUDE.md traversal file, and ingest web pages automatically with the Obsidian Web Clipper. The result is a low-cost, privacy-first knowledge retrieval system you can run entirely from your terminal.


1

Build a Markdown-Native Knowledge Base with Obsidian and Claude Code

Andrej Karpathy’s knowledge base design replaces vector databases and embeddings with a structured folder of plain markdown files — queryable by Claude Code in a single session. After following these steps, you’ll have a personal knowledge base that ingests web pages, PDFs, and markdown automatically, then answers natural-language questions through Claude Code’s terminal. No infrastructure to provision, no retrieval pipeline to maintain.

Karpathy's original post: 'The LLM has been pretty good about auto-maintaining index files and brief summaries of all the documents' — the design principle behind this entire system.
Karpathy’s original post: ‘The LLM has been pretty good about auto-maintaining index files and brief summaries of all the documents’ — the design principle behind this entire system.
  1. Download Obsidian from obsidian.md and run through the installer. When prompted, designate a local folder as your vault — name it something unambiguous like vault so Claude Code can navigate to it without confusion.

  2. Open Claude Code in a terminal pointed at your vault directory. Claude Code treats the vault as its working directory for all subsequent commands, giving it direct read/write access to every markdown file in the folder tree.

  3. Paste the provided scaffold prompt into Claude Code. It generates three top-level directories — raw/, wiki/, and output/ — along with a _master-index.md inside wiki/ that tracks every topic folder the LLM creates over time.

The vault is divided into three zones: raw/ (your inbox for unprocessed content), wiki/ (the LLM-maintained knowledge domain), and output/ (query results and reports).
The vault is divided into three zones: raw/ (your inbox for unprocessed content), wiki/ (the LLM-maintained knowledge domain), and output/ (query results and reports).
  1. Create a CLAUDE.md file at the vault root using the provided template. This file defines how Claude Code traverses the knowledge base — which folders to read first, how to format wiki notes, and when to update index files — so every session starts from a consistent operating model.

  2. Install the Obsidian Web Clipper Chrome extension from obsidian.md/clipper. The extension converts any web page into a markdown file and saves it directly to your vault.

  3. Inside Obsidian, open Settings → Community Plugins → Browse and search for Local Images Plus. Install and enable it. Without this plugin, the Web Clipper saves images as external URLs that break offline; Local Images Plus downloads them into an attachments folder inside the vault.

Install these Obsidian community plugins to power the knowledge base: Excalidraw for diagrams, Local Images Plus for offline media, and New 3D Graph for vault visualization.
Install these Obsidian community plugins to power the knowledge base: Excalidraw for diagrams, Local Images Plus for offline media, and New 3D Graph for vault visualization.
  1. Right-click the Web Clipper extension icon and open its options. Find the Note location field and change the value from Clippings to raw. Every page clipped from this point forward lands directly in the staging inbox.
Configure the Web Clipper template: set Note location to your raw/ folder path so every clipped page lands directly in your vault's inbox, ready for the LLM to process.
Configure the Web Clipper template: set Note location to your raw/ folder path so every clipped page lands directly in your vault’s inbox, ready for the LLM to process.
  1. Clip a web page and confirm the note appears in raw/ with images embedded locally. You can also drop PDFs or existing markdown files into raw/ manually — Claude Code treats any file format in that folder as raw input.

  2. Ask Claude Code to generate a wiki on a topic. Point it at raw/ for existing research and specify whether it should supplement with its own web search. Claude Code reads the raw files, synthesizes the content, and writes structured notes into the appropriate wiki/ subfolder.

A processed wiki note for Karpathy's AutoResearch: the LLM distills a raw source into structured sections — What It Is, The Loop, The 3 Files, Real Results — ready for instant querying.
A processed wiki note for Karpathy’s AutoResearch: the LLM distills a raw source into structured sections — What It Is, The Loop, The 3 Files, Real Results — ready for instant querying.
  1. After wiki generation, verify that both wiki/_master-index.md and the topic-level _index.md have been updated with one-line summaries of the new notes. If either file was skipped, add an explicit index-maintenance rule to your CLAUDE.md.

  2. Query the knowledge base with a natural-language question about any covered topic. Claude Code reads the master index first, navigates to the relevant topic folder, and synthesizes an answer from the notes it finds — the 1M-token context window means the entire vault is available in a single session.

Claude Code opens directly inside your vault folder. With Opus 4.6's 1M-token context window, the entire wiki is available in a single query — no vector database needed.
Claude Code opens directly inside your vault folder. With Opus 4.6’s 1M-token context window, the entire wiki is available in a single query — no vector database needed.

How does this compare to the official docs?

The video delivers a working system grounded in Karpathy’s published design, but several key details — the CLAUDE.md traversal rules, scaffold prompt structure, and plugin configuration — come from the creator’s own templates rather than Obsidian’s or Anthropic’s official documentation, which is exactly what Act 2 examines.

Here’s What the Official Docs Show

The video builds a functional, well-reasoned system. Act 2 adds what official sources confirm, flags the steps documentation doesn’t cover, and surfaces one configuration detail worth knowing before it costs you time.

1. Download Obsidian

The video’s approach here matches the current docs exactly. Obsidian is available for macOS, Windows, and Linux from obsidian.md. The docs state explicitly: “Obsidian stores notes privately on your device — no one can read them, not even us.” That privacy guarantee is the architectural reason this local-first design works as a RAG alternative.

obsidian.md confirms cross-platform download and device-local storage with no third-party read access.
📄 obsidian.md confirms cross-platform download and device-local storage with no third-party read access.

2. Open Claude Code in your vault

No official documentation was found for this step — proceed using the video’s approach and verify independently.

One prerequisite the video skips: Claude Code CLI is billed by API token consumption, not by a claude.ai subscription tier. The Free, Pro, and Max plans shown at claude.ai cover the web interface only. Confirm your billing model at docs.anthropic.com/en/docs/claude-code before you start.

claude.ai/code rendered the general login page — not Claude Code CLI documentation. CLI setup and API billing details live at docs.anthropic.com/en/docs/claude-code.
📄 claude.ai/code rendered the general login page — not Claude Code CLI documentation. CLI setup and API billing details live at docs.anthropic.com/en/docs/claude-code.

3. Scaffold raw/, wiki/, and output/ via prompt

No official documentation was found for this step — proceed using the video’s approach and verify independently.

4. Create CLAUDE.md at the vault root

No official documentation was found for this step — proceed using the video’s approach and verify independently.

5. Install Obsidian Web Clipper

The video’s approach here matches the current docs exactly. The primary CTA at obsidian.md/clipper is “Add to Chrome,” but a visible “More browsers” option confirms support for Firefox, Safari, and others — the video describes it as Chrome-only.

obsidian.md/clipper confirms the extension is available for Chrome and additional browsers; the free, open-source extension ships with YAML front-matter templating out of the box.
📄 obsidian.md/clipper confirms the extension is available for Chrome and additional browsers; the free, open-source extension ships with YAML front-matter templating out of the box.

6. Install Local Images Plus

No official documentation was found for this step — proceed using the video’s approach and verify independently.

“Local Images Plus” does not appear in the default sort view at obsidian.md/plugins across multiple scroll positions. The in-app path the video specifies — Settings → Community Plugins → Browse, then search by name — is the correct and fastest route; it’s the only path that enables one-click install directly into your active vault.

obsidian.md/plugins confirms 2,749 community plugins exist; Local Images Plus does not surface in the default sort and requires a name search to locate.
📄 obsidian.md/plugins confirms 2,749 community plugins exist; Local Images Plus does not surface in the default sort and requires a name search to locate.

7. Route clipped pages to raw/

No official documentation was found for this step — proceed using the video’s approach and verify independently.

One clarification from the Web Clipper docs: the template has two distinct settings — Note location (the save folder) and category (a YAML front-matter property). The “Clippings” value visible in the demo panel is the default category tag, not a folder path. As of April 4, 2026, you need to update the Note location field specifically to route clipped pages into raw/; changing only the category label will not redirect the save destination.

Web Clipper demo panel shows 'category: Clippings' as a YAML front-matter property — a separate setting from the Note location folder field.
📄 Web Clipper demo panel shows ‘category: Clippings’ as a YAML front-matter property — a separate setting from the Note location folder field.

8. Clip a page and verify

The video’s approach here matches the current docs exactly. The Web Clipper supports Articles, Academic papers, References, and custom templates, all saved directly to the vault. The docs also document a highlight-and-clip mode — select text or images on a page before clipping — that captures partial content rather than full articles, a capability the video doesn’t cover but worth knowing for targeted research capture.

obsidian.md/clipper confirms supported content types including custom templates and one-click vault delivery.
📄 obsidian.md/clipper confirms supported content types including custom templates and one-click vault delivery.

9–12. Generate wiki, verify indexes, query via Claude Code

No official documentation was found for these steps — proceed using the video’s approach and verify independently.

For Claude Code CLI context window behavior, CLAUDE.md syntax, and file-system access specifics, consult docs.anthropic.com/en/docs/claude-code directly — the steps in this section depend entirely on CLI capabilities that the captured screenshots did not document.

  1. Obsidian — Sharpen your thinking — Official homepage; download Obsidian for macOS, Windows, or Linux and review local, offline-first storage guarantees.
  2. Obsidian Web Clipper — Multi-browser extension for clipping web pages directly to your vault; free, open source, with YAML front-matter templating and custom save-folder routing.
  3. Plugins — Obsidian — Browsable community plugin directory listing 2,749+ plugins; use the name search field to locate Local Images Plus.
  4. Claude Code — General Claude web interface and subscription tiers; Claude Code CLI documentation, installation instructions, and API token billing details are at docs.anthropic.com/en/docs/claude-code.

Like it? Share with your friends!

1

What's Your Reaction?

hate hate
0
hate
confused confused
0
confused
fail fail
0
fail
fun fun
0
fun
geeky geeky
0
geeky
love love
0
love
lol lol
0
lol
omg omg
0
omg
win win
0
win

0 Comments

Your email address will not be published. Required fields are marked *