I connected Claude Code to my Obsidian vault two weeks ago. Now I can't stop thinking about what we've built together.
Two weeks ago, I connected Claude Code to my Obsidian vault.
Now I can’t sleep.
Not in a bad way. The good kind. The kind where your mind keeps working at 2am because you’re excited about what you’re building. I’ve never felt that from a tool before. Not once.
So I need to show you what I built. Because this setup has completely changed how I think about AI.
But first, I need to explain the problem. Most people using AI every day are hitting it and don’t even know it.
Every time you open ChatGPT or Claude, you start from zero.
You explain who you are. What you’re working on. Your audience. Your tone. Your goals. You get a decent answer. You close the tab. Next time you open it? Same thing. All over again.
The AI doesn’t know you.
And because of that, the output is always generic. Always.
I’ve spent years tweaking prompts. Trying different structures. Adding context windows. Watching the output get marginally better and wondering why it still feels like talking to a stranger who forgot everything I said five minutes ago.
Most people blame the prompt. But that’s not the problem. Context is everything. Generic context produces generic results. You can spend weeks perfecting your prompts and still get mediocre answers if the AI has no idea who you are, what you’re building, or what you’ve already created.
Claude and ChatGPT both have memory features. They were supposed to fix this. They don’t.
Here’s why: those systems save arbitrary snippets automatically, without your control. No hierarchy. No organization. No way to know what the AI is or isn’t remembering. It mixes your projects together. Remembers the wrong details. Creates noise.
At its worst? Your AI inserts references from your 2am journaling session into your next business proposal. That’s not a system. That’s an approximation of one.
What if you stopped going to the AI?
What if you put the AI inside your system instead?
When Claude Code opens inside your Obsidian vault, it reads your notes. Your projects. Your context. Your writing rules. It knows who you are from the first prompt in every single session.
You don’t re-explain anything.
And it gets smarter every time you use it.
That’s the shift. That’s everything.
The setup I’m using combines two tools: Obsidian and Claude Code.
Obsidian is where my second brain lives. Claude Code is the AI agent that lives inside it. Together, they create an intelligent system that reads, writes, and acts on my behalf.
Obsidian is free. No subscription required. Your files live on your computer as a local folder of plain markdown files. You own your data. Nobody else does.
The markdown format is universal. Any app can read it. AI reads it natively. Unlike Notion, Evernote, or OneNote, there’s no proprietary format. You’re not locked into anything. Even if Obsidian disappeared tomorrow, your files would still be there, readable by any text editor on earth.
But here’s what makes Obsidian powerful for this setup: direct file access. Notion stores your data in a format that isn’t cleanly accessible to external AI. With Obsidian, Claude reads your files directly. No API calls. No workarounds. You and the AI work in the same folder simultaneously, in different interfaces, with the same context.
Claude Code is a genuine agent. It doesn’t just answer questions. It reads, writes, and modifies files. It executes terminal commands. It can launch sub-agents to parallelize work across your vault.
Two things make it exceptional for this use case.
First, it reads a CLAUDE.md file and a memory.md file at every startup, automatically, before anything else. Second, it has full access to your file system in whichever folder you open it in, with persistent context across every conversation.
It’s also extendable via MCP (Model Context Protocol) to connect to external tools. I’ll explain that later.
To use Claude Code, you need to open it in your terminal.
I know what you’re thinking. You saw “terminal” and almost closed this article. I almost did too, honestly. The first time someone mentioned running commands in a terminal, I pictured Matrix-style green text scrolling endlessly and immediately checked out.
But here’s what actually changed my mind: the terminal isn’t as scary as it looks. It’s just an interface that lets you run commands and navigate your computer with text instead of clicks. Every click you make on your screen is a command the terminal could run. Claude Code can do all of that, plus everything you can’t reach by clicking.
The visual interfaces (Claude.ai, apps, wrappers) are limited by design. They don’t give Claude full access to your file system. The terminal removes that limitation. And that’s where the real power lives.
The barrier to entry is genuinely low. Three commands. That’s it.
You don’t need to become a developer to use the terminal. You need exactly three commands:
pwd - tells you which folder you’re currently in. Run it and you’ll see your current location in the file system.
ls - lists all files and subfolders in the current directory. If you opened the Finder and looked at the same folder, you’d see exactly the same thing.
cd “[folder-name]” - navigates into a folder. And cd .. - takes you back one level up.
That’s it. Three commands. Everything else, Claude handles.
There are two ways to do it.
The first: open your terminal, use cd to navigate until you’re inside your Obsidian vault folder, then type claude. That’s all it takes.
The second, and easier one: find your vault folder in Finder, right-click on it, go to Services, and select “New Terminal at Folder.” Your terminal opens directly inside the vault. Type claude and you’re in.
From that moment, Claude is inside your system. It reads your context immediately. It knows your folder architecture, your projects, your writing rules. It knows more about your setup in the first prompt than most collaborators would after a week of onboarding.
Here’s where things get interesting.
Once you’re comfortable launching Claude Code in your vault, there’s another layer worth adding: the Obsidian CLI. It’s a separate tool that lets you interact with Obsidian directly from the terminal. Combined with Claude Code, you essentially have two AI-powered systems working in the same folder.
The Obsidian CLI (usually installed as obs or ob) handles Obsidian-specific operations: creating notes, searching across your vault, opening files in your default Obsidian window, and managing your vault without touching the mouse.
Here’s what a typical workflow looks like for me:
obs new daily/2026-02-28
This creates today’s daily note in my vault, ready for journaling. No clicking through folders. No finding the right template. Just a command and you’re writing.
obs find "subconscious"
This searches every note in my vault for the word “subconscious” and returns matching filenames. Fast. No opening Obsidian, no ctrl+shift+F, no waiting for the search index to catch up.
obs open daily/2026-02-28
This opens a specific note in the Obsidian app itself—useful when I want to read something in the full Obsidian interface with plugins, graphs, and visuals.
Now here’s where it gets powerful: combine the Obsidian CLI with Claude Code in the same workflow. I can ask Claude to research a topic across my vault, then have it create a new note using the Obsidian CLI, populate it with synthesized insights, and then open it in Obsidian for my review. One conversation, two tools, zero clicking between windows.
The setup is simple:
npm install -g obsidian-cli
Or if you’re on Mac and use Homebrew:
brew install obsidian-cli
Run obs --help to see what’s available. The commands are intuitive: obs new, obs find, obs open, obs list. You won’t need a manual.
Some people ask why bother with the CLI when Claude Code can already read and write files. Fair question. The answer is speed and muscle memory. The CLI is faster for things you do constantly—creating daily notes, quick searches, opening specific files. Claude is better for complex tasks—synthesizing ideas, writing long-form content, running multi-step workflows. Together, they cover the full range.
I use the Obsidian CLI multiple times every day. It’s become as automatic as checking email. The terminal is my operating system now, and Obsidian is just another tool living inside it.
What transforms Claude Code from a useful tool into a genuine second brain is the context system. Specifically, two files: CLAUDE.md and memory.md.
Your context lives in your files, not in AI memory. That’s the key insight. With Claude Code, your context is readable, editable, and fully structured markdown that you control. Everything Claude knows about you is stored in files you can open, read, and modify at any time.
Claude reads CLAUDE.md at every session startup, automatically, before anything else. This file is where you store everything Claude needs to know: who you are, your current projects, your folder architecture, your writing rules, your preferences, your guidelines.
Claude can update this file as you work together. If it does something you don’t like, you tell it: “Update your CLAUDE.md so you don’t make that mistake again.” After five sessions, Claude knows your projects, your voice, your standards, and your preferences better than most human collaborators would.
You can even do what I call meta-optimization: ask Claude how it would restructure the CLAUDE.md file to be even more efficient, then let it update the file itself. You can also ask it what information it still needs to do its best work, and have it run through a series of questions to fill in the gaps. The context compounds the more you invest in it.
You can place CLAUDE.md files at multiple levels of your vault. I have one at the root that covers my entire system architecture, and individual CLAUDE.md files inside specific folders I use frequently. When Claude navigates into those folders, it reads the local context file automatically.
The memory.md file is where Claude records key decisions, patterns, and actions after each session. It gives Claude continuity across conversations and allows it to pick up exactly where you left off.
If you have to stop in the middle of a project, you tell Claude to save everything it needs for next time into its memory. The next time you open Claude and pick up that project, it remembers your progress, your decisions, and what you were building toward.
Ask Claude to update memory.md at the end of each session. Over time you’ll have a detailed log of everything you’ve built together, every rule you’ve established, every decision you’ve made.
Here’s what this means in practice.
Use Claude Code once and it knows your folder structure. Use it five times and it knows your projects, your current focus, and your voice. Use it twenty times and it becomes your personalized operating system. It knows more about your knowledge base than you consciously remember at any given moment.
The more you use your second brain, the smarter your AI becomes. Automatically. That’s the power of this entire setup.
I’ve been running this setup for two weeks. In those two weeks, it has fundamentally changed the way I work. Here are the use cases that matter most.
My Zettelkasten system has around 316 permanent notes. Claude navigates all of them.
The tasks it handles for knowledge management would have taken me hours before. It can update tags across hundreds of files after a taxonomy change, completing in minutes what used to take an entire afternoon. It finds notes that should be linked to each other but aren’t. It creates new permanent notes from literature notes: reading my highlights, synthesizing the core concept, formatting the note correctly, and linking it to existing connected notes. And it surfaces thematic connections across years of notes instantly, finding clusters of ideas I had forgotten I’d written about.
Here’s a real example: I can open Claude Code and type “find me five permanent notes in my vault about opensaas and Wasp Lang.” Claude searches my file system, reads the relevant files, and returns five permanent notes with sources and summaries in seconds. Entirely through a natural language request.
Before Claude writes anything, it launches sub-agents that scan my vault. It finds related notes, past newsletters on the topic, previous content pieces, and existing outlines. The result is that content gets built on everything I’ve ever thought and written, not from a blank page.
The outline for this article? Built using exactly this workflow.
Here’s what happened: I asked Claude to find five permanent notes about the subconscious mind, then asked it to write a newsletter using those notes, following my writing style, with a classic AIDA structure. Two minutes later, Claude produced a complete draft: proper metadata, title, subject line suggestions, preview text, key takeaways, and the full email, all formatted exactly as I format my newsletters. The prompt I wrote was barely two sentences.
That’s what it feels like when your AI has already read everything in your knowledge base before you even ask it to create something.
This is where the system becomes exponentially powerful.
Every workflow you build with Claude Code can become a repeatable command. Here’s how it works: you run a workflow with Claude, then at the end of the session you ask it to write an SOP (Standard Operating Procedure) for the process. You save that SOP as a skill file. From that point on, you type /skill-name in the chat and the entire process runs automatically.
Every workflow becomes a permanent, callable command. The system grows in capability the more you use it.
After completing the newsletter workflow, I asked Claude to turn it into an SOP and create a skill file. Two minutes later, Claude wrote a complete agent definition (identity, context, eight steps, checkpoints, good and bad output examples), created the skill file, and linked everything together. A workflow that required manual effort every time became a single command.
Now at the end of every productive session, I ask Claude to create a new SOP and skill based on what we just did. Over time, my skill library grows into a personal automation system built entirely around how I actually work.
Claude Code doesn’t have to stay limited to your local vault. With MCP (Model Context Protocol), you can connect it to external tools and services.
MCP is a standard that lets Claude Code communicate with external apps and APIs in real time. Without it, Claude only sees your local vault. With it, Claude can read from and act on your other tools as part of the same workflow.
The entire setup costs around $20 per month. That’s it.
Obsidian is free. Claude Pro is approximately $20/month. The MCP servers I use are free and self-hosted on my computer.
To understand why this is exceptional value, you need to understand how most AI productivity tools work. They charge you a subscription fee and then bill API usage on top. They make margin on the API tokens you consume. Per-token billing costs significantly more per session than a flat subscription. With Claude Pro, you get substantially more usage for $20 than you’d get paying equivalent API costs through another app.
The Notion comparison is worth spelling out clearly. A lot of people built their second brain in Notion, and for years I did too. The problem with Notion is that you spend more time maintaining the system (databases, views, templates, relations) than actually using it. And when you want to connect AI, you run into the proprietary format problem: Notion’s data isn’t cleanly accessible to external AI, and you end up locked into Notion’s own AI offering, which comes with a margin.
With Obsidian: plain text files. Claude maintains your context automatically. You don’t configure anything. You just work.
I want to be straight about what this setup is and what it demands from you.
The context is persistent, readable, and grows automatically with every session. It works with your existing Obsidian vault immediately, the day you install Claude Code. It’s extendable via MCP, custom skills, sub-agents, and web browsing. It’s the cheapest high-power AI setup available. And every piece of context the AI has about you is stored in plain markdown files you can read, edit, and fully control at any time.
If at any point Claude’s understanding of you feels off, you open the CLAUDE.md file, fix it, and that’s the end of it. Full control, all in plain text.
Terminal comfort is not optional. The visual Claude.ai interface is weaker because it doesn’t give Claude full system access. That’s a structural limitation, not a bug. The power lives in the terminal, and if you want the power, you have to go there.
That said, it’s genuinely not as difficult as it looks. Invest a few hours getting comfortable with pwd, ls, and cd. Practice opening folders in the terminal. Within a week, it won’t feel foreign anymore. The discomfort is short. The capability is permanent.
The initial setup takes time as well: writing a solid CLAUDE.md, organizing your files into your vault, running the first calibration sessions to get Claude properly aligned with your system. But here’s the workaround: you can literally dump all your files into an inbox folder and ask Claude to organize them for you according to your system. You can even point it to YouTube videos and ask it to build the folder structure according to a methodology you like. Because Claude can write files and create folders, it can build the system for itself.
Finally, the setup is less effective if your primary knowledge base lives in a proprietary format like Notion or Evernote. You need local markdown files for the full experience. That said, via MCP, Claude can access content stored in other tools and import it into your vault if needed. There are always workarounds.
You now understand the most powerful AI setup I’ve found for creators.
The foundation is simple: context beats prompts . Always. When your AI knows your folder structure, your projects, your voice, your writing rules, and your entire knowledge base, the quality of its output changes completely. The setup compounds: every session makes Claude more useful, more personalized, and more aligned with how you think and work.
Here’s how to implement this starting today:
Install Obsidian (free). If you already have a vault, open it.
Install Claude Code. Open your terminal and run npm install -g @anthropic-ai/claude-code. It will prompt you to link your Anthropic account. That’s all the setup it needs.
Navigate to your Obsidian vault in the terminal. The easiest way: right-click your vault folder in Finder, go to Services, and select “New Terminal at Folder.”
Type claude to launch Claude Code inside your vault.
Ask Claude: “Read my vault structure and write a CLAUDE.md file for me.” From that first session, your AI has context. You’re in.
If you want to skip the setup and start with a system already built, there are vault templates available with the full folder structure, CLAUDE.md template, note templates, skill examples, and everything you need ready to import into Obsidian.
Try it. See what a difference it makes when your AI actually knows you.