brain-ingest
The process for digesting a conversation, document, or research result, classifying it, and writing it down as brain content (a…
Seed a freshly-scaffolded brain with real project knowledge — on an existing (brownfield) project read the code, docs, and git log, then draft only the root pages that have meaningful content and capture key historical decisions; on a near-empty (greenfield) project interview
Claude Code
$ npx -y skills add mindmuxai/brain.md --skill brain-bootstrap --agent claude-code
Codex
$ npx skills add mindmuxai/brain.md --skill brain-bootstrap -a codex -y
Cursor
$ npx skills add mindmuxai/brain.md --skill brain-bootstrap -a cursor -y
Gemini CLI
$ npx skills add mindmuxai/brain.md --skill brain-bootstrap -a gemini-cli -y
GitHub Copilot
$ npx skills add mindmuxai/brain.md --skill brain-bootstrap -a github-copilot -y
OpenCode
$ npx skills add mindmuxai/brain.md --skill brain-bootstrap -a opencode -y
Windsurf
$ npx skills add mindmuxai/brain.md --skill brain-bootstrap -a windsurf -y
name: brain-bootstrap description: Seed a freshly-scaffolded brain with real project knowledge — on an existing (brownfield) project read the code, docs, and git log, then draft only the root pages that have meaningful content and capture key historical decisions; on a near-empty (greenfield) project interview the user. Every write goes through the `brain` CLI. Run it after brain-setup.
`brain-setup` scaffolds an **empty** brain — no root pages and an empty `pages/`. This skill fills it with real, durable project knowledge for the first time. It is the bridge between "a brain exists" and "the brain is worth reading".
You gather information by **reasoning over the project itself** — reading code, docs, and `git log`, or interviewing the user — but you **never write the brain by hand**. Every landing of knowledge is a `brain` CLI subcommand.
> **NEVER hand-edit any file under the brain directory. All reads and writes MUST go through the `brain` CLI. Manual edits are unsupported and illegitimate.** There is no validator and nothing at the file layer can catch a bad manual edit; correctness is guaranteed only by going through the CLI, so a hand edit silently breaks the brain's invariants.
The exact command surface (`update-root` / `create-page` / `update-truth` / `reindex` / `ls` …) and the page-category taxonomy live in the **brain-page** skill — read it before creating or modifying any page. Resolve `<brain-page-bundle>` to wherever that skill is installed (in the brain.md source repo, `skills/brain-page/`); define the shell function `brain() { node <brain-page-bundle>/bin/brain.mjs "$@"; }` (a function is portable across bash and zsh, unlike `BRAIN="node …"; $BRAIN …`, which only word-splits in bash) and run everything from the project root.
Inspect the project to decide which path you are on:
When it is genuinely mixed (a little code, a little history), prefer Brownfield for whatever *can* be inferred, and fall back to interview questions for the parts the code can't tell you.
---
Gather from three sources, then **synthesize** (do not transcribe):
1. **Existing code** — directory structure, module boundaries, entry points, the tech stack and dependencies (manifest files: `package.json`, `pyproject.toml`, `go.mod`, `Cargo.toml`, …). This is your strongest evidence for `architecture` and `stack`. 2. **Existing docs** — `README`, `docs/`, `CONTRIBUTING`, design notes. Good for stated intent, goals, and naming. 3. **`git log`** — read the commit messages (`git log --oneline -n 200` and spot-read full messages for the interesting ones). Mine them for the **real decisions** that were made over time.
Write each with `echo "<body>" | brain update-root <slug>` (body on stdin). Lean on ` ```mermaid ` blocks (graph / sequenceDiagram / mindmap / gantt) to keep them visual.
For each genuine decision you can see in the history or the code (e.g. "switched from X to Y", "adopted pattern Z", a deliberate constraint), create a `decision` page and fill in its understanding:
brain create-page --id <kebab-id> --category decision \ --title "<one-line decision>" \ --summary "<why this page was created, in the user's working language>" \ --source "<where this came from>" echo "<what was decided, the alternatives, the rationale, the blast radius>" | \ brain update-truth --id <kebab-id> \ --summary "<what was captured, in the user's working language>" \ --source "<where this came from>"
Link related pages and the relevant root area with `[[page-id]]`.
---
There is nothing to read, so **switch to an interview.** Ask open-ended questions and let the answers drive what you seed. Cover at least:
From the answers:
A persistent, file-based memory layer for coding agents — give Claude Code, Codex & others a project brain (durable decisions, requirements, constraints) via a zero-dependency CLI.
The process for digesting a conversation, document, or research result, classifying it, and writing it down as brain content (a…
Operating manual for reading and writing a project's brain — every read and write goes through the bundled zero-dependency…
Bootstrap the Open Project Brain Standard into the current project — prefer `brain init` (ensure BRAIN.md, scaffold empty brain…
How to work in a Codebase Wiki project (the `codebase-wiki` starter pack): an agent-authored, source-grounded wiki of the…
Simulates academic peer review, evaluating papers across Originality, Methodology, Results, and Writing to provide Major/Minor…