How Obsidian Became My Second Brain; and Fixed My Messy AI Habit

I use AI tools every day, for things that have nothing to do with each other. One week it’s a publishing pipeline, the next it’s a Twitter monitor that catches airline disruptions, the next something completely unrelated. For a long time my “system” was no system: open a new chat, do the thing, move on. It worked fine until it didn’t.

These days all of that lives in Obsidian. It’s become my second brain. In this post I’ll show how it works, share the small commands that do the heavy lifting, and answer two questions I had myself: does it matter which AI model writes the notes, and is any of this locked to one AI tool?

The Messy Way I Used to Work

Here’s a pattern a lot of people fall into. You open one chat for a project and keep it running for weeks, compacting it every few messages. That’s the feature where the AI summarizes the conversation so far so it can keep going without hitting the length limit.

If that works for you, let it be. For me, it wasn’t the best option. I had unrelated things running at once, so I ended up with dozens of separate chats instead. And that’s where it fell apart:

  • I’d lose track of which chat had which conversation.
  • Sometimes I couldn’t find the right one, so I’d re-explain the whole backstory from scratch.
  • Sometimes I’d forget a chat existed at all and later make a decision that quietly contradicted something I’d already worked out weeks earlier.

None of this was the AI’s fault. My work just doesn’t fit into one long thread, and pretending it did was never going to work.

The Obsidian Second Brain Engine

Building an Actual Second Brain

The idea isn’t mine. I first saw it in something Andrej Karpathy described: instead of letting your chat history become a graveyard of disconnected conversations, keep a living wiki that the AI both reads from and writes to. I built my own customized version of it in Obsidian.

The short version: every session gets distilled into small, focused notes, one idea per note, written to stand on its own; and those notes link to each other. Obsidian itself is just a nice viewer over a folder of plain text files, which matters more than it sounds. I’ll come back to that.

Never used Obsidian? Setup is genuinely two minutes.

Download it free from obsidian.md (no account needed), open it, click “Create new vault” or “Open folder as vault” if you already have a folder of notes. Pick a location on your computer (or shared cloud folder), done. That’s the whole install. Everything in this post is just text files inside that folder; Obsidian’s job is to display them nicely and let you click between them.

 

The vault has a simple shape:

My Notes · Vault Structure
My Notes/
         ├── rules.md      # the rulebook the AI follows every session
         ├── index.md      # every note, listed by category
         ├── log.md        # append-only history of what the AI did
         ├── raw/          # original files I feed in (articles, PDFs) never edited
         └── wiki/
             ├── sessions/  # one note per AI conversation
             ├── sources/   # one summary note per file in raw/
             ├── concepts/  # ideas and methods
             ├── entities/  # people, tools, companies
             └── syntheses/ # good answers filed back in as notes

The rulebook is the heart of it. It tells the AI what each folder is for, what a note looks like, and most importantly, the rules for writing them. The AI reads it at the start of every session, so every session plays by the same rules.

The Capture Command

This is the part that makes the whole thing sustainable, so it’s worth spelling out. If you copy one thing from this post, copy this!

At the end of a session I type one command: /capture. In Claude Code that’s a “slash command,” which is nothing fancier than a text file with instructions the AI runs when I call it. Mine tells the AI to write a session note (what we did, what we decided, what’s next), distill the reusable ideas into their own notes, link everything together, and update the index and the log. No transcripts. The raw chat stays in the tool, the vault only gets the distilled version.

The one rule that matters most, I actually learned while writing this post. I asked Claude to review my own capture prompt, and it found a gap: my instruction said “any reusable idea gets its own note.” Sounds fine, but “any” gives the AI no bar to clear. And I know because it happened: when I then audited the whole vault, I found encyclopedia stubs: a note explaining a 1945 invention, pages restating my own rulebook. All from day one, before the rule existed. Useless. The AI already knows all of that. So the rule became:

The bar every note must clear: it records something specific to me – a decision, a preference, a constraint, a fact about my setup -* that a fresh AI wouldn’t already know. General knowledge never gets a note. Each session produces zero to four notes, and zero is fine.
*(not an em dash, added by a human!)

Here’s a generic version of my capture instructions you can steal:

capture.md · Steal This Prompt
When I run /capture:

1. Write a session note in wiki/sessions/YYYY-MM-DD-topic.md:
   what we did, decisions made (each with its one-line why), next steps,
   open threads.

2. Distill atomic notes, selectively. An idea only gets its own note if:
   a) it's specific to me, a decision, preference, constraint, or fact
   about my setup that a fresh AI wouldn't already know (general knowledge
   never gets a note), AND
   b) I'll plausibly need it again outside this session.
   Check index.md first. Update an existing note instead of creating a duplicate.
   Most sessions produce 0–4 notes. Zero is fine.

3. Cross-link the session note and the atomic notes to each other.

4. Update index.md and append one line to log.md.

5. Distilled notes only, never a transcript.

Doesn’t this blow up the AI’s context?

Attaching my vault makes the notes accessible, not automatically loaded. The AI uses an index to find and read only the few notes relevant to each question, so the cost depends on the question, not the vault’s size.

Capture Isn’t the Only Way In

Capture is the daily habit, but the vault runs on four commands, and they’re all just saved prompts:

Command What it does When it runs
/capture Distills the session into linked notes: what we did, what we decided, what’s next End of every session
/ingest Reads a file dropped into raw/, writes a summary note, links it to everything related When knowledge arrives as a file, not a chat
/query Answers “what do my notes say about X?” with links to the notes behind the answer Whenever I need to check something before deciding
/lint Scans the whole vault for contradictions, stale claims, duplicates, and orphan notes Monthly, on a schedule and it only reports

 

