-
-
Notifications
You must be signed in to change notification settings - Fork 76
Interactive Mode
Vinh Nguyen edited this page Aug 5, 2026
·
1 revision
The VT Code terminal UI is keyboard-first. Press ? on an empty input line to open a quick shortcut overlay.
| Shortcut | Description |
|---|---|
Ctrl+C |
Cancel the current generation or command (twice to exit) |
Ctrl+D |
Exit interactive mode |
Ctrl+L |
Clear the terminal screen, keep history |
Ctrl+T |
Toggle verbose tool output |
Alt+G |
Toggle the TODO task panel |
Ctrl+O |
Copy last agent response as markdown |
Alt+O |
Open/close fullscreen transcript review |
Ctrl+R |
Reverse-search command history |
Up/Down |
Navigate command history |
Tab |
Accept inline suggestion; cycle primary agents when idle |
Ctrl+Enter |
Process now / steer the active turn |
Shift+Tab / Alt+M
|
Cycle primary agents |
Esc + Esc
|
Open the rewind picker for checkpoint restore / summarize |
| Prefix | Action |
|---|---|
# |
Pick and run a custom prompt |
/ |
Issue a slash command |
! |
Bash mode — run a shell command directly |
@ |
Open the file picker / reference files |
@agent-<name> |
Insert a subagent mention |
Alt+P |
Inline prompt suggestion (ghost text, Tab accepts) |
-
\+Enter— quick escape (works everywhere) -
Option+Enter— macOS default -
Shift+Enter— native in Ghostty, Kitty, WezTerm, iTerm2, Warp; run/terminal-setupin VS Code, Alacritty, or Zed -
Ctrl+J— insert a line feed
When running in alternate-screen mode, the transcript uses a fixed fullscreen layout (like vim or less).
-
PgUp/PgDn— scroll half a page -
Ctrl+Home— jump to oldest content -
Ctrl+End— jump to newest, resume auto-follow - Mouse wheel scrolls when mouse capture is enabled (
ui.fullscreen.mouse_capture)
Alt+O opens the transcript review surface with search (/, n, N), paging (Ctrl+U/D, Ctrl+B/F), export to terminal scrollback ([), and opening in your editor (v).
Inside tmux, enable set -g mouse on for wheel scrolling. Avoid fullscreen mode in tmux -CC (iTerm2 control mode).
| Command | Description |
|---|---|
/help, /slash-commands
|
List available commands |
/model |
Switch model or provider (auto-compacts on switch) |
/theme <id> |
Switch the active theme |
/agents |
Create/inspect/edit subagent definitions |
/agent |
Inspect delegated child threads |
/plan |
Start or continue the planning workflow |
/compact |
Compact session history now |
/fork |
Fork the archived session |
/continue, /resume
|
Resume archived sessions |
/tasks |
Toggle the TODO panel |
/jobs |
Manage background/PTY jobs |
/pause, /resume, /stop
|
Steer an active run |
/local |
Manage local inference servers |
/mcp |
Manage MCP connections |
/skills |
Manage agent skills |
/vim, /vim on/off
|
Toggle Vim prompt editing for the session |
/statusline |
Generate a custom status-line command |
/secret add <provider> |
Store an API key in the OS keyring |
Set ui.vim_mode = true in vtcode.toml to enable Vim-style prompt editing. Supports INSERT/NORMAL modes with motions, change/delete/yank operators, text objects, p/P, J, and . repeat. No visual mode, macros, or multiple registers.
- Ask VT Code to run a command in the background, or press
Ctrl+Bmid-command to background it. - Background tasks return an ID and stream updates via
BashOutput; they auto-cleanup at session end. - Great for build systems, package managers, test runners, and dev servers.
-
!prefix runs a command without agent interpretation and streams output into the chat.
While a turn is running:
-
Ctrl+Enter— steer the active turn with your current draft -
/pause— pause at the next model/tool/approval boundary -
/stop— cancel immediately -
Ctrl+B— start/stop the configured default background subagent