? on an empty
prompt or run /help.
Keys marked as remappable can be moved to other keys. See
Change key bindings.
Everywhere
These keys work in the main view, whether you’re typing or navigating.Prompt Mode
Prompt Mode is the default. Keys type into the prompt unless listed here.Send and edit
Shift+Enter in your terminal
o4 seesShift+Enter only when the terminal reports it as a key of its own.
Terminals that support the kitty keyboard protocol do; others send the same
byte as Enter, so Shift+Enter sends the message instead. Ctrl+J inserts
a line break in every terminal.
- kitty
- Ghostty
- WezTerm
- Apple Terminal
Works without changes. Inside tmux, kitty needs this mapping as well as the
tmux settings below:
~/.config/kitty/kitty.conf
Shift+Enter through with these two
settings, then restart tmux:
~/.config/tmux/tmux.conf
csi-u line is required: with tmux’s default xterm format, o4 can’t
read the key and drops it. The kitty and WezTerm bindings send the sequence to
every program, not only o4, so other programs may show it as stray text.
History and completion
While a completion list is open,
Up and Down move through it and Esc
closes the list. Enter runs the highlighted slash command, or inserts the
highlighted file or model, whether or not a turn is running: /cos with
/cost highlighted runs /cost. Only when nothing is highlighted, because
what you typed matches no command, does Enter send the prompt exactly as you
typed it; while a turn is running or messages are queued, the list’s footer
then reads Enter Submit draft and the prompt is queued as a message.
While the model is working
When you edit a queued message with
Alt+Q, Enter saves your change and
Esc cancels the edit.
Images, chips, and suggestions
These keys work on an empty prompt when the item they act on is shown.Open views
Ctrl+M works only in terminals that report it as a separate key from
Enter. o4 turns that reporting off inside tmux, so there Ctrl+M acts as
Enter. /model opens the same model selector in any terminal, but while the
model is working it waits until the turn finishes.
Remappable actions
These keys work in Prompt Mode and Navigation Mode.Alt+A goes through ask, accept-edits, plan, review, auto, and
bypass. Before it switches to bypass, o4 asks you to confirm; if you
decline, the mode goes back to ask. Alt+S also asks before it switches to
a less strict sandbox tier.
Session tabs
Navigation Mode
PressEsc in an idle prompt to enter Navigation Mode. Letter keys run
commands instead of typing.
Approval panel
The approval panel replaces the prompt when a tool call needs your answer.
Pattern choices are offered for calls such as file edits, not for shell
commands. Without them, the panel lists Yes, proceed, No, cancel, and
No, and tell o4 what to do instead, and
2 and 3 choose the second and
third of those. While you type a note, Enter sends it with your answer and
Esc goes back to the choices.
Package install scripts
When a package install would run install-time scripts, the panel offers different choices:Network approval
Plugin permissions
When a plugin asks for a capability, such as running a command:Questions from the model
When the model asks you a question with a list of answers, the list appears in the transcript and takes the keyboard until you answer.
While you type your own answer,
Enter sends it and Esc goes back to the
list.
Confirmation dialogs
Yes-or-no dialogs, such as the one for switching tobypass mode:
Transcript Reader
While you type a search,
Enter runs it, Backspace deletes a character, and
Esc cancels it.
Other views
Transcript search
Opened withCtrl+F.
Prompt history search
Opened withCtrl+R.
Session Diff
Opened withCtrl+D or Alt+D.
Tool output
Opened withEnter or t on a tool block.
Activity log
Opened withl in Navigation Mode.
Agent and task selector
Opened withDown in the prompt (when you aren’t recalling earlier prompts)
or a in Navigation Mode, while sub-agents or background tasks are running.
Any other key closes the selector and works as usual.
Agent view
Shown when you open a sub-agent’s conversation.Agents dashboard
The agents dashboard, titled Agent command center, opens with/agents or
with e in the agent and task selector.
See Todos and background tasks for what each row and status means.
Panes
The todo list, the task board, Workspace Radar, and the panes that slash commands open below the prompt share these keys. They work while the prompt is empty; once you type, keys go to the prompt.
Some panes add their own keys:
The Help pane (
? or /help) scrolls with j / k or Up / Down,
and 8 lines at a time with PageUp / PageDown. Esc or q closes it.
The /context and /stats pane switches between its Context,
Session, and Optimize tabs with Tab / Shift+Tab or Right /
Left, and r refreshes it. See Context and cost.
Settings
In/config, Up / Down or j / k move between rows, Enter changes
the selected row, and Tab / Shift+Tab or Right / Left switch tabs.
Each change is saved as soon as you make it. Esc or q closes the panel,
and Backspace goes back from a row’s details. On the Providers tab, a
adds a provider.
Browsers
The plugin browser (/plugins), MCP browser (/mcp), agent definitions
browser (/sub-agents), and skills browser (/skills) share these keys:
The Errors tab and, in the plugin browser, the Marketplaces tab have
no filter. On the MCP browser’s Registry tab, typing edits the registry
search query instead; see MCP servers.
Session picker
/resume opens the session picker. Type to filter, Enter resumes the
selected session, Tab switches between this checkout and every directory,
and Esc closes it. A, R, and P open the actions menu, rename, and pin,
and are uppercase because lowercase letters go into the filter. See
Sessions for all its keys.
Side chat
/hey opens the side chat. Type a question and press Enter to send it, and
Up / Down scroll the answers. Once there’s an answer, y copies the last
question and answer, and f sends them to the main conversation. Esc
closes the side chat. See Writing prompts.
Setup wizards and Project Scout
- Setup wizard (
/onboard):Up/Downork/jmove,Entergoes to the next screen,Tabskips a screen where the footer offers it, andEscgoes back one screen, or closes the wizard from the first screen. See Quickstart. - Add custom provider (
aon the Providers tab of/config):EnterorTabgoes to the next field,Shift+Tabgoes back, andEsccancels. See OpenAI-compatible endpoints. - Project Scout (
/scout):Spaceselects or clears a suggestion,aselects all,nclears all,Enterapplies, andEsccancels. See Code intelligence.
Model and command pickers
The model selector (Ctrl+M), provider selector (Ctrl+P), and command
palette (/ in Navigation Mode) work the same way.
Time Machine
The Time Machine sidebar lists the turns of the session. Open it with/rewind
or a key you bind to toggle_time_machine. If you resize the window to fewer
than 60 columns while it’s open, it closes.
See Undo and rewind.