Back to blog

Wednesday, April 8, 2026

Don't Build a Second Brain. Build a Database.

cover

This is not a normal "how to build a second brain" tutorial.

I kind of hate the term, even though it is annoyingly catchy.

The core idea is good: take information, ideas, and experiences out of your biological brain and put them into some external persistent system. That is useful. It has always been useful.

But the AI era changes the architecture.

The second brain idea is not wrong

I like the older traditions here.

The Zettelkasten idea is still powerful. Luhmann did not treat his slip box as storage. He treated it as a communication partner. The system had structure, and the structure made it possible to think with.

That is the part worth preserving.

The mistake is assuming that the right substrate is still a pile of notes, files, or folders.

If your only user is you, markdown files can be enough. If your main thinking partner is an AI agent with a context window, you need to think differently.

LLMs are stateless

The thing most people misunderstand is memory.

Language models do not remember you in the human sense. They do not wake up with a persistent model of your life, your projects, and your half-formed thoughts.

There is a context window.

Every turn, the system prompt, recent messages, retrieved snippets, tools, and user input get assembled and passed through the model. The model predicts what should come next.

The experience feels continuous because the product wraps it in a chat interface. Underneath, the actual question is much more mechanical:

What context is being put in front of the model right now?

That is why "memory" features are mostly scaffolding. A provider extracts facts, stores them in its own database, and injects some of them back into the context window. Useful, but not magic.

And not yours.

Own the database that fills the context window

If the architecture is a context window, then your leverage comes from owning the context that fills it.

That is why I think personal knowledge management should move toward local structured databases.

The goal is not to make a prettier note app. The goal is to create a corpus that both you and your agents can read from and write back to.

You want the flywheel:

  1. You add useful source material and ideas.
  2. The agent retrieves the right context before acting.
  3. The agent does better work because it understands the relevant background.
  4. Important outputs, decisions, and insights get written back.
  5. The next interaction starts from a stronger base.

That is a different design problem from "where do I put my notes?"

Why a database beats a folder

Files and folders are simple. That is their strength.

But as soon as people try to make them agent-native, they usually reinvent a worse database.

They add backlinks. Then metadata. Then indexes. Then scripts. Then retrieval. Then sync rules. Then a giant instruction file telling the agent how to interpret the mess.

At that point, just use a database.

A local SQLite database gives you tables, indexes, structured fields, and relationships. It can stay on your machine. It can be copied. It can be queried by humans and agents. It can support full-text search, vector search, and ordinary exact lookup without forcing everything into one flat note format.

Most importantly, it makes relationships explicit.

In RA-H, the main objects are nodes and edges. A node might be a book, podcast, idea, person, project, or conversation. An edge explains how two nodes relate.

That matters because the connection is often the point. An idea came from a source. A project contradicts a previous assumption. A person is relevant to a community. A podcast changed how you think about a topic.

The model needs that structure.

Atomic units of context

The basic unit should not be a file.

The basic unit should be an atomic unit of context.

One idea. One source. One person. One project. One decision. One insight.

Each unit needs a clear title, an explicit description, source material where useful, and meaningful edges to the rest of the graph.

This is a forcing function for you as much as it is a retrieval system for the agent. If you cannot explain what a thing is and why it belongs, it probably should not be dumped into the graph yet.

The goal is not to shortcut thinking. The goal is to reduce friction around the parts that machines can help with: extracting, summarizing, indexing, retrieving, and connecting.

Build the communication partner for the agent era

The old second brain metaphor was already a bit off.

You are not building a second brain. You are building an external context engine. A thing you can think with. A thing your agents can query. A thing they can update when something important happens.

That is why the database matters.

Not because SQL is spiritually superior to markdown. Because the working surface is changing. More of your work is going to move through agents, and agents need a context substrate that is structured enough to be useful.

You can still write. You can still keep notes. You can still have long source documents.

But underneath, the durable layer should be owned, queryable, and explicit.

That is the argument behind RA-H.

Try the Mac app, use the open-source repo, or read the earlier open-source setup walkthrough if you want to build it yourself.

Do not build a second brain.

Build the database your agents can actually use.