Skip to main content
base 0.16.0 is out. What’s new in base 0.16.0 explains what changes, what you see in the first sessions after the update, and how to undo any of it.
That last step is the one worth getting to, so this page takes the short route to it rather than covering everything base can do. Five commands, in order, and then the loop runs on its own.
base install wires one agent host today: it edits ~/.claude/settings.json and installs the bundled skill alongside it. Everything base holds is host-independent (the graph, your rules and your code maps are files on your machine), but Codex and Antigravity are not wired by the installer. The install page has the detail.

1. Install

There is a prebuilt Windows archive too, and flags for skipping the hook wiring or the starter commands. Installing base covers all of it, including which files the installer creates and how to remove them again.

2. Set up a workspace

A workspace is any directory you want base to know about. Scaffolding one creates a .base/ directory for its configuration and registers it globally, so base can resolve it later from anywhere on the machine.
It takes an optional path if you would rather not change directory first. Do this for every real project before you work in it, because base refuses to write outside a registered workspace. You get an error naming the two ways forward: run base scaffold here, or pass -g to file the write against the global tier on purpose.

3. Teach it one thing

Everything base knows arrives through commands like this one. Start with a rule, because a rule is the shortest path to seeing the whole loop work.
A rule belongs to a domain. A domain is a named subject with triggers attached to it: keywords and file paths that decide when its rules are relevant. Rules live in the graph; the domain’s triggers live in domains.toml. Add the reasoning as well, which is worth doing whenever the rule would otherwise read as arbitrary:
Ask for it back to confirm it landed:

4. Map the code

Registering a project tells base which directory it covers. Syncing the code map reads that directory with tree-sitter and records every function, class, import and call relationship.
Now questions about the code are queries rather than searches:
Every one of those has a short form, so the first is also base a q -c "auth". The code reference has the rest.

5. Watch it arrive on its own

The commands above are the part you drive. The part you do not drive is the reason base exists. Open an agent session in the workspace you just scaffolded and touch a file inside the mapped directory. The file’s shape (its entities, its imports, what depends on it) arrives in the turn before the agent reads its contents. Then send a prompt that mentions migrations. The rule you wrote arrives with it, because the prompt matched the domain. Nobody asked for either one. That loop is the product: you teach the graph once, and it speaks up on its own from then on. To see what would arrive for a given piece of text before you send it, ask directly:

If something looks wrong

base doctor checks graph health across both tiers and exits nonzero when it finds a problem. Add --repair to quarantine malformed lines and rewrite the good set, which backs up first. Add --json if you are reading it from a script. If a rule you expected did not arrive, base context "<the prompt you sent>" is the faster answer: either a domain matched or it did not.

Where to go next

Install

Every file the installer touches, the flags, and how to take base off a machine.

Coach mode

base ships a skill that teaches your agent how base works. Ask it instead of reading.

How it works

The four points in an agent’s turn where context gets placed, and what the graph holds.

Command reference

Every command, grouped by whether it can take anything away from you.