The multi-agent coding pipeline.
Niki is open-source software that turns a described task into a verified git branch: four independent agents plan, code, test and review — in hermetic sandboxes, with a full audit trail.
What it is
Niki is a Rust CLI with one job: take a sentence, return a reviewable branch. It runs a fixed pipeline of four LLM agents — Planner, Coder, Tester, Reviewer — each with its own prompt, its own model and its own isolated context. Agents exchange typed artifacts, not a shared conversation.
The output is boring on purpose: a niki/<id> branch, a changes.patch, a human-readable report.md, and per-agent JSON artifacts. You review it like any human PR — nothing lands on main until you say so.
$ niki run "Add a /health endpoint" --project ./my-app# … four agents run in their own sandboxes …✓ Branch: niki/6d281d6d · Verdict: Approved
capabilities · what ships today
everything below ships in the current release — no vaporwarePlan mode
niki plan researches and writes a reviewable plan.md without executing. Approve with niki run --plan.
Hermetic sandboxing
Rootless Podman or Docker with CapDrop ALL, read-only rootfs, blocked egress. Or the no-container worktree backend.
Reviewer revision loop
The Reviewer bounces work back to the Coder for up to max_revision_rounds until it approves.
BYOK, 12 providers
Anthropic, OpenAI, Google, Ollama, OpenRouter, Zen, Kimi Code, KiloCode, NVIDIA, Groq, Together, DeepSeek — plus any compatible gateway via base_url.
Honest cost metering
Exact tokens and cost per run, a hard-enforced spend_cap_usd, and warnings for unpriced models.
Interactive TUI
niki chat streams a unified status grammar — plus sessions, memory, goals and research commands.
Headless CI contract
--bare --output-format json is a stable, pipe-pure envelope for automation, with OTLP trace export.
ACP / IDE integration
niki acp drives Zed and other Agent Client Protocol clients.
Diagnostics & evals
niki doctor, niki smoke, and a seeded-defect niki eval harness with disclosure manifests.
honesty · what niki is not
boundaries are part of the product — these hold todayNot a replacement for your judgment
You review the diff and report before merging. Niki prepares; you decide.
Not one all-knowing agent
Four narrow agents beat one giant context — and can't bias each other.
Not training on your code
BYOK, no telemetry, no hosted service. The only outbound traffic is your provider calls.
Not magic on huge codebases
Works best on tasks with a clear spec and a testable outcome.