Vis

Keyboard shortcuts

Use these keyboard shortcuts, also called keybindings, in the Vis terminal app. With them you can send a message, start a new line, run commands, move through a session and edit your text. The desktop and phone app has a smaller set of keys.

To see the most common shortcuts while you work, press Ctrl+X h in Vis.

When to use

  • Shift+Enter sends your message instead of starting a new line. Your terminal needs a setting, or you need another key. See New lines in your terminal.
  • You want a command but do not know its key. Press Ctrl+X p and type part of its name, or look it up in Run a command.
  • You want to read an earlier part of a long session. Use the keys in Move through a session to scroll, jump and fold.
  • You want to fork a session, go back to an earlier turn or move a session to a group. Use the keys under Sessions and In Projects. The Sessions guide explains each task.
  • You want to dictate a message, or voice recording fails. See Use voice input.
  • You want to see the pictures in a message larger. See View pictures.
  • You want to send an earlier message again from the desktop or phone app. See In the desktop or phone app.
  • You want to know what cancelling or quitting does to your queued messages. Read Control a running session instead.

Send a message or start a new line

Keys What they do
Enter Send the message, or queue it while Vis is working
Shift+Enter or Alt+Enter Start a new line

New lines in your terminal

Ghostty, kitty, iTerm2, WezTerm, Alacritty, foot, xterm, Konsole and Windows Terminal, also with WSL, report Shift+Enter without extra setup. In Windows Terminal, Alt+Enter switches to full screen, so use Shift+Enter there.

Other terminals need a setting or another key. These are limits of the terminal, not something Vis can change:

  • GNOME Terminal and other VTE-based terminals: Shift+Enter sends the same code as Enter, so use Alt+Enter.

  • Terminal on macOS: turn on Use Option as Meta key in Settings > Profiles > Keyboard, then use Option+Enter.

  • tmux: add set -g extended-keys on to ~/.tmux.conf.

  • Windows Terminal over SSH: use this when Vis runs on a computer that you connect to with ssh. Open Settings and select Open JSON file. Then add this entry to the actions list:

    { "command": { "action": "sendInput", "input": "\u001b[13;2u" }, "keys": "shift+enter" }
    

Run a command

Most commands use Ctrl+X and a letter: press Ctrl+X, then the letter. After Ctrl+X, Vis shows the most common choices. The other commands on this page work the same way. A command that needs something first, such as a turn to fork, appears once it can act.

Keys What they do
Ctrl+X p Open the command palette with every command, then type to filter
Ctrl+X h Show or hide the keyboard shortcuts

Sessions

Keys What they do
Ctrl+X n Start a new session
Ctrl+X s Switch to another session
Ctrl+X D (Shift+D), Ctrl+X Delete or Ctrl+X Backspace Delete this session permanently. Vis asks you to confirm first
Ctrl+X A (Shift+A) Archive this session. If the session is archived, restore it. You cannot archive a session while it works
Ctrl+X w Open Projects, the list of saved sessions
Ctrl+X y Fork this session: open a new session with a copy of the whole conversation
Ctrl+X t Fork from an earlier turn: choose the last turn the new session keeps
Ctrl+X d Move this session to a group
Ctrl+X u Show session metrics: context health, totals and cache
Ctrl+X k Send the queued messages now: the running turn reads them at its next step
Ctrl+X 1 to 9 Send that queued message now, or press again to keep it for the turn end

Models and answers

Keys What they do
Ctrl+X o Open Providers to add a provider and sign in
Ctrl+X c Choose a model from a searchable list
Ctrl+X m Switch to the next model
Ctrl+X r Change the thinking level
Ctrl+X l Change the answer length
Ctrl+X q Turn fast mode on or off for OpenAI Codex models
Ctrl+X x Show or hide the thinking summary for Claude models

To turn the thinking summary on or off for Claude models, press Ctrl+X x or click the thinking label in the footer. You can also choose Thinking Summary in the command palette. With the summary off, Claude still thinks, but Vis shows no thinking text. These controls appear only when the current model supports them.

With Simplified thinking modes on, Ctrl+X r switches to the next of quick, balanced and deep. With the setting off, Ctrl+X r opens a list of every thinking level that the current model offers. The setting is in the top section of Settings. You can also click the reasoning label in the footer.

Keys What they do
Ctrl+X f Search in the session
Ctrl+X a Attach a file
Ctrl+X i Review your attached files and the files this session produced
Ctrl+X I (Shift+I) Show the pictures in this session one at a time. See View pictures
Ctrl+X v Start or stop a voice recording
Ctrl+X b Turn voice conversation on or off: Vis reads each answer aloud and sends each recording once it is transcribed
Ctrl+X V (Shift+V) Show the live view panel at the side, or move the focus to it. In the panel, ↑ and ↓ select a view, ← folds it, → unfolds it, Tab shows the next extension and Esc closes the panel

View pictures

If a message has two or more pictures, Vis shows them together, like the desktop and phone app. In a terminal that can show pictures, two pictures sit side by side. Three or more pictures become small previews with a number and a name under each. kitty, Ghostty, WezTerm, Warp and iTerm2 can show pictures. In other terminals, Vis shows a numbered table, and each row has an Open button.

