Install IronBee in a project
Run the installer from your project root:--client (and IronBee can’t uniquely detect one), install shows a checkbox multi-select so you can set up any combination of clients in one pass — space toggles a client, a selects all, Enter confirms. The first client is pre-checked, and confirming with nothing selected aborts.

--client all does the same non-interactively — it installs for every detected client.)
The interactive flow then asks three more questions in order — mode, platforms, then checks — because choosing monitor makes the platform picker (and the checks step) moot and skips them.
Choosing the verification mode
After resolving the client, install asks which verification mode to run. In an interactive terminal it shows an arrow-key single-select, pre-selecting the project’s current mode (so re-installing keeps your choice; a fresh project defaults toassist):
--mode:
verification.enable / verification.auto), so it’s equivalent to the ironbee verification toggles. For assist and enforce, install also records verification.strict at its default false (a strict choice you already made is kept). Any existing verification.model is preserved. The picker default reads the project’s own committed/local config (the machine-global config is ignored), so a fresh project defaults to assist even on a machine running monitoring-only globally. In a non-interactive shell with no --mode flag, the verification config is left untouched.
Choosing which platforms to verify
Unless you pickedmonitor, install then asks which verification platforms (cycles) to enable. In an interactive terminal it shows an arrow-key multi-select, pre-checked from the project’s current config (so re-installing keeps your choices; a fresh project defaults to browser-only):
s “suggest” key. Press it to have IronBee analyze your project with a headless prompt and replace the current selection with a recommended set of cycles; you can still adjust it before pressing Enter. All three clients can run the analysis — Claude Code, Codex, and Cursor — and when several are selected it uses the highest-priority one (claude > codex > cursor). It’s opt-in (nothing runs until you press s), and if the analysis is cancelled (Esc), times out, or fails, your current selection is kept.


--platforms (a comma-separated subset of browser,node,python,backend,android,terminal):
ironbee browser / node / python / backend / android / terminal toggles. Install records the full platform state explicitly — an enable flag for every cycle (browser, node, python, backend, android, terminal) — so the committed config.json plainly shows what’s on and what’s off. In a non-interactive shell with no --platforms flag (or in monitoring-only mode, including a just-chosen --mode monitor), the platform config is left untouched.
Choosing your project checks
Beta — the suggested commands are a starting point to review, not a finished config.
ironbee checks suggest command, which you can re-run anytime; re-suggesting is additive, so it never clobbers checks you’ve hand-tuned.
Unattended installs
For scripts and CI,install can run with zero prompts:
| Flag | Description |
|---|---|
-y, --yes, --non-interactive | Force zero prompts even under a TTY. Any choice you didn’t pass a flag for falls back to the flag / existing config / defaults. |
--json | Emit a machine-readable summary to stdout ({ ok, project, clients, mode, strict, platforms, checks }); decorative logs go to stderr. |
Restart your AI coding client after installing so it picks up the new hooks and tools.
Install everywhere at once
IronBee keeps an inventory of every project you’ve installed it into (see The project inventory below). To re-run install across all of them (handy after changing a global setting):Remove IronBee from a project
.ironbee/ directory, and drops the project from the inventory.
| Option | Description |
|---|---|
--client <name> | Only remove a specific client’s setup (claude, cursor, codex, or all). |
--all | Remove IronBee from every registered project. Prompts for confirmation first. |
-y, --yes | Skip the confirmation prompt (required with --all in scripts/CI). |
The project inventory
IronBee tracks the projects it’s installed in at~/.ironbee/projects.json. This inventory is what install --all and global config changes use to know which projects to update.
You normally don’t manage it by hand; ironbee install adds a project automatically, and ironbee uninstall removes it. Two commands let you adjust the inventory without touching any installed files:
register- retrofit a project that was set up manually (or before the inventory existed) so it shows up forinstall --alland global-config notices. No artifacts are written.unregister- drop an entry without uninstalling anything. Works even if the project directory has already been deleted.
-p, --project <dir> to target a directory other than the current one.
Update the CLI
Check for a newer release and update in place:PATH. You can always update manually instead:
Restart your AI coding client after updating to use the new version.
Auto re-rendering after an upgrade
Occasionally a new release changes the structure of the files install writes into a project — hook configs, the skill/rule/agent files, MCP entries, the verifier sub-agent. When that happens, IronBee re-renders every registered project so they all pick up the new structure, without you runninginstall --all by hand.
- It triggers right after the upgrade (the npm
postinstall, including viaironbee update) and, as a fallback, on your next interactiveironbeecommand. - It’s non-destructive: re-rendering preserves your config — mode, platforms, the verifier model, and any custom verify patterns are kept.
- In an interactive terminal you get a one-key “Press Enter to update them now…” acknowledgement before it runs. In any non-interactive context (pipes, CI, agent-fired hooks) it defers rather than re-rendering silently, so the next interactive run picks it up.
- Routine patches that don’t change the file structure re-render nothing.
IRONBEE_NO_AUTO_RERENDER — or rely on CI being set, which also short-circuits it.
What’s next?
Verification
Choose which platforms get verified and switch between enforcement and monitoring-only.
Interactive mode (TUI)
Manage projects, platforms, and sessions from a full-screen terminal UI.