Skip to content

Structure an Obsidian vault as a persistent AI knowledge base

pattern

AI agents lose all context between sessions with no structured way to give them persistent knowledge about your projects, people, and workflows

obsidianclaude-codemarkdownaiknowledge-management
17 views

Problem

AI coding agents like Claude Code start every session with zero context about your world. They don't know your team members, your architectural decisions, your preferred workflows, or the concepts you've been developing. Each session requires re-explaining the same context, wasting tokens and time. There's no standard way to build a queryable, persistent knowledge layer that agents can tap into across sessions.

Solution

Build a purpose-built Obsidian vault with a structured folder hierarchy, where each folder includes a CLAUDE.md file that tells the AI agent how to interact with that content.

Folder structure:

thinking-vault/
  00-inbox/          # Raw captures: tweets, articles, monologues, voice notes
  01-archive/        # Processed inbox items (moved after review)
  02-concepts/       # Structured notes: ai, development, leadership, ways-of-working
  03-people/         # Team members, network contacts, industry figures
  04-outputs/        # Generated content: daily-updates, linkedin, blog-posts
  05-reference/      # Templates, tools, companies, reusable snippets
  CLAUDE.md          # Root instructions for agents working in the vault

Per-folder CLAUDE.md example (02-concepts/CLAUDE.md):

# Concepts

This folder contains structured concept notes organized by domain.

## How to use this folder

- Each subfolder is a domain (ai, development, leadership)
- Notes use wikilinks to cross-reference related concepts
- When creating new notes, check for existing related concepts first
- Always add wikilinks to connect new notes to existing ones

Key principles:

  1. Everything is markdown with wikilinks -- agents can parse and follow connections natively
  2. Git sync to GitHub -- the AI auto-commits changes, merge conflicts are resolved using diffs
  3. Numbered prefixes -- enforce processing order (inbox -> archive -> concepts -> outputs)
  4. Semantic search layer -- add QMD (github.com/tobi/qmd) on top for AI-powered retrieval across the vault

Git sync setup:

# In your vault directory
git init
git remote add origin git@github.com:youruser/thinking-vault.git

# Auto-commit script (run via cron or Obsidian Git plugin)
cd /path/to/thinking-vault
git add -A
git commit -m "vault sync $(date +%Y-%m-%d-%H%M)" || true
git pull --rebase
git push

Why It Works

Obsidian vaults are plain markdown files in directories -- the simplest possible format for AI agents to read and write. The numbered folder structure creates a clear information lifecycle: raw captures land in inbox, get processed into structured concepts, and flow out as finished outputs. Per-folder CLAUDE.md files give agents behavioral instructions scoped to each content type, so the agent knows to treat 03-people/ entries differently from 02-concepts/ notes. Git backing provides version history, collaboration, and a sync mechanism that works whether you're editing from Obsidian, an AI agent, or a phone.

Context

  • Template available at github.com/aaronvanston/thinking-vault-template
  • Pairs well with QMD for semantic search over the vault (combines BM25 + vector search + LLM re-ranking)
  • The pattern works with any markdown-native AI tool, not just Claude Code
  • Voice capture workflows (e.g., dictation to inbox) make it easy to add knowledge on the go
  • Wikilinks create a graph structure that agents can traverse to find related context without loading the entire vault
About this share
Contributormblode
Repositorymblode/shares
CreatedFeb 10, 2026
View on GitHub