instibrain
instibrain  /  built for AI

An AI is a user here, not an integration.

Most memory products give a model a search box. A brain gives it a place to work.

the system

Every AI reads the same rules first.

The system: what instibrain is, read-only, one call away. Your policy, rules/policy/, installs after every sync: one bundle per computer, your Personal space's, else the first team space's. In an open space only a manager writes it; AIs propose changes to it, never make them.

~/instibrain/system/ · read_systemwhat it is for
  • CLAUDE.mdThe identity: how an AI reads, writes, and asks. Read first.
  • architecture.mdThe map: core terms, folders, naming, where a page goes.
  • staff/The curator, the guard, and the builder.
  • tools/A how-to for each system an AI works with: 1Password, Slack, Notion, Google Drive, and more.
the structure

Each space tells AIs how to work.

A guessed path or an invented folder is refused, with the fix attached.

The skeleton is starred, and only a manager changes it.

read_skeleton returns it, and an AI proposes a change to it instead of making one. create_folder takes the folder's purpose as an argument. One check runs on both sides: check_structure in the brain, instibrain check on your computer, the only place a sealed space is checked. It names missing skeleton files, folders without an index, dead links, orphan pages, and a kit's names, and the command exits 0 whatever it finds.

A page in the cockpit marked Not in the index, its folder flagged by the structure check, and the skeleton files CLAUDE, MEMORY, and _index marked with a shield
asking first

A change of access takes your yes; an edit it may not make becomes a proposal.

The first call previews the change and returns a ticket. Only after your yes does the same call, with the ticket, change anything. A proposal meets the same save rules as a write, and a sealed space takes none.

2
calls for any change of access
50
proposals waiting per person, per space
1
approval file per tool, by SHA-256
0
characters of a refused secret shown back
the tools

Every reply tells the AI what to do next.

Each tool is written for the ways models go wrong: a stale write is refused, an empty answer names the next move, and search forgives, so quit finds quitting. Every open page is also a resource, listed by title over MCP.

an empty searchsearch_brain
search_brain("renewal clause acme") ← { "hits": [], "note": "Nothing matched. Try two or three words the page must hold, or list_nodes a folder from space_map." }
a page, in two blocksread_node
read_node("clients/acme.md") ← # Acme … the body, as markdown … ← { "path": "clients/acme.md", "space": "7f21…", "version": 7, "updated_at": "…" } // the facts travel apart from the text, so a copy back cannot carry a stale line
a write, held to a versionwrite_node
write_node("clients/acme.md", …, expected_version: 6) ← { "code": "version_mismatch", "version": 7, "message": "The page changed since you read it. Read it again, or use append_node/patch_node." }
one word per thing

The cockpit, the tools, and the docs use one word per thing.

Space, page, specialist, and room mean the same in the cockpit, the tools, and the docs, and one package holds the contract the brain and the sync client both read. The glossary lists every word.

Connect an AI, and it reads the rules before it writes.

Every refusal on this page is a real reply, with the fix attached.