Ingest deserves the extra word, because it’s for knowledge that lives in a file instead of a conversation. The AI reads the file, writes a summary note, and connects it to every related note. The original never gets edited, so any claim in the wiki can be traced back to where it came from. I’ve mostly used it for meeting notes (mine come out of Granola, an AI notetaker), but anything you can save as text qualifies:

  • The Slack thread where a decision actually got made,
  • An email back-and-forth with a vendor,
  • A report someone sent you,
  • An article you want to keep.

If it matters and it’s text, it can join the brain.

Query has a side effect I didn’t expect to like this much: good answers get filed back in as notes of their own, so even asking questions makes the wiki richer.

And lint is the health check. The audit that found my day-one encyclopedia stubs was exactly this. I’ve now put it on a monthly schedule, and it only reports; I stay the one who approves fixes.

The pattern is the same every time: the vault is the thing that lasts, and each command is just a text file telling the AI how to maintain it.

What’s Worth Feeding It

Once ingest clicks, you start seeing candidates everywhere. Meeting notes are the only ones I’ve made a habit of so far. The rest of this list is where I see it going, at work and at home.

Where What to feed it Why it earns a place
Work Project docs at handoff: PRDs, briefs, specs Ingest them when a project starts, and the vault knows the requirements for every future session about it
Work Post-mortems and incident writeups The “why did this break and what did we decide” knowledge that otherwise gets re-learned the hard way a year later
Work User research: interviews, surveys, support tickets Each one is a file; the wiki accumulates what customers keep saying across all of them
Work Data you analyzed once The spreadsheet isn’t the value, the verdict is: “we checked this in March, the answer was no, here’s why”
Work Onboarding packs Feed in the key docs on day one and your AI is caught up before you are
Personal Contracts and policies: lease, insurance, warranties “Does my policy cover X?” becomes a question you ask, not a PDF you hunt for
Personal Books and courses Chapter notes that link into everything else you know, instead of a highlights file you never reopen
Personal Podcast and YouTube transcripts The two useful ideas from a 90-minute episode, captured, linked, and findable

 

The filter is the same one capture uses: feed it things whose conclusions you’ll need again, not things you could re-Google. A Slack thread qualifies because the decision inside it exists nowhere else. A generic tutorial doesn’t; any AI can regenerate it on demand.

Keep in mind this is curated memory, not a data warehouse; most sessions add zero to four notes, and general knowledge never gets a page because the AI already knows it. Missing data isn’t a failure here, it’s just noise.

What Actually Changed

Not that I stopped forgetting things, I still do. It’s that forgetting stopped mattering. Whatever I’m working on, the AI pulls from the whole wiki, not just the one conversation I happen to be in (in practice: whichever project I start a session in, I attach the vault folder too, so it’s always in reach). And a few times now it has reminded me of something I’d forgotten myself – a decision I’d made, a reason I’d ruled something out – before I repeated the same mistake. That’s the part that sold me.

“It’s not ‘AI with memory.’ It’s an assistant that’s actually caught up on my life.”

Does the Model Even Matter?

I use a strong model (Opus or Fable) for the session itself, the thinking part. But capturing is a separate step. Does it need an expensive model too, or is a cheaper, faster one like Haiku or Sonnet good enough?

Short answer: cheaper is usually fine, because it’s a different kind of task.

Step Model tier Why
The session, the actual work Strong (Opus, Fable) This is where the thinking happens: working through the problem, making the decisions
The capture, the write-up Cheap and fast (Haiku, Sonnet) Capturing isn’t thinking, it’s noticing: what mattered, what’s worth keeping, how to say it in one clean sentence

 

Two caveats. Very long sessions can bury the one detail that mattered, and a weaker model is more likely to flatten it into something generic. And connecting new notes to the right existing ones takes a better grasp of everything already in the wiki. So my rule: best model for the work, cheap model for the write-up, as long as your capture instructions are specific about what deserves a note. If the notes start reading flat and generic, that’s your signal to bump the model back up.

Is This Claude-Only?

No! And this is my favorite property of the whole setup.

The vault is a folder of plain markdown files. No database, no plugin doing magic, nothing tied to one vendor. Any AI tool that can read and write files on your computer can maintain it: Claude Code, OpenAI’s Codex, Antigravity 2.0, Cursor, pick yours. The only Claude-specific detail in my setup is a filename: Claude Code automatically reads a file called CLAUDE.md at the start of every session, so that’s what my rulebook is named. Other tools have their own equivalent (many read AGENTS.md), or you simply tell them “read rules.md first.”

Same goes for the capture command. A “slash command” sounds tool-specific, but it’s literally a prompt saved in a text file, and every serious tool now has some way to save reusable prompts. Worst case, keep the capture instructions as a note inside the vault itself and end your sessions with “open capture.md and do what it says.”

The one setup that doesn’t work well: browser-only chatbots with no file access. They can read whatever you paste, but they can’t maintain the vault for you and the maintenance is the whole point.

This is also the quiet argument for doing it at all.

“Chat history is locked inside each tool, switch tools and you lose it. The vault is yours. Models will keep changing; the folder of notes just keeps compounding.”

If You’re Thinking About Doing This

You don’t need Obsidian specifically. The real shift is small: stop treating AI conversations as disposable, and start treating each one as an entry in something that grows. Everything else is plumbing.


If you build something similar, I’d like to hear how you’re doing it, reach out.