nca provides a rich interactive experience with a full-screen TUI (Terminal User Interface) and a fallback line-oriented REPL.
| Mode | When Used | Features |
|---|---|---|
| TUI (default) | Terminal is a TTY, --stream human, no --no-tui |
Full-screen, scrollable output, command palette, modals, mouse support |
| Line REPL | --no-tui flag, or non-TTY stdin/stdout |
Simple line-by-line input/output, still supports slash commands |
Force line REPL mode:
nca --no-tuiType your message and press Enter to send it to the agent.
Prefix with ! to run a shell command directly. The output is captured and fed into the conversation context.
! cargo test
! git log --oneline -5
! ls -la src/
Type @ followed by a path to inline-reference a file. nca performs fuzzy file search and auto-completion.
Can you review @src/main.rs and @src/lib.rs?
In the TUI, pressing @ opens a file picker with fuzzy search. Use Tab to navigate matches and Enter to select.
End a line with \ to continue input on the next line:
Write a function that \
takes a vector of strings \
and returns the longest one.
Type / to access slash commands. In the TUI, this opens an inline autocomplete menu.
| Command | Description |
|---|---|
/help |
Show help with all commands and keyboard shortcuts |
/status |
Display session status (ID, model, agent profile, permission mode) |
/clear |
Clear the screen |
/exit, /quit, /q |
Exit the session |
/new |
Start a new session |
/export |
Export the current session to markdown |
/stop |
Cancel the current agent turn |
| Command | Description |
|---|---|
/agent [profile] |
Show or switch agent profile |
/plan <task> |
Run a planning-oriented turn (read-only analysis) |
/review <task> |
Run a code review turn |
/fix <task> |
Run a bug-fix turn |
/test <task> |
Run a validation/testing turn |
Available agent profiles:
| Profile | Description |
|---|---|
@build |
Default full-access agent for development work |
@plan |
Read-only agent for analysis and planning |
@review |
Focused code review agent |
@fix |
Bug diagnosis and fix agent |
@test |
Testing and validation agent |
| Command | Description |
|---|---|
/models |
Browse and select models (opens picker in TUI) |
/model [name] |
Set the active model for the session |
/connect |
Open the provider connection picker |
/provider [name] |
Show or set the default LLM provider |
/apikey <provider> <key> |
Store an API key for a provider |
| Command | Description |
|---|---|
/compact |
Compact session context (summarize and trim history) |
/thinking |
Toggle thinking/reasoning visibility |
/sessions |
List and switch between sessions |
/agents |
List child sub-agent sessions |
/logs |
View session event log |
/attach |
Attach to a session |
/diff |
Show recent file changes |
/cost |
Show token usage and costs |
/stats |
Show session statistics |
| Command | Description |
|---|---|
/skills |
List discovered skills |
/memory [text] |
Show memory notes, or add a note |
/mcp |
List MCP servers |
/permissions [mode] |
Show or set permission mode |
/permission-bypass |
Toggle permission bypass |
/config |
Show runtime configuration |
/doctor |
Run configuration diagnostics |
/settings |
Show settings |
| Command | Description |
|---|---|
/editor [seed] |
Open an external editor to compose a message |
/set-editor <cmd> |
Persist the editor command (e.g., vim, code --wait) |
| Command | Description |
|---|---|
/image |
Manage staged image attachments |
| Command | Description |
|---|---|
/undo |
Undo last file change |
/redo |
Redo last undone change |
/auto-answer |
Auto-answer agent questions with suggested answer |
| Shortcut | Action |
|---|---|
Enter |
Send message |
Esc |
Cancel current agent turn / close modal |
Ctrl+C |
Cancel request |
Ctrl+L |
Clear screen |
Ctrl+Q |
Exit |
Mouse wheel |
Scroll output |
End |
Jump to bottom of transcript (on empty input) |
| Shortcut | Action |
|---|---|
Tab |
Cycle agent profile (build → plan → review → fix → test) |
F2 |
Cycle through recent models (forward) |
Shift+F2 |
Cycle through recent models (backward) |
| Shortcut | Action |
|---|---|
Ctrl+P |
Open command palette |
Ctrl+V |
Paste image from clipboard (TUI only) |
Ctrl+X M |
Switch model (model picker) |
Ctrl+X E |
Open external editor |
Ctrl+X L |
Switch session |
Ctrl+X N |
New session |
Ctrl+X C |
Compact context |
Ctrl+X S |
View status |
Ctrl+X A |
Agent profile picker |
Ctrl+X H |
Show help |
Ctrl+X Q |
Exit |
| Shortcut | Action |
|---|---|
↑ / ↓ |
Navigate options |
Enter |
Select / confirm |
Esc |
Close modal |
j / k |
Navigate (in info modals) |
When the agent asks a structured question:
| Shortcut | Action |
|---|---|
↑ / ↓ |
Select an option |
Enter |
Confirm selection (or accept suggested answer on empty input) |
0 |
Accept suggested answer |
1–n |
Select option by number |
c |
Type a custom answer |
Press Ctrl+P to open the command palette — a searchable list of all available commands. Type to filter, use ↑/↓ to navigate, and Enter to execute.
The TUI displays a status bar at the bottom showing:
- Current agent profile
- Active model
- Available shortcuts hint
Tab agent Ctrl+V image Ctrl+P commands !cmd shell @path search / inline wheel scroll
In the TUI, paste images from your clipboard with Ctrl+V or use the /image command. Images are processed through MiniMax native vision and the text description is injected into the conversation.
If your NCA_EDITOR_MODE environment variable is set to vi or vim, the REPL uses vi keybindings for line editing.
export NCA_EDITOR_MODE=viFor composing long messages, use /editor to open your configured external editor. The content is sent as your message when you save and close.
Editor resolution order:
NCA_EDITORenvironment variable[ui].editorin configEDITORenvironment variablevim(fallback)