FIG I · install · v0.91.0

One binary. Your machine.

Nika is one Rust binary — no daemon, no account, no cloud required. Pick a way in below; the first run needs no model and no API key.

macOS · Linux · air-gapped OK

  1. 01 · homebrew

    The one-liner

    macOS or Linux with Homebrew — on your PATH immediately. Check it with nika --version.

  2. 02 · script

    Without Homebrew

    Downloads the verified release binary into ~/.nika/bin and prints the single PATH line to add to your shell profile — reopen the terminal and nika --version works.

    curl -LsSf https://nika.sh/install.sh | sh
  3. 03 · manual

    Air-gapped, or by hand

    Download the platform tarball and SHA256SUMS from the latest release, verify, then move nika onto your PATH. Nothing phones home.

    sha256sum -c SHA256SUMS --ignore-missing
  4. 04 · editor

    The editor extension

    supernovae.nika-lang — on the VS Code Marketplace and Open VSX (Cursor · Windsurf · VSCodium). It auto-downloads the matching nika release binary on first use, or reuses the one already on your PATH. Any other editor: nika lsp speaks LSP over stdio — source + issues.

  5. 05 · agents

    Work with your agents

    Nika is built to be written by agents and reviewed by you. nika init drops the schema wiring + AGENTS.md into your repo so Claude Code, Cursor, Codex and friends author valid workflows on the first try; nika wire adds explicit agent-tool (MCP) wiring where you want it.

    nika init
    nika wire cursor
  6. 06 · first run

    Zero keys, zero setup

    Your first workflow needs no model and no API key. Save the file, audit it with nika check (plan · cost · secrets — before anything runs), then nika run. Adding an AI step? The built-in mock/echo model shows the shape offline — swap it for a local model or any API when ready, and nika doctor tells you exactly what's wired.

    nika check hello.nika.yaml
    nika run hello.nika.yaml
    nika examples run 01-hello --model mock/echo
    nika doctor
    hello.nika.yaml
    nika: v1workflow: hellotasks:  - id: greet    exec:      command: "echo hello from nika"
    hello-ai.nika.yaml
    nika: v1workflow: hello-aimodel: mock/echo   # offline · swap for ollama/llama3.1 or any API when readytasks:  - id: greet    infer:      prompt: "Say hello in one sentence."

Next: learn the file in 5 minutes · browse real workflows · full docs