To see one picture larger, click it or its name. To see every picture in the session, press Ctrl+X I. The picture viewer opens and fills most of the window. In a terminal that cannot show pictures, the viewer is a numbered list.

To see a detail, zoom in. Turn the mouse wheel over the picture to zoom at the pointer, or press + and -. The header shows the zoom, for example 250%. Then drag the picture with the mouse or use the arrow keys to move it. Press 0 to see the whole picture again.

Keys What they do
← or ↑ Show the previous picture. On a zoomed picture, move it
→ or ↓ Show the next picture. On a zoomed picture, move it
PgUp or PgDn Show the previous or the next picture
Home or End Show the first or the last picture
1 to 9 Show the picture with that number
+ or - Zoom in or out
0 Show the whole picture
Enter or o Open the picture in the image viewer of your computer
Esc or q Close the picture viewer

Use voice input

Connect a microphone before you start the TUI. On macOS, allow microphone access for your terminal or Vis when macOS asks.

Press Ctrl+X v to start recording. Press it again to transcribe the recording into your message.

Vis first tries Java Sound. If Java Sound cannot capture, macOS can use SoX or FFmpeg. Vis checks PATH and both standard Homebrew locations: /opt/homebrew/bin and /usr/local/bin.

If neither recorder is installed, install one:

brew install sox

Use brew install ffmpeg if you prefer FFmpeg. Vis does not install these programs automatically.

On Linux, the fallback recorders are pw-record and parec. WSL2 also requires a reachable WSLg audio server.

To check discovered audio devices and recorder paths, run:

vis-agent tui --check-audio

The check lists devices and executable paths. It does not test microphone permissions or capture audio.

If a recorder is installed but capture fails, check System Settings > Sound > Input on macOS. If macOS reports denied access, allow it under Privacy & Security > Microphone. Restart the TUI after connecting or selecting a different microphone.

Cancel or quit

Keys What they do
Esc or Ctrl+G Cancel the running turn, close a dialog or clear your draft
Ctrl+C Clear your draft, cancel the running turn or quit Vis

Control a running session explains which of these happens when, and what happens to your queued messages.

Move through a session

Keys What they do
Alt+>, Ctrl+X j, Ctrl+L or Ctrl+End Jump to the latest message
Alt+< Jump to the start of the session
Ctrl+V or Page Down Scroll down one screen
Alt+V or Page Up Scroll up one screen
Ctrl+X Tab or Ctrl+X Shift+Tab Fold or unfold every foldable block, such as thinking and tool calls
Ctrl+X z Label every fold, then press a label's letter to fold or unfold it

You can also click ↓ messages when it appears to jump to the latest message.

On macOS, Alt is the Option key. Many macOS terminals need a setting before Option works as Alt, such as Use Option as Meta key in Terminal.

In Projects

Press Ctrl+X w to open Projects. While it has focus, these keys act on the selected row. Press ? to see them in Vis.

Keys What they do
↑ or ↓, Ctrl+P or Ctrl+N Move between rows
← or → Fold or unfold the row
Enter Open the row
g Open the row menu
n Start a session here
G (Shift+G) Create a group
a Add a project
+ Add a group, session or project here
Space Select or clear a session
m or u Move sessions to a group, or take them out of it
f Star or unstar a session
R (Shift+R) Rename the row
A (Shift+A) Archive or restore the row
v Show or hide archived rows
D (Shift+D) Delete the row. Vis asks you to confirm first
/ Search sessions
Esc or Tab Return to the chat

Edit your message

Keys What they do
Ctrl+A Go to the start of the line
Ctrl+E Go to the end of the line
Ctrl+B Move back one character
Ctrl+F Move forward one character
Ctrl+P Go to the previous line
Ctrl+N Go to the next line
Alt+← or Alt+→ Move one word back or forward, where your terminal supports it
↑ or ↓ Move the cursor up or down, or step through earlier messages
Ctrl+T Swap two characters next to the cursor
Ctrl+K Delete to the end of the line
Ctrl+U Delete to the start of the line
Ctrl+W Delete the word before the cursor
Ctrl+D Delete the character after the cursor

To copy and paste, use your terminal: select text to copy it, then paste with your terminal's paste key.

In the desktop or phone app

Use these keys in the message box of the Companion app, on a computer or with a keyboard on a tablet.

Keys What they do
Enter Send the message
Shift+Enter Start a new line
↑ Show your previous message in this session. Press again to go further back
↓ Go forward to a newer message, and then back to the text that you typed

↑ and ↓ show an earlier message only when the cursor is on the first or the last line. In a message with more lines, they first move the cursor. The app keeps your 20 newest messages. It does not keep commands such as /reload, but it keeps /goal. Messages from other sessions through Council are not included. On a phone with no keyboard, Return starts a new line, and the send button sends the message.

To see a picture larger in the app, click or tap it. If the message has more pictures, use these keys in the picture viewer. On a phone, swipe left or right instead.

Keys What they do
← or → Show the previous or the next picture
Esc Close the picture viewer

See also

  • Sessions — what Enter, Esc and Ctrl+C do while Vis works, and how to find, fork and organize sessions with the keys on this page.
  • Getting started — start Vis in your terminal and send a first task.
  • Reporting a bug — report a shortcut that does not work in your terminal, with details that let someone reproduce it.