Skip to main content
Use these keys to send and steer messages, switch modes, answer approvals, and review edits without leaving the keyboard. The VS Code extension and the terminal UI each have their own set.

VS Code extension

Chat input

To leave shell or serial-send mode, press Escape (this also clears what you typed), or press Backspace on an empty input. See Sessions and context for how steering and the queue work.

Command menu and mention list

Approval requests

These keys work while an approval card is showing, unless you’re typing in another text field: Typing any other character starts your instructions in the field. See Tool approvals for what each choice does.

Edit review

These keys work in the editor while the focused file has pending Embedder edits: When you open a proposed edit from an approval card, the review tab has its own keys: See VS Code extension for the full review workflow.

Command Palette

Open the Command Palette with Cmd+Shift+P on macOS or Ctrl+Shift+P on Windows and Linux, then type Embedder to find the extension’s commands. For example:
  • Embedder: New Embedder Chat in Editor
  • Embedder: Toggle Embedder Monitor
  • Embedder: Stop Generation
  • Embedder: Switch Model
Apart from edit review, Embedder’s commands have no default keys. To add one, run Preferences: Open Keyboard Shortcuts, search for Embedder, and assign a key to the command.

Terminal UI

Use these keys in the interactive terminal UI that opens when you run embedder. On macOS, Ctrl is the Control key, not Cmd, and Alt is the Option key. If Alt shortcuts do nothing, set your terminal to send Option as Meta.

Session controls

Chat input

Serial-send mode needs a connected serial port. Without one, Embedder shows Connect a serial port to send messages. Press Backspace on an empty input to leave either mode.

Approval requests

Navigation keys move through pickers, lists, and panels, such as the ones /history, /project, and /theme open. Emacs keys are on by default. Run /keybindings to choose a scheme, or /vim or /emacs to switch directly. In Conversation History, which /history opens, press Alt+R to rename the highlighted conversation or Alt+D to delete it. In Vim mode, the status bar shows -- INSERT -- while you type. Press Escape in the chat input or a search box to switch to -- COMMAND --, where the letter keys navigate. Press i to go back to typing. In Emacs mode, letter keys always type into a search box, so use the Ctrl keys or arrow keys to move. Running /vim or /emacs for the scheme that’s already on turns both schemes off. Only the arrow keys, PageUp, PageDown, Home, End, Enter, Space, Escape, and Tab then navigate.

Customize navigation keys

Embedder saves your scheme to ~/.embedder/keybindings.json. To rebind an action, add a customBindings entry that lists only the actions you change. Your keys replace that action’s default keys. For example, to move the undo-rewind action from Alt+Z to Ctrl+U in Emacs mode:
~/.embedder/keybindings.json
Each binding is an object with a key name, such as u, down, pagedown, return, escape, or space, plus optional ctrl, alt, shift, and meta flags set to true. You can rebind these actions: Keep the mode field, set to emacs or vim. Restart the terminal UI after you edit the file. If the file isn’t valid, Embedder ignores it and uses the default keys. Custom bindings don’t apply while both schemes are off. See Use Embedder in the terminal for what the terminal UI can and can’t do.
Last modified on November 13, 2026