Install the CLI
The CLI is the bridge between your coding agent and your tenant. It installs hooks that fire automatically when Claude Code or Codex run, and it provides the commands you’ll use to recap, review, and evaluate sessions. This page walks through a fresh install.
1. Install from npm
Section titled “1. Install from npm”npm install -g @kurrent/kapacitornpm picks the right native binary for your platform automatically:
| Platform | Architectures |
|---|---|
| macOS | ARM64 (Apple Silicon) |
| Linux | x64, ARM64 |
| Linux (Alpine / musl) | x64, ARM64 |
| Windows | x64 |
The binary is NativeAOT-compiled — fast startup, no .NET runtime needed.
2. Run the setup wizard
Section titled “2. Run the setup wizard”kapacitor setupYou don’t need to know your tenant URL ahead of time. The wizard talks to Kurrent’s auth service, signs you into GitHub once, and discovers every tenant your GitHub identity has access to.
The flow you’ll actually see:
- GitHub login — your browser opens to GitHub OAuth. Approve the auth and come back to the terminal. Tokens land in
~/.config/kapacitor/tokens.json. - Pick your tenant — the wizard prints the list of tenants you can sign into (one per GitHub org with a Kapacitor install). On a single-tenant team this is one-click; if you belong to multiple orgs you get a picker.
- Default visibility —
private,org_public(default), orpublic. Changeable later viakapacitor config set default_visibility …. See Visibility & sharing for what each value means. - Coding-agent hooks — the wizard detects Claude Code (
claude) and Codex (codex) on yourPATHand offers to install hooks for each. Pick yes for whichever you use. - Daemon — names the daemon process used for hosted agents. Defaults to your OS username; accept the default unless you’ll run multiple daemons on the same machine.
3. Verify
Section titled “3. Verify”kapacitor whoami # confirms you're logged inkapacitor status # checks the server is reachableIf both succeed, you’re connected.
Codex: trust each hook
Section titled “Codex: trust each hook”Codex requires you to explicitly trust every hook before it fires. After the wizard installs Codex hooks, open Codex and run:
/hooks…then trust each kapacitor entry. Until you do, the hooks are installed but inert and no sessions will be captured.
Claude Code has no equivalent trust step — its hooks fire immediately.
Targeting a specific tenant
Section titled “Targeting a specific tenant”The auto-discovery path is the right default for almost everyone. The two cases where you’d pass --server-url explicitly:
- Non-interactive setup —
--no-promptrequires--server-urlbecause there’s no terminal to show the picker on. - Multiple tenants per org, or off-discovery tenants — when discovery wouldn’t pick the right one and you want to point at a known URL.
kapacitor setup \ --server-url https://acme.kapacitor.ai \ --default-visibility org_public \ --no-promptIn --no-prompt mode, hooks install for every detected agent by default. Opt out per agent:
kapacitor setup --server-url … --no-prompt --skip-codex-hooks # Claude onlykapacitor setup --server-url … --no-prompt --skip-claude-hooks # Codex onlyRe-running discovery later
Section titled “Re-running discovery later”If you join a new org or want to add a second tenant to your profiles after the initial setup:
kapacitor login --discoverThis runs just the GitHub-login-plus-tenant-picker leg of the wizard. New tenants are added to your profile list; you can switch between them with kapacitor use <name>.
Installing hooks after the fact
Section titled “Installing hooks after the fact”If you install a new agent later, or want hooks scoped to a single repo instead of user-wide:
kapacitor plugin install # Claude, user scope (default)kapacitor plugin install --codex # Codex hooks + agent skills, user scopekapacitor plugin install --skills # Agent skills only (~/.agents/skills/), no Codex hookskapacitor plugin install --project # Claude, current repo onlykapacitor plugin install --codex --project # Codex hooks in <repo>/.codex/hooks.json, skills user-wideUse --skills if you want Cursor (or another agent that reads ~/.agents/skills/) to have the kapacitor skills without installing Codex hooks.
Project-scope installs write to <repo>/.claude/settings.local.json (Claude) or <repo>/.codex/hooks.json (Codex). The command must run from inside a git working tree.
What’s next
Section titled “What’s next”You’re ready. Capture your first session in Your first session.