Kiro CLI now has a new chat experience, TUI v2. It renders agent responses with syntax-highlighted code, displays tool progress visually, and gives you interactive panels for managing context, usage, and sessions, all without leaving your terminal.
Enable the TUI and start chatting:
kiro-cli settings chat.ui "tui" kiro-cli chat
Or try it for a single session:
kiro-cli --tui
Messages stream incrementally as the agent works, keeping the active render area compact. Agent responses render with full markdown support including syntax-highlighted code blocks, tables, lists, blockquotes, and nested formatting. Synchronized terminal updates eliminate flicker in terminals that support it.
Scroll through long responses with arrow keys.
Each tool type has a dedicated visual component for shell commands, file operations, grep, glob, code intelligence, and more. Tool calls show descriptive titles and progress indicators during execution. MCP tools display progress bars for long-running operations.
TUI v2 gives you multiple ways to communicate with the agent, from approving tool calls to running shell commands inline.
When a tool requires permission, a panel-based dropdown appears with Yes, Trust, and No options. When multiple tools need permission simultaneously, approvals are queued and presented one at a time.
For shell commands, you can trust at different granularity levels: exact commands, command prefixes, or base commands.
TUI v2 supports several input methods beyond standard text entry.
| Feature | How |
|---|---|
| Newline | Shift+Enter or Ctrl+J |
| File/directory reference | @path with Tab-complete picker |
| Paste image | /paste or paste from clipboard |
| Input queuing | Type your next message while the agent is processing |
| Command history | Up/Down arrows, persistent across sessions |
| Multi-line editor | /editor opens $EDITOR (defaults to vi) |
Run shell commands without going through the AI by prefixing with !:
!npm run build
Output streams in real time. TTY commands like vim, ssh, and top get full terminal access. Long output collapses to a head + tail view. Press Ctrl+O to expand.
Slash commands open interactive panels. All panels support fuzzy search and close with Esc.
| Command | Description |
|---|---|
/help | All available commands |
/context | Context breakdown with per-file token percentages. Supports add, remove, and clear subcommands |
/usage | Usage limits with progress bar and overage info |
/knowledge | Knowledge base management |
/prompts | MCP and file-based prompts via a selection menu |
/editor | Open $EDITOR to compose multi-line prompts |
/feedback | Submit feedback about Kiro CLI |
/paste | Paste an image from the clipboard |
/chat | Switch between previous sessions via a fuzzy picker |
/plan | Enter plan mode (also Shift+Tab) |
/agent | Switch between agents |
/model | Switch the active model |
/mcp | View MCP servers |
/tools | View tool permissions |
Press Shift+Tab or type /plan to enter plan mode. Use this when you have a complex task that benefits from upfront design, like refactoring a module or adding a feature across multiple files. The planner agent gathers requirements and produces an implementation plan. When you confirm, execution hands off to your original agent automatically.
Use /chat to switch between previous sessions, shown most-recent-first with titles and relative timestamps. Sessions are scoped to the current working directory, making it easy to pick up where you left off when working on a task across multiple sittings.
Press Ctrl+D or Ctrl+C to exit.
TUI v2 detects your terminal's capabilities and adapts automatically.
| Feature | Details |
|---|---|
| Progress indicator | Terminal tab/title bar shows agent state (streaming, pending approval, error) |
| Clickable hyperlinks | Markdown links are clickable in iTerm2, WezTerm, kitty, and Ghostty |
| Theme detection | Automatically detects dark/light mode from your terminal background |
| 256-color fallback | Graceful degradation for terminals without truecolor |
| Non-ASCII support | CJK characters, emoji, and accented letters render correctly |
You can customize how TUI v2 activates, how dense the layout is, and which terminal features are enabled.
The UI engine is determined in this order (highest to lowest):
--tui or --legacy-ui)KIRO_CHAT_UI)chat.ui)legacyOpt out of specific terminal features via environment variables:
KIRO_NO_HYPERLINKS=1 kiro-cli chat --tui # Disable clickable links KIRO_NO_PROGRESS=1 kiro-cli chat --tui # Disable progress indicator KIRO_NO_SYNCHRONIZED=1 kiro-cli chat --tui # Disable synchronized output
Switch back to the legacy interface:
kiro-cli settings chat.ui "legacy"
Or per-session:
kiro-cli chat --legacy-ui
A quick reference for all keyboard shortcuts available in TUI v2.
| Shortcut | Action |
|---|---|
| Shift+Enter | Insert newline |
| Ctrl+J | Insert newline |
| Shift+Tab | Enter plan mode |
| Up/Down | Navigate command history |
| Arrow keys | Scroll line-by-line |
| Tab | Drill into approval options / autocomplete file references |
| Ctrl+O | Expand collapsed shell output |
| Ctrl+D | Exit session |
| Ctrl+C | Exit session |
| Esc | Close panels, cancel agent execution, clear prompt queue |
The TUI is supported on macOS and Linux.
--no-interactive).Verify your setting is applied:
kiro-cli settings list | grep chat.ui
If the setting is correct but the TUI still doesn't load, try updating to the latest version of Kiro CLI.
If you see visual artifacts or broken rendering:
KIRO_NO_SYNCHRONIZED=1 kiro-cli chat --tui
TUI v2