founder-os/doctor
Founder OS
// engine health

Doctor

/app/knowledge/brain-store · 0 pages · last run 13d ago · data-agent
unreachableG-Brain

Pillar Health

live roster + runs + SOP coverage
SALESFINANCESCLIENTSMARKETINGTECHCOMMUNICATIONS
—/ 100 health

Health Volume

out of 100
- /100unreachable
gbrain unreachable · 0 pages on disk, local grep answers
Engine health ( - /100)unreachable
Checks passing (0/0)no checks run
Storage layers live (0/3 checked · 1 unchecked)0%
Pillar health (6 pillars)71/100
0 folders · 6 pillars · 0/4 layers live

Brain Runs

data-agent · last 14 days
0
last run 13d ago
No data-agent runs in the last 14 days.

Brain Store

0 folders
0pages
no markdown on disk yet
Needs you
-
The doctor is unreachable.
gbrain doctor did not answer; searches fall back to grepping the brain-store on disk.

Doctor Core

unreachable
last run 13d ago · data-agent
hybrid search degradedlocal fallback active
- HEALTH / 100GBRAIN V0.47BRAIN-STORE · 0 PAGESOLLAMA · BGE-M3 · 1024dSUPABASE · 918 PAGES · PAUSED

Storage layers

0/4 live
gbrain CLI
v0.47 · ~/.bun/bin/gbrain · doctor --fast
UNREACHABLE
brain-store/
/app/knowledge/brain-store · markdown knowledge
0 pages
Ollama (bge-m3)
hybrid-search embeddings · local, 1024d
NOT CHECKED
Supabase Second Brain
918 pages / 11k chunks · free tier idle-pause
PAUSED
doctor · health - /100offline

Pipeline

0 pages on disk
1

Markdown brain-store

/app/knowledge/brain-store
0 pages on disk, plain .md files, the source of truth. gbrain sync walks the git repo and pushes changed pages up.
    sync · import→
    2

    gbrain CLI

    chunk · embed · route, the engine between disk and database
    —
    / 100 health · CLI unreachable
    0 checks
    • doctor offline · spawn gbrain ENOENT
    putgetquerysearchsyncimportexportdoctor
    embed · upsert→
    3

    Supabase Postgres + pgvector

    "Second Brain" · Ollama bge-m3 embeddings
    918
    pages · last known
    11k
    chunks · last known

    Each page is split into chunks; every chunk gets a local bge-m3 embedding stored in a vector column. Postgres holds both the text (tsvector) and the vectors, so one database answers keyword and semantic queries.

    Free tier pauses on idle - when hybrid queries fail, unpause from the Supabase dashboard. The brain-store on disk keeps working regardless.

    Query path

    hybrid retrieval, honest fallback

    What happens when an agent calls gbrain query, hybrid retrieval with an honest fallback.

    Question
    Natural-language query from you or an agent run.
    expand→
    Query expansion
    The CLI rewrites the question into search variants (skip with --no-expand).
    fan out→
    Keyword search
    Postgres tsvector full-text match over chunk text.
    Vector search
    pgvector nearest-neighbor over Ollama bge-m3 embeddings (1024d).
    merge→
    RRF fusion
    Reciprocal-rank fusion merges both result lists into one ranking.
    answer→
    Ranked snippets
    Top pages with snippets, returned to the agent.
    Fallback: local grep
    If Supabase is paused or unreachable, FOUNDER OS greps the markdown brain-store directly - fewer smarts, zero downtime.