Back to Library
Stage 02 / Build

Build your Mini Cairns.

Stand up your own student-scale Cairns second-brain in about 45 minutes. Five L1 waypoint files, an L2 Chain of Density Card Catalog Layer card folder, an L3 raw folder, and three skills that do the writing. It is not the production Cairns. It is enough to learn the real pattern and start compounding from the first source you feed it.

What you'll have
  • A working second-brain vault on your computer with the full L1, L2 Chain of Density Card Catalog Layer, L3 folder skeleton, day-one personal waypoint files seeded, and an AGENTS.md contract sitting at the root so any agent that opens the folder knows the read order.
  • Three skills wired and ready the cairns-ingest skill writes new sources into the vault, cairns-query answers from it, and cairns-lint audits it for drift. Same three skills that run the production vault, scaled down.
  • A daily ritual you can keep a three-minute end-of-day pass on your L1 waypoints and an as-needed capture flow. Small enough that two weeks in, the vault is right more often than wrong.
4D Build
Build time ~45 min build
Track 4D required, 8D extensions optional
Touches Obsidian · Cairns · L1 / L2 Chain of Density Card Catalog Layer / L3 · /cairns-ingest · /cairns-lint
Source guides/cairns/04-build-your-own-mini-cairns.md
One-click start

Build this with Claude.

Hand the build off to Claude in one paste. Claude reads the guide and the agent contract, then walks you through each step, pausing for your confirmation between steps.

How this fits in the OS.

Depends on

Obsidian (or any markdown editor) installed on your computer, Claude Code wired up from onboarding, and a chosen home for your vault. Defaults to ~/Documents/second-brain/ on macOS and the Documents folder on Windows. No accounts, no API keys, no external services.

Uses

Plain markdown files, the day-one waypoint templates from templates/obsidian-cairns-starter/, and three Cairns skills installed locally. The vault is yours, on your computer, fully portable.

Unlocks

The ingest, query, and lint flows all assume a vault that matches this shape. Once it exists, every later card in the Cairns family writes into the same skeleton you build here.

What you'll build.

A vault folder on your computer with the Cairns three-tier skeleton in it, an agent contract at the root, day-one personal waypoint files already seeded, and three skills installed that drive the loop from here on. The whole thing is markdown. No database. No server. No accounts to create.

Be honest about what this is. It is a student-scale demo, not the production Cairns. The production version has a full Librarian service, vector search (a way for the agent to find similar text without exact keyword matches), graph storage, and multi-agent routing. Yours has none of that. That is fine. You are not building the system. You are learning the shape so the production version makes sense when you add layers later.

Two directions, name them upfront

Cairns has a read direction and a build direction, and they go opposite ways. The agent reads top-down: L1 waypoints first, L2 Chain of Density Card Catalog Layer (Card Catalog Layer for short) cards next, L3 raw only when needed. You build bottom-up: the folders first, then the day-one waypoints, then the skills that fill in L2 Chain of Density Card Catalog Layer and L3 as you capture sources. Naming both directions upfront so the next 45 minutes does not feel like it is going the wrong way.

What changes for you.

The folders are the easy part. The bigger thing is how you start treating capture, recall, and standing context. Three internal shifts you should expect to feel in the first two weeks:

  • You stop opening a blank chat to think. The waypoint files become the place you check first when you sit down. The agent's working memory loads from them before you say a word, so the conversation starts already grounded in your active projects, your people, and your open decisions.
  • You start trusting that yesterday is still there. Raw evidence is preserved at L3 before any summary runs. Dense cards at L2 Chain of Density Card Catalog Layer point back to the raw. Six months from now, when you want to know what was actually said in a call this Tuesday, the verbatim is on disk where the agent can read it.
  • You stop hoarding folders for every interesting thing. Five L1 categories is a cap, not a target. The discipline forces you to choose, and the choosing is the value. Most things do not need to live in your standing memory.

Two weeks in, the vault is right more often than wrong. That is the moment the second brain becomes load-bearing instead of decorative.

