The Problem with a Good Memory System

A few months ago I built myself a 2nd Brain — a private cloud database that connects to Claude and remembers everything I tell it. My properties, my garden, my career accomplishments, my projects, my tasks. Every conversation with Claude starts with context. It's the single most useful AI upgrade I've made.

But here's the thing nobody warns you about: a memory system that captures everything is only as useful as your ability to retrieve the right thing at the right moment.

My 2nd Brain has hundreds of entries. Individual thoughts, tagged and searchable. That's powerful for precise queries — "what did I say about my Richmond triplex?" But when I start a fresh chat and want Claude to have a full, synthesized picture of, say, my entire real estate portfolio? It has to piece that together from dozens of separate entries. Every time. From scratch.

There had to be a better way.

· · ·

Enter the Wiki Layer

The idea comes from Andrej Karpathy — the AI researcher who proposed building a personal wiki where AI reads your raw notes, synthesizes across them, and produces organized reference pages that get smarter over time. I came across it via Nate Jones' newsletter, which sparked the question: what if I combined that idea with my existing 2nd Brain?

Here's the architecture I landed on:

2nd Brain (Supabase)
Permanent source of truth
Wiki Compiler (Claude)
Reads entries · synthesizes · writes
GitHub wiki/ folder
Compiled markdown pages
Any Claude chat
Instant context — automatically

The 2nd Brain stays as the permanent store. Everything still goes in there — every meeting note, task, research finding, garden event, property update. Tagged, searchable, queryable. It's the source of truth.

The wiki layer sits on top as a compiled view. A process where Claude reads from the structured 2nd Brain data, synthesizes across entries, and produces wiki pages — topic summaries, entity profiles, status reports. Think of it like a really good chief of staff who reads everything in your files and distills it into something you can actually browse.

"The database feeds the wiki. The wiki never contradicts the database. You query either one depending on what you need — a precise fact or a synthesized narrative."

— The design principle behind the hybrid system
· · ·

What Wiki Pages Look Like

Here are the pages I've built so far — each one compiled directly from my 2nd Brain entries:

🏠
realEstatePortfolio.md

Addresses of rental properties, contract renewal dates, tenant contact details, rents, renovation plans, repair and maintenance history, open action items — synthesized from dozens of individual entries.

💼
techAuditAccomplishments.md

Full STAR library — 5 accomplishments in structured format, Audit Executive's recommendation, full career history with metrics.

🌿
gardenInventory.md

30+ plants across 5 garden zones, botanical names, care notes, recent events, open identification tasks.

🧠
2ndBrainProject.md

Install history, milestones, all 16 installer gotchas, public infrastructure links, open tasks.

✍️
blogs.md

All published articles, full queued article list by series, content pillars, 50-post goal tracking.

📊
bookkeepingProject.md

Excel + Python bookkeeping system — tech stack, accomplishments built, Plaid integration status, open tasks.

Each page lives at a permanent raw GitHub URL — but you never need to paste those URLs manually. Here's how that works.

· · ·

Making Context Load Automatically

The first question anyone asks after building a wiki is the right one: "Do I have to paste the URL every time I want Claude to use it?" No. That would defeat the purpose.

The solution is a wiki index — a single master page that maps keywords to wiki URLs — combined with a Claude memory rule that watches for those keywords and loads the right page automatically.

Here's how the index is structured:

wiki/wiki-index.md — excerpt
### 🏠 Real Estate Portfolio
Keywords: real estate, rental, property, tenant, rent, renovation, triplex...
Raw URL: https://raw.githubusercontent.com/.../wiki/realEstatePortfolio.md

### 🌿 Garden Inventory
Keywords: garden, plant, backyard, blueberry, rose, fig, landscaper, mulch...
Raw URL: https://raw.githubusercontent.com/.../wiki/gardenInventory.md

The index lives in your GitHub wiki folder alongside your other pages. Then a single Claude memory rule does the rest:

🧠 Claude Memory Rule

When keywords appear in a conversation — garden, real estate, rental, resume, career, audit, bookkeeping, blog, Open Brain, MCP — fetch the wiki index, identify the relevant page, fetch that page, and use it as context before responding. Confirm: "I've loaded your [topic] wiki."

New chat: You mention "my Richmond property" or "my rose bush" or "my resume" and Claude recognizes the keyword, fetches the wiki index, loads the relevant compiled page, and begins the conversation already briefed. You never paste a URL.

