Keyboard shortcuts

Every shortcut across Wingman Chat, the Build composer and the desktop app, on one page. In chat, press Ctrl + Shift + ? any time to open the built-in shortcut helper. In Build, type ? into an empty message box.

Wingman has three keyboard surfaces. Chat shortcuts work in hosted chat and in the embedded chat inside the desktop app. Build shortcuts work in the Build message box in the desktop app. Desktop shortcuts work anywhere in the desktop app window. All three sets are listed below.

Chat: everywhere

These work on any chat page.

ActionShortcutWhat it does
Command PaletteCtrl/Cmd + KOpen the global command palette for quick access to features and pages.
SearchCtrl/Cmd + JActivate the main search box on the current page.
Quick Switch AgentCtrl + 1-9Jump between pinned agents in the sidebar.
Switch to Default ChatCtrl + backtickReturn to the default chat tab.
Toggle Left PanelCtrl/Cmd + [Show or hide the left sidebar.
Toggle Right PanelCtrl/Cmd + ]Show or hide the right panel.
Toggle Focus ModeCtrl/Cmd + \Zen mode: show only the current conversation and hide the rest of the UI.
Open Hotkey HelpCtrl + Shift + ?Open the shortcut helper overlay with every chat shortcut.

Chat: in a conversation

These act on the current conversation and composer.

ActionShortcutWhat it does
Send messageEnterSend what you typed in the composer.
Insert line breakShift + EnterNew line without sending.
Open Chat SettingsAlt + ,View and change settings for the current conversation.
Regenerate MessageAlt + RRegenerate the last reply.
Delete Last MessageAlt + DDelete the last message.
Delete and RegenerateAlt + Shift + RDelete the last reply and generate a new one.
Start a New TopicAlt + NSave the current topic and open a fresh one.
Add a User MessageAlt + EnterAdd your input as a message without triggering a reply.
Edit MessageAlt + double-clickHold Alt and double-click a message to edit it in place.
Clear Conversation MessagesAlt + Shift + BackspaceClear every message in the current conversation.
Save PageCtrl/Cmd + SWhen editing a page in Files: save all changes immediately.

Build composer

These work in the Build message box in the desktop app. Build remembers the prompts you send in each workspace, up to the last 500, on your machine only: the list is never synced and never sent anywhere. A slash at the start of the message lists the chat commands, and an at sign at the start of a word lists the files in your workspace. An exclamation mark in an empty message box runs a shell command instead of sending a message.

ActionShortcutWhat it does
Send messageEnterSend what you typed. While a run is going, the message waits in the queue.
Insert line breakShift + EnterNew line without sending.
Line break with a backslash\ then EnterEnd a line with a backslash and press Enter: the backslash becomes a new line and nothing is sent.
Send queued messages nowCtrl/Cmd + EnterWith nothing typed, interrupt the run and send the queued messages, the same as Send now.
Previous promptUpBring back the previous prompt sent in this workspace; press again to go further back. In an empty message box, the newest queued message comes back first, ready to edit.
Next promptDownGo to the next prompt, and past the newest, back to what you were typing.
Search promptsCtrl + RSearch the prompts sent in this workspace, on every platform. Type to filter, press Ctrl + R again for an older match, and Enter or Tab to put it in the message box without sending.
Stop or clearEscapeClose an open menu or card first. During a run, press Escape twice to stop it: the first press only asks. Otherwise, pressed twice quickly, it clears what you typed, and Up or Ctrl/Cmd + Z brings it back.
Switch permissionsShift + Tab or Alt + MMove between Ask, Auto and Full access. Full access still asks you to confirm. While a request waits for your answer, the permissions stay as they are and Shift + Tab moves the focus.
Choose the modelAlt + POpen the model menu with the current model selected.
PasteCtrl/Cmd + VPaste text, a screenshot or a copied file into the message box.
Add selection to BuildCtrl/Cmd + Shift + QIn the editor, with code selected: add it to the Build message box.
Chat commands/Type a slash at the start of the message to list the chat commands, each with what it does. Keep typing to filter, use Up and Down to choose, and Tab or Enter to put the command in the message box; Enter again sends it. A command typed in full is sent by the first Enter. Escape closes the menu.
Mention a file@Type an at sign at the start of a word to list the files and folders in your workspace. Keep typing to filter, then Tab or Enter to attach the file and put its path in the message. Pick a folder to see its files. A path with spaces goes in quotes. A message carries at most 10 attachments.
Run a shell command!Type an exclamation mark into an empty message box to switch it to shell mode, then Enter to run the command in your workspace folder. The command and its output go with your next message. The first command in a window asks you to allow shell commands, and a command Build judges risky asks again before it runs. Backspace or Escape on an empty line goes back to a message.
Edit in an editorCtrl + GOpen the draft in an editor tab, on macOS too. Save the tab to put the text back in the message box.
Show shortcuts?Type a question mark into an empty message box to list these shortcuts.

Desktop app

These work across the whole Wingman desktop window.

ActionShortcutWhat it does
Toggle Fullscreen ChatCtrl + Shift + F (Cmd + Shift + F on Mac)Expand chat into a distraction-free, whole-window layout. Works when focus is not inside a text editor.
Exit Fullscreen ChatEscapeLeave fullscreen chat and return to the normal layout.
Open Wingman HomeCtrl + Shift + M (Cmd + Shift + M on Mac)Jump to Wingman Home from any screen. Home is where you switch between Chat and Agent Dev.
Everything elseCtrl + Shift + POpen the command palette and type Axelera to see every command: Open Chat, Open Agent Dev, Restart Backend & Docker, Reload Dashboard, and more.

What Escape closes

Escape does what you expect everywhere: it closes the shortcut helper, the command palette, and other overlays in chat, and it exits fullscreen chat in the desktop app. In Build it closes an open menu first, and a run stops only on a second press.