Brain Vault — Structural Breakdown
gbrain v0.42.74 · source “default” · 11 Aug 2026

What is actually in the Brain vault

2,441 pages across 17 directories. But only 270 of them were written by you — the other 89% is imported reading and machine-generated scaffolding. The complexity you are feeling is almost entirely one layer.

At a glance

Disk and index agree to within one file — the extra is today's untracked daily note.

2,441live pages indexed
2,442.md files on disk
20 MBvault size
16page types in use
4,247extracted facts
1,378graph links
6,894embedded chunks
28git commits, 0 remotes
Git history does not live in the vault. Brain/.git is a 44-byte pointer to ~/.gbrain/brain.git (15 MB), deliberately outside iCloud so iCloud cannot corrupt git internals. The files are backed up by iCloud; the history is on this machine only.

Composition — this is the whole answer

Every page falls into one of three classes. Sorting by that, rather than by type or directory, is what makes the vault legible.

Machine-derived — 1,353 pages Imported reading — 818 pages Authored by you — 270 pages
ClassWhat it isPagesShare
Machine-derived atoms, entity stubs, concepts, receipts — written by gbrain, not you 1,353
Imported reading all of media/ — Readwise highlights and transcripts 818
Authored notes, ideas, diary, projects, writing, events 270
Total2,441

Of the 270 authored pages, 21 are sandbox artifacts in treehole/ left over from agent testing — including a page called _fence-probe that is 18 characters long. Your genuine written corpus is closer to 249 pages, or 10.2% of the vault.

Pages per type

16 types in use, from a pack that declares 30. Colour marks the class each type belongs to.

TypeClassPagesShare
sourceimported81833.5%
atomderived50320.6%
productderived36715.0%
personderived2409.8%
companyderived1646.7%
diaryauthored682.8%
ideaauthored632.6%
conceptderived622.5%
projectauthored401.6%
writingauthored371.5%
noteauthored371.5%
eventauthored210.9%
productionderived120.5%
extract_receiptderived50.2%
analysisauthored20.1%
transcriptauthored20.1%
16 types2,441100%

Every directory, and what type lands there

Directory and type agree almost everywhere — the pack routes by path prefix. The two disagreements are worth knowing about.

DirectoryFilesTypes foundNotes
media/818source ×818Readwise imports — articles, videos, transcripts
atoms/503atom ×503Extracted insights, foldered by date
products/367product ×367Entity stubs
people/240person ×240Entity stubs
companies/164company ×164Entity stubs
life/87diary ×66, event ×21Your journal and calendar
ideas/63idea ×63Split out of the inventory yesterday
concepts/60concept ×60Synthesised clusters
projects/38project ×38Yours
writing/37writing ×37Yours
notes/23note ×22Yours — now mostly index pages
treehole/21note ×15, project ×2, diary ×2, transcript ×2Agent sandbox residue
productions/12production ×12Entity stubs
extracts/5extract_receipt ×5Import bookkeeping
wiki/2analysis ×2Near-empty
Daily Notes/2concept ×2Mistyped — should be diary
Captures/0Empty directory
17 directories2,442
Two disagreements. Daily Notes/ pages are typed concept rather than diary, because no pack prefix matches the capitalised, spaced directory name. And treehole/ scatters four real types across sandbox junk, so probe files are counted as your notes, projects and diary entries.

The entity layer — where the complexity actually is

783 pages, or 32% of the entire vault, are auto-created entity stubs. Every single one has zero prose: they exist only to hold a facts table.

783entity pages total
100%have no prose at all
384hold exactly one fact
734nothing links to them

How thin are they

Facts heldPagesShare
exactly 138449.0%
2–316120.6%
4–1021126.9%
11 or more273.4%

Half the entity layer is a page created because a name was mentioned once, holding one claim, referenced by nothing. That is what makes the vault feel sprawling when you browse it in Noto — the folders with the biggest counts are the ones with the least in them.

The 27 that earn their page

