I used Obsidian as a persistent brain for Claude Code and built a full open source tool over a weekend. happy to share the exact setup.
TL;DR Highlight
A development workflow sharing how someone used an Obsidian vault as Claude Code's persistent memory to ship an open-source tool in a weekend.
Who Should Read
Developers using Claude Code on long-term projects who need persistent context across sessions.
Core Mechanics
- By treating an Obsidian vault as a structured knowledge base, the developer gave Claude Code persistent memory of project decisions, architecture choices, and context that normally resets between sessions.
- The Obsidian vault structure (linked notes, tags, backlinks) maps well to how Claude Code consumes context — hierarchical and cross-referenced information is easier to navigate than flat documents.
- The workflow: maintain notes in Obsidian during development, export relevant notes as context at the start of each Claude Code session, update notes after each session with decisions made.
- The developer completed a weekend open-source project in roughly 12 hours of actual work, citing persistent context as the key factor in maintaining coherence across sessions.
- The approach works best for projects with many interdependent design decisions — for simple scripts or one-off tasks, the overhead isn't worth it.
Evidence
- The Reddit post included the actual Obsidian vault structure used, with example notes showing how architecture decisions were documented.
- Commenters noted this is essentially a more structured version of maintaining a CLAUDE.md file, with Obsidian's linking features adding value for complex projects.
- Several developers shared that they'd tried similar approaches with different note-taking tools (Notion, Roam) with similar results.
How to Apply
- Create an Obsidian vault for your project with notes for: architecture overview, key decisions (and why they were made), current state, and next steps.
- At the start of each Claude Code session, export the relevant notes to a context file and load it. The /memory command or CLAUDE.md can hold a pointer to the full vault.
- After each session, update your Obsidian notes with decisions made and new context. This investment pays off as the project grows.
- Use Obsidian's linking features to create a decision log — link related decisions together so you can feed Claude Code a coherent narrative of the project's evolution.
Code Example
snippet
# CLAUDE.md Template Example
## Project Overview
- Stack: Next.js 14, TypeScript, Drizzle, Turso
- Deployment: Vercel
## Coding Rules
- Components are always functional
- API routes go under /app/api/
## Memory Files
- Detailed context: ./obsidian-vault/context.md
- Work logs: ./obsidian-vault/logs/Terminology
ObsidianA local-first note-taking app that uses markdown files and supports bidirectional linking between notes — popular with developers for knowledge management.
Persistent MemoryContext or information that persists across Claude Code sessions, rather than resetting with each new conversation.
CLAUDE.mdA project-level markdown file that Claude Code automatically reads as persistent context for every session.