Existing chat: You say "check the wiki" or "load my bookkeeping wiki" and Claude fetches it immediately. One command, instant context.

Here are the keyword clusters that map to each wiki page in my setup:

🏠 Real Estate

real estaterentalpropertytenantrentrenovationtriplexlandlordvacancy

🌿 Garden

gardenplantbackyardblueberrypruningfertilizerlandscaper

💼 Career

resumecareerSTARinterviewpromotionauditETAGWells Fargo

📊 Bookkeeping

bookkeepingExcelPlaidRentTrackerSchedule Ewf_import
· · ·

The Part That Made It Real

The first version of this wiki required copy/paste to update — I'd compile the markdown in Claude, download the file, then upload it to GitHub manually. Functional, but friction-y enough that I knew I'd stop doing it.

So I extended my 2nd Brain MCP server with a new tool: update_wiki. It takes a filename and markdown content, calls the GitHub API directly, and commits the updated file — all from inside a Claude conversation. No copy/paste. No browser. No manual steps.

Here's what it looks like when it runs:

MCP Tool Response — update_wiki
✅ Wiki page updated successfully.
File: wiki/gardenInventory.md
Commit: Recompile garden inventory via update_wiki MCP tool v1.2.0
Raw URL: https://raw.githubusercontent.com/.../wiki/gardenInventory.md

And the GitHub commit history confirms it — two commits on the same file, the second one written entirely by the MCP tool:

GitHub Commit History — wiki/gardenInventory.md
● Recompile garden inventory via update_wiki MCP tool v1.2.0 · May 18, 2026
● Add garden inventory wiki page · May 17, 2026

That second commit was written by Claude. Not by me. I just said "recompile my garden wiki" and it happened.

· · ·

One More Piece: Browser Connectors

The wiki system needs Claude to be able to fetch your wiki pages from GitHub — and that requires a web connector. The GitHub PAT we set up earlier handles writing to GitHub. For reading, Claude uses a separate web search/fetch connector.

Here are the three connectors worth enabling in Claude.ai → Settings → Connectors:

Brave Search
Web search

An alternative web search connector with strong privacy defaults. Useful if you want Claude to research topics without routing queries through Google. Works well alongside Tavily.

Google Drive
Personal documents

Connects Claude to your Google Drive files — spreadsheets, docs, presentations. Particularly useful for bookkeeping and work documents you want Claude to reference alongside your wiki.

How to add a connector

Go to Claude.ai → Settings → Connectors → click "Add connector" or browse the directory. Search for the connector by name, click Connect, and follow the authorization prompt. Most connectors connect in under a minute. After connecting, start a new chat — Claude will have access to the new connector immediately.

Tavily requires a free API key from tavily.com — sign up, copy your key, paste it into the connector setup. Google Drive and Brave Search use OAuth and require no API key.

· · ·

Before You Add a Wiki — You Need the 2nd Brain First

Prerequisites

Haven't set up your 2nd Brain yet?

The wiki layer runs on top of a working 2nd Brain. If you haven't set yours up, start there first. My free setup guide walks you through every step — even if you've never touched a database or terminal before.

Read the 2nd Brain Setup Story Get the Free Setup Guide

The wiki layer assumes you already have:

  • A working 2nd Brain (Supabase + MCP server + Claude connector)
  • Entries in your 2nd Brain tagged consistently by topic
  • A GitHub account (you already created one during 2nd Brain setup)
  • A GitHub repo where your wiki pages will live
  • Tavily connected in Claude.ai (handles wiki page fetching)
· · ·

How to Add the Wiki Layer

Step 1 — Create a wiki/ folder in your GitHub repo

In your GitHub repo (the one you use for your website, or create a new one), add a folder called wiki/. This is where all your compiled pages will live. Each page is a plain markdown file — garden.md, realEstate.md, whatever makes sense for your life.

1

Create the GitHub PAT (Personal Access Token)

Go to github.com/settings/tokens → Fine-grained tokens → New token. Name it open-brain-wiki-writer. No expiration or 1 year. Repository access: only your wiki repo. Permission: Contents = Read and Write. Generate and copy immediately — you won't see it again.

2

Store the token as a Supabase secret

In PowerShell from your open-brain project folder:

PowerShell
supabase secrets set GITHUB_TOKEN=github_pat_YOUR_TOKEN_HERE --project-ref YOUR_PROJECT_REF
3

Update your index.ts with the update_wiki tool

