coldstart, command by command.
coldstart is one binary with two front doors — a CLI (the fast path for any shell-capable agent) and an MCP server (for no-shell clients), with byte-identical output. This page covers the stable core surface; for exhaustive flags, versioned changes, and internals, see the README and docs on GitHub — the source of truth.
find (which files?) and gs (what is this file, who uses it?) — and the kb family is the notebook: durable, agent-written notes kept honest by the index. That's the whole surface.Install & setup
Requires Node.js 18+. Install globally, then run init once per project.
init asks two things — the experience and the client — then writes the coldstart guidance where that client will read it, creates the notebook, and registers the navigation and notebook hooks. It indexes the repo before it exits, so your first find is instant instead of racing a half-built index. A few seconds, once.
What it writes, per client
coldstart.md, imported from CLAUDE.md, plus hooks in .claude/settings.json..cursor/rules/coldstart.mdc — Cursor doesn't resolve file references in rules — plus .cursor/hooks.json.AGENTS.md, plus .codex/hooks.json.coldstart.md and printed wiring directions for anything else.Flags
.raw logs so the team can share it. Private by default — see Sharing.Upgrading and removing
On upgrade, running keepers notice the version bump and restart themselves. Re-run init only if a node or nvm change moved the global install — coldstart status tells you when that has happened. Unwiring keeps your notebook unless you pass --purge.
codex from a terminal if the prompt never appears. For automated runs, pass --dangerously-bypass-hook-trust. openai/codex#21615 has the details.The intended flow
find → gs → Read. Orient with two cheap calls before spending a token reading. Notebook summaries ride along on find, so the orientation step often answers itself.
- find a concept → ranked candidate files, each with the evidence for why it ranked.
- gs the best file → its symbols, importers, and per-symbol callers, in one call.
- Read only the method body you actually need — not the whole file.
Where to next
find & gs
Locate the files for a concept, then drill into one file's shape, callers, and importers.
The kb family
Durable, agent-written notes kept honest by the index — search, lookup, write, and share with a team.
Freshness, MCP, languages
How the index stays current, the lifecycle commands, MCP tool exposure, and the supported-language set.
coldstart graph
See the whole repo at once, then walk it file by file. Try it on this codebase, or run the command on yours.