Before you start.

Three things specific to this build

  • Obsidian installed (or a markdown editor you actually like). Obsidian is the recommended editor because it opens any folder as a vault and the link graph helps later, but the vault is plain markdown and nothing in the build depends on Obsidian-specific features.
  • A vault location chosen. Default is ~/Documents/second-brain/ on macOS and the Documents folder on Windows. If you want it somewhere else (Dropbox, iCloud, a synced folder), pick the path before you start so the skills get pointed at the right root.
  • The Cairns skills installed. Easiest path is running /personalize from onboarding and answering yes to the "Scaffold your personal Cairns vault now?" prompt. If you skipped that, the manual install is in templates/obsidian-cairns-starter/README.md. The skills land under ~/.claude/skills/.

The build.

Six steps. Folders first, day-one waypoints next, skills last, then a smoke-test capture and a lint pass. Each step has a duration and a recovery line. The skills do most of the writing; your job is to pick categories that match your life and approve what the agent proposes.

Step 01

Confirm the skills are installed

~3 min

Three skills run this vault: /cairns-ingest for capture, /cairns-query for read-back, and /cairns-lint for audits. Confirm they are present before you build the folders. If /personalize ran during onboarding and you said yes to the vault scaffold, the skills are already in place.

Paste into Claude Code

List the skills under ~/.claude/skills/ that start with cairns-. I'm expecting to see cairns-init, cairns-ingest, cairns-query, and cairns-lint at minimum. Report back what's there and what's missing.

The agent does this for you. You do not poke around the skills folder by hand. Claude lists what is there and tells you what to install if anything is missing.

Skills missing? Run /personalize and answer yes to the vault scaffold prompt, or follow the manual install in templates/obsidian-cairns-starter/README.md. After installing, restart Claude Code so the skill list refreshes.
Step 02

Scaffold the vault folders

~5 min

The skeleton is small. L1 for waypoints, L2 Chain of Density Card Catalog Layer for dense cards, L3 for raw evidence, plus a few capture and output folders. Build it from the starter template so the AGENTS.md contract and the day-one waypoint files come along for the ride.

Paste into Claude Code

Copy the contents of templates/obsidian-cairns-starter/ in my local workshop repo into my vault root. Default vault root is ~/Documents/second-brain/, confirm that path with me before copying. Rename the gitignore.template to .gitignore after the copy. Then read the resulting folder back to me so I can see what landed.

After Claude finishes, you should see this shape under your vault root:

~/Documents/second-brain/ ├── AGENTS.md ├── CLAUDE.md ├── cairns/ │ ├── L1/ │ │ ├── INDEX.md │ │ └── personal/ │ │ ├── my-self.md │ │ ├── my-style.md │ │ └── my-tools.md │ ├── L2/ │ │ ├── cards/ │ │ └── decisions/ │ └── L3/ │ ├── articles/ │ ├── notes/ │ ├── transcripts/ │ └── decisions/ ├── inbox/scratchpad/ ├── decisions/ ├── daily-briefs/ ├── meeting-prep/ └── daily-reviews/
Files copied to the wrong location? Tell Claude the actual vault root path explicitly and ask it to move the misplaced files. The skills key off the vault root, so getting this right matters more than getting it fast.
Step 03

Pick your five L1 categories

~10 min

L1 is the always-on layer the agent loads at the start of every session. Five files. Not sixteen. The cap is the point. Pick five places in your life where you keep losing context. Some pairs that work for most people:

  • work-builds.md for active projects you are shipping (status, blockers, decisions in flight)
  • people.md for names, roles, last interaction, what you owe them
  • decisions-in-flight.md for open decisions (options, deadlines, stale after a day or two)
  • reading-list.md for what you are reading (thesis, the one takeaway you want to keep)
  • brand-voice.md for how you write (words you use, words you do not)

A small business owner running two offers might swap brand-voice.md for offers.md. A freelancer might use clients.md instead of people.md. A parent with a side build might add family.md. Pick what matches your actual life.

