Skip to main content
Latest engine release: v — what brew install and the install script give you. The npm package @ runs on its own channel; it bundles its own engine build, so an npm install never depends on your CLI version. Run nika --version and nika --help after install; those commands are the executable source of truth for your local binary. A grammar change ships with its nika check --fix migration.

Install today

Requires Node.js 22 or newer.
One package gives you the nika command and the TypeScript SDK. The verified release binary for your platform arrives as an optional dependency (macOS and Linux · arm64 and x64): the same bytes every other door installs. Project-local works too: npm install @supernovae-st/nika, then npx nika … and import { Nika } from '@supernovae-st/nika'. The SDK README carries the full contract; the package version follows the engine’s release train.

First-run verification

You already have Claude Code or Codex. You do not need a key and you do not need to pull a model for this step.
Run nika with no arguments and read the line it offers. Your binary is the source of truth; on v that line is , and this page is gated on saying the same thing. It is the zero-spend first contact: a Ready hello candidate written to an explicit destination, without a provider call. Omit the destination to preview. nika init scaffolds repo-local schema wiring and agent context when you want a repo, not before. nika wire <client> is explicit MCP client setup. Installers do not mutate editor configs automatically.

Platforms

Servers and headless Linux

Nika jails every exec: child and external MCP spawn inside an OS sandbox when the host provides one: Seatbelt on macOS (ships with the OS, nothing to install), bubblewrap on Linux. A minimal VPS image usually does not carry bubblewrap — install it once:
Without a backend the host answers noop, and what that means depends on what the workflow declares:
  • No permits: block — the run proceeds (best effort). The exec blocklist floor still applies; nothing else changes.
  • A permits: block plus exec: tasks — the run refuses to start (NIKA-1710). A declared boundary the host cannot enforce is a broken promise, so the engine fails closed instead of running unjailed.
The posture is one knob, read once at launch:
off is a waiver, not a silent escape: the run’s journal records sandbox_policy and sandbox_waived on its opening frame, so a sealed trace shows you chose it. An unknown value refuses to start (NIKA-1711) — a typo’d security knob never loudly defaults. nika doctor shows the selection (the sandbox row names the backend or noop), and nika explain NIKA-1710 teaches the refusal with the per-OS fix.

Trust but verify

The install script lives at nika.sh/install.sh. Read it before piping to sh. It’s a small POSIX shell script.Release binaries are published at github.com/supernovae-st/nika/releases with SHA256 sums.If you download one platform archive rather than all four, verify only that row. Running the checksum file wholesale reports the three archives you did not download as failures:

A real answer, later

The first run is a rehearsal. When you want a billed or local answer:
  • A local server, when you choose to run one — not a first-run download. Local models.
  • A cloud key, when you choose to set one. Env var names live in Providers catalog.
Run nika doctor. It reports key presence (never values) and which clients are wired, and it is the honest inventory of what your binary can reach — not what a flag mentions.
The tool you already pay for — running a workflow on an agent seat you are already logged into, with no key of your own — is the --access harness class, compiled into v. Its prerequisites and limits live in Harness access; nika doctor reports what your machine can actually use.

What gets installed

  • nika, the binary (single file, no daemon, no background process)
  • Nothing else. No service, no telemetry, no home-dir pollution beyond files you explicitly create with nika init or nika wire.

Shell completions

The binary generates its own completions — no separate package, always in sync with the verbs your version actually ships:
Also available: elvish and powershell. Re-run the same command after an upgrade to pick up new verbs.
On engines up to 0.93.x the generated script bound completions to the internal binary name instead of nika — fixed on current main. If completions don’t fire after installing, upgrade and regenerate.

Uninstall

Next

First workflow

Your first .nika.

Editor setup

Schema validation + LSP roadmap.

Your machine

The mirror this binary prints.

Agents

Claude Code and Codex you already have.

The Nika ecosystem