Planner → Coder → Tester → Reviewer.
The multiagent path runs Planner, Coder, Tester and Reviewer as separate sessions that exchange typed artifacts. In auto mode, low-complexity tasks can collapse to Planner plus a solo Coder; set [pipeline].topology = "multiagent" to force the full chain.
The full multiagent path.
Reads the task and the current files, produces the TaskSpec.
The Planner never writes code. It reads your task description plus existing file contents and emits a typed plan: scope, files, approach. With plan mode (`niki plan`), this is the only stage that runs; you review `plan.md` before anything executes.
→ emits TaskSpec, which files to touch and the approachEmits a unified diff, applied to the active execution workspace.
The Coder works from the TaskSpec alone; it never sees the Planner's conversation. It emits a unified diff that Niki applies in the active execution workspace: a container bind mount for the container backend or a local worktree for the worktree backend. Sequential stages intentionally share one execution environment so the diff persists; independence is at the LLM-session layer. Parallel coder topologies and a Synthesizer agent are available via `[parallel]`.
→ emits unified diff, applied in the active execution environmentGenerates a test report and runs a test command when one resolves.
The Tester generates a test report and runs a configured or auto-detected test command when one is available. A run can complete with `test_execution = None` when no command resolves. When tests do run, failing suites block branch creation unless you explicitly use `--force` (recorded as NOT verified).
→ emits test report and, when available, execution resultsIssues the verdict; bounces work back until approved.
The Reviewer audits the prior stage's artifact. On request-changes it loops back to the Coder for up to `max_revision_rounds`. Optional agents extend the loop: an adversarial Red agent before the Reviewer, and a Security Auditor appended after the Reviewer when enabled or forced by risk.
→ emits verdict: correctness, quality, coverage scoresvs. one agent in one conversation.
- Confirmation bias: the same agent may review its own reasoning
- Context drift: long conversations can make relevant context harder to manage
- More steering: you may still need to steer and re-check edits
- Separate Tester and Reviewer sessions receive the typed artifacts they need
- Narrow stage inputs instead of one growing conversation
- The Reviewer can request another Coder pass within the configured revision limit
Specialized agents.
Red agent
An adversarial reviewer that probes the diff before the Reviewer. Opt-in via [red_blue] enabled = true; sees evidence-only projections.
Security Auditor
A dedicated security pass over the change via [security] or risk policy, appended after Reviewer; sees Planner and Coder artifacts only.
Parallel Coders
Run multiple Coder implementations in parallel with a Synthesizer agent that reconciles them, via [parallel].