Keep each file under 400 characters until you have a reason to grow it. The cap forces selectivity. Without it, every file eventually contains everything.

Paste into Claude Code

I want to pick my five L1 waypoint categories. Ask me about my active work, my people, my open decisions, what I'm reading, and any other recurring area where I keep losing context. Then propose five filenames under cairns/L1/personal/ that fit my life. Don't write the files yet, just propose the names and what would go in each.

The agent does this for you. You answer five short questions in plain English. The agent proposes the filenames and a one-line description of what belongs in each. You confirm or swap before any file is written.

Step 04

Seed each waypoint file with one line

~10 min

A waypoint with nothing in it is invisible to the agent. Seed each file with one real line so the L1 layer has signal on the first session. The shape that works: a header, then one to three short bullets per item. Example for work-builds.md:

work-builds.md seed shape

# Work, Builds

- Mini Cairns vault (in progress, 45-min build, blocked on nothing)
- Client X CRM build (kicking off next week, scope doc drafted)
- Personal site rewrite (paused, picking back up week of June 2)

Do the same for the other four files. One real line per active item. If you cannot think of three items for a category, write one and stop. The L1 layer compounds when you keep it honest, not when you fill it for the sake of filling it.

Paste into Claude Code

Walk me through seeding each of my five L1 waypoint files. For each file, ask me what's currently active in that area and write one line per item. Use the day-one frontmatter shape from templates/obsidian-cairns-starter/cairns/L1/personal/my-self.md. After each file is written, show me what landed so I can confirm before moving to the next.

Can't think of anything to write for a category? The category is probably wrong for you. Swap it. The right categories are the ones where you can write one honest line today.
Step 05

Capture one real source through /cairns-ingest

~10 min

The vault is wired. Now feel it work. Pick one real source you actually want to remember: an article that shifted how you think about something this week, a transcript from a recent call, a paragraph from a paper, a Slack thread, a URL, a voice memo. Not a test file. The point of the first run is to feel the shape of structured capture.

Paste into Claude Code

/cairns-ingest

The skill will ask what you want to ingest, classify the source, write the complete source to cairns/L3/<type>/ first (raw, verbatim, no summarization), then generate a dense card at cairns/L2/cards/ using the chain-of-density technique, then propose an L1 waypoint update only if the source changes your standing context.

The agent does this for you. You describe the source in one sentence. The agent classifies it, writes the raw, drafts the dense card, and proposes the waypoint. You read what landed and approve, edit, or rerun. You never write the dense card by hand.

Skill not found? Either the install in Step 01 did not land or you need to restart Claude Code so the skill list refreshes. Rerun the install command from templates/obsidian-cairns-starter/README.md and restart Claude Code.
The agent tried to write L1 silently? Stop. That violates the contract. Ask the agent to show you the AGENTS.md file at the vault root and re-read the Human Approval Gate section. Then rerun the step. Standing memory only updates with your explicit approval.
Step 06

Run /cairns-lint and read the report

~5 min

Lint is the audit pass that keeps the vault honest as it grows. On a fresh vault with one captured source, the report should be almost clean. Run it now anyway, so you see the shape of what lint flags.

Paste into Claude Code

/cairns-lint

The lint pass checks for weak L1 waypoints (too long, too vague, stale), missing L2 Chain of Density Card Catalog Layer cards, broken backlinks from L2 Chain of Density Card Catalog Layer to L3, and route-map drift in the L1 INDEX. The first run usually surfaces one or two minor issues. Fix what looks worth fixing, ignore what is noise on a vault this small.

If you see the L3 raw, the L2 Chain of Density Card Catalog Layer card, the L1 file you seeded, and a mostly-clean lint report, your Mini Cairns is live. The vault will compound from here. Every source you ingest from this point on lands in the same shape.

The agent contract.

Every Mini Cairns vault ships with an AGENTS.md file at the root. Any agent that opens the folder reads this contract before doing anything else. It is short, it is load-bearing, and the whole architecture rests on the third section.

