The problem isn’t longer context.It’s deciding what deserves context.
Supabrain keeps project knowledge outside the model and compiles the smallest fresh, traceable working set an agent needs for the task in front of it.
Context windows got bigger. The allocation problem didn’t move.
An agent accumulates repository files, tool outputs, prior decisions, transcripts, sub-agent results and logs. Most of it is irrelevant to the next action.
A larger window makes carrying all of that possible. It does not make it desirable. Every passage that enters the live context competes for attention with the passages that actually decide the task.
Availability is not relevance.
The model should not have to read the project to understand the task.
Four primitives. No answers.
Persist
Project knowledge is ingested into one local SQLite store per project, with stable identities and exact provenance.
Index
A repository change updates a persistent retrieval index incrementally. Unchanged sources are never re-read.
Compile
A task becomes a bounded evidence working set: scoped retrieval, file-diverse head, hard delivered-text budget.
Verify
Every passage carries file, line span and content hash. Freshness, exclusions and evidence gaps stay visible.
supabrain_statusProject, index and freshness state. Cheap by contract.supabrain_searchFielded lexical retrieval over the persisted index.supabrain_openPrimary-key lookup of one evidence block.supabrain_compileThe bounded working set for a task, with accounting.Exactly four read-only tools over stdio JSON-RPC. Stateless, no server-side conversation state, no repository mutation, no answer field anywhere. Verified from Claude Code and from Codex.
Do the expensive work before the query.
A search engine does not read the world when the user asks a question. Neither should an agent’s context layer. Repository changes update the index; the query path then touches only the postings it needs.
A guard process proves the property rather than asserting it: with the corpus loader and the in-memory index builder made to raise, all seven requests still answered. The query path never touches them.
compile in the same fresh process.One real repository: the operator’s Vision7 store, 1,513 sources and 61,747 passages, measured 2026-08-17 from a fresh supabrain-api mcp process. This is a product smoke on a named snapshot, not a benchmark and not a general performance claim. The 0.083 s search was measured on a compacted copy of the store; on the operator’s un-VACUUMed 5.1 GB store file the same first search took 1.1 s.
61,747 passages indexed. A handful enter the model.
The index can be large. The live context should not be.
How many blocks a task actually needs is a function of the task, the scope and the budget, not a fixed number. Supabrain makes no token-savings and no answer-quality claim; it makes the selection explicit, budgeted and inspectable.
Not every node needs the whole project.
The graph decides who works.
Supabrain decides what they need to know.
structured results, not transcripts
A graph already draws execution boundaries. Those boundaries can also be context boundaries. Node A does not need Node B’s transcript; Node B should not inherit every file Node A opened.
Each node can start from a fresh context and receive only the evidence its bounded job requires. Durable structured results survive the node. Transient context dies with it.
Status: direction, not a shipped capability. The review of whether the existing compile contract can serve a bounded node without new tools is delivered with recommendation PARTIAL (four candidate revisions, ruling pending). The private three-node spike has not started. Supabrain is not a graph framework and makes no claim of superiority over graph systems.
Built by dogfooding, not demos.
12 genuine sessions · 5 private repositories · 9 real-use defects fixed · defect discovery, not a benchmark.
The nine defects were found by using the system on real work, not by writing demos for it. Each was fixed red-first: a failing regression test against the pre-fix code, green after. One P0, four P1, four P2. None waived at closure.
Retained negative from the same closure: the product tools — search, open, compile — were exercised in one of the twelve sessions.
Retrieval selects context. It is not a completeness oracle.
Compile is a context reducer, not a truth oracle.
Four read-only tools. One SQLite file. No answer field.
- Local
- One SQLite store per project, outside the repository. Trusted-local only.
- MCP
- stdio JSON-RPC, read-only, stateless. status / search / open / compile.
- Provenance
- File, line span, content and file hashes, repository commit, deterministic evidence ids.
- Freshness
- current / stale / unverifiable. Repository-level and deliberately coarse.
- Budgets
- Hard delivered-text budget. Whole items are trimmed, never silently truncated.
- No answers
- Supabrain supplies evidence. The agent reasons.
supabrain_compile → package evidence_items file · lines · evidence_id context_text within a hard budget budget 43 / 700 (recorded demo run) freshness current | stale | unverifiable exclusions reason-tagged, with counts evidence_gap_status visible when evidence is missing package_fingerprint deterministic, timestamp-free answer_field_present false
Shape, abbreviated. The budget figure is from a recorded demo run; it is not a general result.
What runs today. What is direction.
- Persistent Fast Index and incremental ingestionAccepted 2026-08-18, operational on all five private operator stores.
- Context CompilerScoped retrieval, file-diverse head, hard-budget package with reason-tagged exclusions.
- Provenance, freshness, visible gaps, budget accounting
- Four-tool read-only MCPVerified from Claude Code and from Codex, byte-identical package fingerprint across clients.
- Operator setup and doctorOne idempotent setup command; expensive verification lives in doctor, status stays cheap.
- Node-contract contextReview delivered, recommendation PARTIAL, four candidate contract revisions, ruling pending.
- Private three-node graph spikeBounded private experiment. Not started.
- Context lifecycleCheckpoint, fresh session, minimal rehydration. Investigation closed PARTIAL; implementation not authorized.
Boundaries matter.
- Local and trusted-local only. No hosted runtime, no public binding, no deployment claim.
- No answer generation, and no answer field in any output.
- No production, beta, enterprise or customer-data readiness claim.
- No answer-quality and no token-savings claim. Retrieval is lexical; freshness is repository-level and coarse; nested repositories are reported, not covered.
- Graph context and context lifecycle are direction, not shipped capability.
- Measured figures are product smokes on named snapshots. Negative and null results are retained, not removed.
Large knowledge.Small working set.