runningApr '26 to now
Second brain
A git-backed folder of plain markdown that Claude reads at every session start, files new notes into and maintains.
Why I built itI kept re-explaining my context and pasting notes into AI chats, so I moved my notes into a folder Claude reads first.
- My second brain started in Notion, separate from the AI chats I worked in.
- Projects in ChatGPT and Claude let me share saved information between chats. I still copied context in by hand.
- After some months of coding, I moved it to markdown in git (Apr '26). Claude maps, stores and retrieves my notes with a single prompt.
- Git gives search, history and a diff for every change Claude makes.
- A weekly sweep archives what is done, because notes pile up and nothing removes them by default.
- Status
- running
- When
- Apr '26 to now
- Type
- Personal system, markdown in git
- My role
- Solo, with Claude as the interface
The product question
Can one folder of plain text be the memory for my whole life and work, with Claude as the interface?
Scope
- Apr '26 to now
- from the first commit in the vault to today
- 5 top-level folders
- the PARA layout: inbox, projects, areas, resources, archive
- 1 template
- the same structure shipped empty in the toolkit, with no personal content
What I tried
I wanted one place that holds what I know and what I decided, so that no session with Claude starts from zero.
- The vault is a git repo of markdown files in PARA folders: inbox, projects, areas, resources and archive. It covers my work and my personal areas.
- Claude reads it at every session start. It files new notes into the right folder and keeps the indexes current.
- Memory is a folder of one-fact notes, each with a Why and a How to apply.
- Logs are append-only. Routines run the weekly review and the sweeps.
- A voice file holds how I write. A Drive map points to the binary files that do not belong in git.
- Notes pile up and nothing removes them, so the weekly review and the archive sweep carry the system.
Decision timeline
Started the vault as a git repo of markdown in PARA folders.
Rebuilt the Claude setup around it: one memory folder under git, a short global instruction file and the rule that each fact has one home.
Turned the structure into an empty template for the toolkit. It holds no personal content.
Questions I asked along the way
Where should Claude's memory live?
- Option rejected
- A memory folder per repo plus one per machine. The old setup had two memory directories, so the same fact could sit in both.
- What happened
- Memory moved to one folder inside the vault, under git, with an index capped at 80 lines. The folder sits outside
.claude/because Claude Code asks before every write to a.claudepath.
How much should load at the start of every session?
- Option rejected
- Keeping the old stack, which loaded about 11,100 tokens before I typed anything.
- What happened
- The rebuild cut it to about 1,800 tokens. A rule stays only if it answers a failure I saw twice.
Can one file summarise another, or mirror it?
- Option rejected
- A mirrored copy of a file in a second repo, with nothing to keep the two in step.
- What happened
- The rule is one fact, one home: no file summarises another. A mirror exists only with a pre-commit guard that fails when the copies differ.
What happened
Running. Claude reads the vault at the start of each session, files into it and keeps it in order.
- The pieces that hold up are the ones with a fixed place: a memory note with a Why, a log that only grows, an index per folder.
- The pieces that rot are lists someone must remember to update, so the template keeps volatile state out of the instruction file.
What I took from it
- One fact, one home. No file summarises another, so nothing needs two edits to stay true.
- Files state the current conclusion. History lives in git, so a reader gets the answer and the log is one command away.
- The template and a ten-minute setup are on the Second brain tool page.