Agents
Agents are defined in packages/nikcli/src/agent/agent.ts and configured via nikcli.jsonc.
Default Agents
build
Default agent with full permissions. Enables question and plan_enter.
plan
Read‑only planning agent. Denies edits by default and allows plan_exit.
general
General‑purpose subagent for multi‑step tasks. Disables todo tools by default.
explore
Exploration agent optimized for fast codebase discovery and web/doc search.
Subagents
Subagents are declared in Agent.SUBAGENT_TOOLSETS and can be invoked with @name.
@fast-explore
Minimal toolset for quick scans: read, grep, glob, list, tree.
@planner
Planning agent with web + code search enabled. No file edits.
@code-reviewer
Quality and safety review with read/grep/glob/list/bash.
@debugger
Debugging agent with read/grep/list/bash/edit.
@test-runner
Runs tests and edits when needed; includes write.
@refactor
Refactor workflow with apply_patch where supported.
Toolsets
The tool registry dynamically filters tools based on model and flags in ToolRegistry.tools().
For certain GPT models, apply_patch is enabled and edit/write are disabled.
This is controlled in packages/nikcli/src/tool/registry.ts.
Agent Config
Agent config is defined by the AgentConfig schema in packages/nikcli/src/config/config.ts.
| Field | Description |
|---|---|
model | Provider/model identifier (e.g., anthropic/claude-sonnet-4-20250514). |
temperature, top_p | Sampling controls forwarded to the provider. |
mode | primary, subagent, or all. |
permission | Overrides tool access via the Permission ruleset. |
steps | Maximum agent loop iterations. |