Developer workflow
How I organize my technical knowledge: an Obsidian second brain operated with Claude Code
5 min read
How I organize my technical knowledge: an Obsidian second brain operated with Claude Code
Between work, a master's degree and side projects, I take a lot of notes: tickets I have solved, class notes, commands I will need again, prompts that worked. For a long time those notes were scattered and, in practice, write-only. What changed that was not a new app but a small set of rules, and an AI agent that applies them for me.
This is how the system works today.
The one principle: capture first, process later
The whole vault rests on separating capturing from processing. When I am in the middle of something, I do not decide where a note belongs. Deciding at capture time is exactly what kills the habit. Everything new lands in an inbox folder, unfiltered, and gets sorted later in a dedicated session.
The folder structure
The vault mixes two well-known ideas: PARA (projects, areas, resources, archive) for the big buckets, and Zettelkasten-style atomic notes for knowledge. Numbered folders keep the order stable:
| Folder | What goes in | Entry rule |
|---|---|---|
000 Inbox |
Everything new | Raw capture, no filtering |
100 Atomic |
External concepts | One idea per note, short title |
200 Insights |
My own conclusions | Title is a statement, prefixed with = |
300 MOCs |
Topic indexes | Created once a topic has 5+ notes |
400 Procedures |
SOPs and prompts | Reproducible steps |
500 Projects |
Work with an end date | Client and personal projects |
600 Areas |
Ongoing areas | Studies, work, personal |
700 Resources |
Reference material | Books, flashcard decks, diagrams |
900 Archive |
Finished things | Closed projects and courses |
The distinction between 100 and 200 matters most to me. An atomic note records what someone else said. An insight records what I concluded, and its title has to be an actual claim. If I cannot phrase it as a claim, it is not an insight yet.
Daily: ten minutes
- A daily note from a template, with the one key task of the day.
- During the day, every loose idea, link or snippet goes straight to the inbox, without thinking.
- In class or at work, raw notes go directly into the project or area folder. I do not try to write atomic notes live.
Weekly: the ritual that makes it work
Once a week, about thirty minutes, I work through a maintenance dashboard until its lists are empty:
- Empty the inbox. For each note: external concept →
100; my own conclusion →200; procedure →400; project material →500; reference →700. Anything worthless gets deleted. - The two-link rule. No note leaves the inbox without at least two links: one to its topic index (MOC) and one to a related note. A note that links to nothing is worth nothing.
- Frontmatter. Every note carries
type,area,createdandstatus. Status moves fromseed(just created) togrowing(reviewed and linked) toevergreen(consolidated). - Old seeds. A seed older than thirty days is either worked on or deleted.
Once a month I archive finished projects and create an index for any topic that has accumulated five or more notes without one.
Where Claude Code comes in
The vault has a CLAUDE.md file at its root describing the structure, the folder rules and the frontmatter conventions. Any Claude Code session opened in that folder already knows how the vault works, so I never have to explain it again.
On top of that, I defined a few custom commands for the recurring work:
| Command | What it does | When |
|---|---|---|
/procesar-inbox |
Classifies every inbox note, adds frontmatter and links | Weekly ritual |
/conectar |
Finds orphan notes and links them to related ones | Weekly ritual |
/destilar <notes> |
Turns raw class notes into atomic notes and insights | After each class |
Each command is just a Markdown file with explicit instructions. For example, the inbox command tells the agent to search for an existing related note before adding a link, to create an index only when a topic reaches five notes, and to propose deletions instead of deleting. The distill command reads my class notes, which use a small syntax (Concept :: definition, => insight, - [?] open question), creates or extends atomic notes, checks for duplicates first, and lists my open questions at the end so I can resolve them myself.
Rules for working with the agent
The part I consider most important is not technical:
- I capture, the AI structures. The agent classifies, links and formats. It does not write my insights. Those I write myself, because the act of writing them is where the learning happens.
- Always start the session at the vault root, so the instructions file is loaded.
- Review diffs. The vault is versioned with the Obsidian Git plugin; if the agent makes a large change, I check
git diffbefore accepting it. - Deletions need confirmation. It is written into every command.
Using the knowledge
A system like this only pays off if I actually go back to it. A few habits make that happen:
- Before a task I have done before, I open the procedures index and reuse the SOP instead of reinventing it.
- Before studying a topic, I open its index to see what I already know and where the gaps are.
- After a book or course, I write three to five insights. If I cannot write a single one, I did not really learn anything.
- I can also ask the agent to answer from my own notes: "what do I have about X?", or "compare how I implemented this content provider in my Android notes with the new exercise".
The plugins that actually matter
I had far more plugins installed than I used. The ones that do real work are: Templater (automatic frontmatter on new notes), Note Refactor (extract a selected concept into a new atomic note with a back-link), Omnisearch (check whether a note already exists before creating it), Dataview (powers the maintenance dashboard and the auto-generated sections of the indexes), Spaced Repetition (review cards written as Question::Answer inside normal notes) and Obsidian Git (automatic backup). My rule now is simple: a plugin I have not used in a month gets uninstalled.
What I would tell someone starting
Do not start with the tool. Start with two decisions: where raw captures go, and when you will process them. Everything else, including the AI agent, is there to make that weekly session cheaper. The agent is good at the mechanical parts: classifying, linking, formatting. The thinking stays with you, and that is on purpose.