Add the GITHUB_TOKEN env var, two GitHub API helpers (getFileSha and writeFileToGitHub), and register the update_wiki tool. Bump the version to 1.2.0. The full updated index.ts is in the stonemonk2/OB1 GitHub fork.

4

Deploy the updated MCP server

Same deploy command as initial setup:

PowerShell
supabase functions deploy open-brain-mcp --no-verify-jwt --project-ref YOUR_PROJECT_REF
5

Create your wiki index and set the Claude memory rule

Create wiki/wiki-index.md mapping keywords to each wiki URL. Then go to Claude.ai → Settings → Memory and add a behavior rule pointing to the index URL with your keyword triggers. Claude will now auto-load the right wiki whenever those keywords appear.

6

Reconnect Claude and test

Settings → Connectors → disconnect and reconnect your 2nd Brain connector. You should now see update_wiki as one of your 7 tools. Start a new chat, mention a keyword from your index, and confirm Claude loads your wiki automatically.

· · ·

Compiling Your First Wiki Page

Once the tool is deployed and Claude's connector is refreshed, compiling a wiki page is a single conversation. Here's the exact prompt I use:

Prompt to Claude
"Search my 2nd Brain for everything tagged 'gardening' and compile a complete garden inventory wiki page. Include all plants by zone, care notes, recent events, and open tasks. Then write it to GitHub as gardenInventory.md with commit message 'Recompile garden wiki'."

Claude searches your 2nd Brain, synthesizes the entries, formats the markdown, and calls update_wiki to push it directly to GitHub. About 30 seconds. You get a confirmation with the raw URL and commit message — and the next time you mention your garden, Claude loads that page automatically.

⚠️ Important design rule

Never edit wiki pages directly. Always update the source entries in your 2nd Brain first, then recompile. If the wiki has an error, fix the source data and regenerate. The database is always authoritative. The wiki is always derived from it.

· · ·

Daily Habits That Keep the System Alive

The 2nd Brain + wiki system compounds over time — but only if you actually feed it. Here's the simple daily habit that makes everything work:

Capture when things happen. When a tenant calls about a repair, say "remember this" and describe it. When you plant something new, log it. When you nail an interview question, save the story. These small captures are the raw material the wiki compiles from. The more you put in, the richer your compiled pages become.

Recompile after real events. Don't recompile on a schedule — recompile when something meaningful has changed. After a renovation milestone, recompile your real estate wiki. After a gardening session, recompile the garden wiki. After a strong performance review conversation, recompile your accomplishments wiki. The wiki stays current because you decide when it's worth updating, not a timer.

⚡ Keep the database alive

Supabase free-tier projects pause after 7 days of database inactivity. Regular use — even a single "remember this" per week — keeps your database active and prevents pausing. If you're capturing things naturally, you'll never hit this limit. The keep-alive pings you set up during installation provide a safety net, but actual usage is the best protection.

The practical rhythm looks like this: capture throughout the week whenever something worth remembering happens, then at the start of a working session on a particular topic, say "recompile my [topic] wiki" and Claude produces a fresh, synthesized page from everything you've saved. That's it. No maintenance overhead beyond living your life and occasionally telling Claude about it.

· · ·

Why This Changes Everything

Before the wiki layer, starting a new Claude chat meant either re-explaining your context from scratch, or relying on Claude to piece together a picture from dozens of individual database queries. Both approaches work — but neither is fast, and neither feels like talking to someone who actually knows you.

With the wiki layer and keyword triggers, you just talk. Claude recognizes what you're discussing, loads the compiled context, and starts from a complete picture. Your garden wiki, your rental portfolio, your career accomplishments — all available automatically, without you managing any of it.

The compounding effect is what makes this powerful over time. Every time you add a new entry to your 2nd Brain and recompile a wiki page, the wiki gets smarter. Your garden wiki improves every time you log a new plant or pruning event. Your real estate wiki updates every time you note a tenant change or renovation milestone. Your career accomplishments wiki grows every time you capture a new STAR story.

The wiki doesn't just store your knowledge. It synthesizes it. And synthesis is where AI actually earns its keep.

"I said 'recompile my garden wiki' and Claude searched my 2nd Brain, compiled the markdown, and committed it to GitHub. I didn't touch a file. I didn't open a browser. It just worked."

— Scott Curtner, May 2026

Get Started

Ready to add a wiki to your 2nd Brain?

Start with the free 2nd Brain setup guide — then come back here for the wiki extension. The whole system is free to run, open source, and yours to own completely.

Get the Free Setup Guide →