EntityFacts
people/eugene-chan165
products/claude-code43
companies/anthropic29
people/andrej-karpathy26
companies/openai23
products/chatgpt23
people/ali-abdaal22
products/openclaw20

Synthesis layers

What gbrain has produced on top of the raw pages.

LayerCountLives inState
Facts4,247markdown fences on entity pages2,769 (65%) attributed to a typed entity
Atoms503atoms/ as real pagesfrom only 170 distinct source pages
Concepts62concepts/ as real pagessynthesised clusters
Takes156DB + take fencesbootstrap still disabled
Links1,378derived indexsee graph below
Chunks6,894derived index0 unembedded
Jobs run1,326queue historyall time

Where atoms came from

Source directoryAtoms
media/483
treehole/17
notes/3
from 170 distinct pages503

Effectively all insight extraction has run against imported reading, not against your own writing. 17 atoms were mined out of sandbox test files.

The link graph points backwards

1,378 links. 82% of them originate on entity pages and point back at the sources they were extracted from — not from your notes out to the entities they mention.

Links originate fromLinks
product477
person372
company271
note101
idea84
source55
production12
project2

This is gbrain working as designed — provenance flows from the claim back to its evidence, which is what makes a fact auditable. You accepted this trade earlier. The consequence is that browsing from one of your notes will not surface the entities it discusses, and 734 entity pages have no inbound link from anywhere.

Pipeline coverage

How much of the corpus has been through each stage.

StageDonePendingReading
Embedded (has chunks)2,002439the 439 are almost all atoms — see findings
Facts extracted879every eligible page has been swept
Atom extraction170991draining on Sonnet 5 via autopilot
Link extraction2,296145the 145 are all atoms
Stale (edited since indexed)2watcher is keeping up
Tombstoned pages0no deletion debris

Findings

Ordered by what actually costs you something.

High435 of 503 atoms are unretrievable

They have no chunks at all — not unembedded chunks, no chunks. The extraction ran, spent LLM budget, and wrote 503 pages that search cannot return. The same 435 are the ones never link-extracted.

This is a different failure from yesterday's pricing bug (which left chunks present but NULL). Atoms are written by extract_atoms through a path that never chunked them. Fixable with a re-sync of atoms/; worth confirming before the remaining 991 pages drain and multiply it.

HighHalf the entity layer is single-fact orphans

384 pages hold exactly one fact; 734 have no inbound link. They are 32% of the vault and the main reason browsing feels heavy. They are not harmful — retrieval ignores them — but they dominate every folder listing you look at.

MediumGit history has no off-machine copy

28 commits in ~/.gbrain/brain.git, no remotes. Keeping it out of iCloud is the right call — iCloud corrupts git internals — but it means the only copy of your history is this Mac. The files themselves are safe in iCloud.

Mediumtreehole/ pollutes four real types

21 agent sandbox pages, including _fence-probe at 18 characters, are typed as note, project, diary and transcript. They inflate your authored counts and have already produced 17 atoms from test fixtures.

LowDaily Notes/ is typed as concept

Two pages. No pack prefix matches the capitalised, spaced directory name, so they fall through to concept instead of diary.

LowCaptures/ is an empty directory

Migration residue from Noto.

What I would actually cut

In order. The first item alone removes a third of what you see when you browse.

#ActionPages affectedCost of doing it
1 Stop materialising single-fact entities as pages. Keep the facts in the DB; only write a page once an entity has ≥2 facts or an inbound link. 384 a patch hunk; facts are unaffected
2 Delete treehole/ and exclude it from extraction. 21 nothing of yours is in it
3 Re-sync atoms/ so the 435 orphaned atoms become searchable. 435 one sync; makes prior spend actually useful
4 Add a git remote — a private repo, or a bare mirror on another disk. one command, removes a single point of failure
5 Fold Daily Notes/ into life/ and drop the empty Captures/. 2 trivial

Done in that order, the vault goes from 2,441 pages to roughly 1,600, with nothing lost but scaffolding — and the folders you actually open (ideas/, life/, notes/, projects/, writing/) become the majority of what you see rather than a rounding error.