Query order (the read pattern)

  1. Read cairns/L1/INDEX.md first.
  2. Open the relevant L1 personal waypoints.
  3. Open linked L2 Chain of Density Card Catalog Layer cards, or search cairns/L2/ if no link.
  4. Open raw L3 files only when exact evidence is needed.
  5. Cite the L1, L2 Chain of Density Card Catalog Layer, and L3 paths used in the answer.

Ingest order (the write pattern)

  1. Save the immutable source text under cairns/L3/ first.
  2. Create one L2 Chain of Density Card Catalog Layer card using the chain-of-density contract.
  3. Link the new card back to one or more L1 waypoints.
  4. Propose an L1 update only when the source changes durable context.
The human approval gate (the load-bearing rule)

Agents may write L2 Chain of Density Card Catalog Layer and L3 freely during ingest. Agents must ask before updating L1 unless you explicitly delegate that authority. This is the hinge of the whole architecture. L2 Chain of Density Card Catalog Layer cards and L3 raw can be regenerated if they go sideways. L1 is your always-on memory, loaded at the start of every session, and it shapes how every later answer comes out. Letting an agent quietly write to L1 is letting it edit your standing context without consent. The contract pins this in writing so any agent reading the vault knows the rule before it acts.

When it works.

You will know the vault is real when these five things hold after one week of light use:

  1. The folder skeleton matches the map above. L1, L2 Chain of Density Card Catalog Layer, L3, day-one waypoints, AGENTS.md at the root, three Cairns skills installed.
  2. Your five L1 files have honest content in them. Not empty, not padded. One to three real lines per active item. Updated when something resolved.
  3. You ran /cairns-ingest on a real source at least once. The L3 raw is verbatim. The L2 Chain of Density Card Catalog Layer card is dense and cites the L3 path. The L1 layer either got a proposed waypoint you approved or it stayed unchanged on purpose.
  4. You can open a fresh Claude Code session in the vault folder, ask "what am I shipping this week?", and the agent answers from your L1 waypoints without you restating context. That is the compounding test. The agent's working memory loaded from the vault.
  5. The end-of-day ritual takes you three minutes. Open decisions-in-flight.md first, then work-builds.md, update or close what resolved, done. If it takes longer, the L1 files have drifted long and lint will tell you next pass.

Hit all five and the vault is doing its job. Two weeks of that and you stop wondering whether the second brain is worth keeping.

If you get stuck.

Common failure modes, ranked by how often they bite people on the first build:

  • You picked sixteen categories instead of five. Most common first-time mistake. The cap is the discipline. Cut back to five. Add a sixth or seventh only when you find yourself force-fitting items into the existing five for a week running.
  • Your L1 files are empty. Empty waypoints are invisible to the agent. One real line per active item, written today, beats a perfect structure with nothing in it.
  • The skill cannot find your vault. The vault path was ambiguous and the skill guessed wrong. Tell the agent explicitly: "the vault root is <your path>, use that for every Cairns skill from now on." Save that in your CLAUDE.md so future sessions inherit it.
  • An L1 file got updated without your approval. The contract was violated. Stop. Open the AGENTS.md at the vault root and re-read the Human Approval Gate section to the agent. Confirm the rule before continuing. If it keeps happening, the skill spec drifted and needs to be reinstalled from templates/obsidian-cairns-starter/.
  • You are ingesting more than ten sources a day. You are ready to graduate from manual /cairns-ingest runs to a real Flow capture pipeline. The Mini Cairns shape was built for hand-driven capture. Crossing ten a day is the signal to add an ingest daemon.
  • You are ingesting less than five sources a week. Your categories are probably wrong for your actual life. Re-pick. Five categories that match the work you are doing this month, not the work you wish you were doing.

Still stuck? Post the prompt, the agent's response, and what you expected, in the workshop Slack. Someone in the cohort is solving the same thing.

Where to go next.

You have the vault. The skills are wired. The contract is in place. The compounding starts when you keep using it. The natural next moves on the shelf:

Back to the Library