โ† Back to Notes & PKM
Notes & PKM by @codezz

brainrepo

Your personal knowledge repository โ€” capture, organize, and retrieve

0
Source Code

BrainRepo

Your personal knowledge repository. Capture fast, organize automatically, retrieve instantly.

Brain Location

Fixed path: ~/Documents/brainrepo/

This is not configurable. All brain data lives here.

First Run Check

Before any action, check if brainrepo is initialized:

  1. Check if ~/Documents/brainrepo/ exists with expected structure (Inbox/, Projects/, Areas/)
  2. If NOT found โ†’ Run onboarding automatically
  3. If found โ†’ Proceed with user request

Onboarding

Triggers automatically on first interaction, or when user says "set up brainrepo":

  1. Create brain at ~/Documents/brainrepo/
  2. Create the folder structure:
mkdir -p <path>/{Inbox,Projects,Areas/personal-growth,Areas/family,Notes,Resources,Journal,People,Tasks,Archive}
  1. Create initial files from templates in assets/templates/:

    • Tasks/index.md โ€” task hub
    • Areas/personal-growth/index.md โ€” personal growth area
    • Areas/family/index.md โ€” family area
  2. Initialize git (optional):

cd <path> && git init && git add -A && git commit -m "init: brainrepo"
  1. Confirm setup and show quick start commands

Core Concept

DUMP โ†’ PROCESS โ†’ RETRIEVE

  1. Dump โ€” Capture everything to Inbox/ (don't organize yet)
  2. Process โ€” Evening review: Inbox โ†’ permanent home
  3. Retrieve โ€” Ask AI to find anything

Repository Structure

brainrepo/
โ”œโ”€โ”€ Inbox/          # Quick capture (clear daily)
โ”œโ”€โ”€ Projects/       # Active work with deadlines
โ”œโ”€โ”€ Areas/          # Ongoing responsibilities (no deadline)
โ”œโ”€โ”€ Notes/          # Permanent atomic knowledge
โ”œโ”€โ”€ Resources/      # External links, articles, references
โ”œโ”€โ”€ Journal/        # Daily notes (YYYY-MM-DD.md)
โ”œโ”€โ”€ People/         # One note per person
โ”œโ”€โ”€ Tasks/          # Centralized task tracking
โ””โ”€โ”€ Archive/        # Completed projects

See references/structure.md for detailed breakdown.

Capture Rules

What to Capture (Immediately)

Type Destination Example
Quick thought Inbox/ "Maybe we should..."
Decision made Inbox/ or Notes/ "Decided to use Next.js"
Person info People/ New contact or update
Project update Projects/<name>/ Meeting notes, progress
Task/Todo Tasks/index.md "Need to finish X"
Link/Article Resources/ or Inbox/ URL with context
Personal growth Areas/personal-growth/ Health, habits, learning
Family info Areas/family/ Important dates, notes

What NOT to Capture

  • Casual chat without information value
  • Temporary queries ("what time is it")
  • Information easily searchable online

Note Format

Every note uses minimal frontmatter:

---
created: YYYY-MM-DD
tags: [tag1, tag2]
related: ["[[Other Note]]"]
---

# Title

Content here. Link to [[Related Notes]] freely.

Use templates from assets/templates/ when creating new notes.

Daily Workflow

During Day

  • Dump everything to Inbox/
  • Don't organize โ€” just capture

Evening (5-10 min)

Process Inbox/:

  1. Each item โ†’ permanent home or delete
  2. Update Journal/YYYY-MM-DD.md with summary
  3. git commit -am "daily processing"

Weekly Review (Sunday, 15 min)

  1. Review all Projects/ โ€” still active?
  2. Check Areas/ โ€” anything neglected?
  3. Move completed projects to Archive/
  4. Update Tasks/index.md

See references/workflows.md for detailed workflows.

Commands

User says Action
"Set up brainrepo" Run onboarding, create structure
"Save this: [text]" Capture to Inbox/
"New project: [name]" Create Projects/name/ with template
"Add person: [name]" Create People/name.md with template
"What do I know about X?" Search & retrieve
"Daily review" Process Inbox/, update Journal/
"Weekly review" Full system review

Linking

Use [[wiki-links]] to connect notes:

Met with [[People/john]] about [[Projects/acme/index|ACME Project]].
Relevant insight: [[Notes/negotiation-tactics]]

Projects vs Areas

Projects Areas
Have deadlines No end date
Can be "done" Maintained forever
Specific outcome Standard to uphold

File Naming

  • Folders: kebab-case/
  • Files: kebab-case.md
  • Dates: YYYY-MM-DD.md
  • People: firstname-lastname.md

References