Keyboard shortcuts
A reference for every keyboard shortcut Friday handles inside its terminal UI. Some shortcuts depend on your terminal emulator: notably, Shift+Enter only works after running /terminal-setup in VS Code or Cursor. Ctrl+J is the always-available fallback.
This page covers in-app shortcuts only. For CLI flags, see the CLI reference.
Input
Shortcuts that act on the message input field.
| Shortcut | What it does | Notes |
|---|---|---|
/ | Open the slash command menu | Type to filter commands. |
@ | Reference a file or folder | Opens the file/folder autocomplete picker. |
! | Enter Bash mode | Only when the input is empty. See Bash mode. |
Enter | Submit the message | Or run the bash command in Bash mode. |
Ctrl+J | Insert a newline | Works in every terminal. |
Shift+Enter | Insert a newline | Requires /terminal-setup in VS Code or Cursor. See Installation. |
Ctrl+V | Paste an image from the clipboard | Inserts a [Image N] placeholder. See File support. |
Ctrl+L | Clear the input field | Does not affect queued messages. |
Backspace (empty input, in Bash mode) | Exit Bash mode | Returns to the normal input. |
Drag-and-drop is also supported: drop an image or PDF anywhere in the Friday window to attach it as [Image N] or [PDF N].
Agent control
Shortcuts that act on the running agent.
| Shortcut | What it does | Notes |
|---|---|---|
Esc | Interrupt the current agent operation | Stops the in-flight tool call or response. |
Alt+Enter | Interrupt and immediately submit the current input | One step instead of Esc then Enter. |
Ctrl+S | Interrupt and immediately submit | Fallback for terminals where Alt+Enter is intercepted. |
Modes
| Shortcut | What it does | Notes |
|---|---|---|
! (empty input) | Enter Bash mode | One-shot shell command. See Bash mode. |
Backspace (empty input, in Bash mode) | Exit Bash mode | |
Esc (in a modal) | Close the modal | Used for the /diff modal and other modal views. |
Confirmation prompts
When Friday asks for approval before running a command, the prompt accepts:
| Shortcut | What it does | Notes |
|---|---|---|
Enter | Approve / Yes | |
Esc | Reject / No | For inline agent confirmations, any key other than Enter is treated as No. |
See Permissions for when these prompts appear.
System
| Shortcut | What it does | Notes |
|---|---|---|
Ctrl+C (twice in a row) | Exit Friday | A single press is reserved by some terminals for the standard interrupt signal. |
To copy text out of Friday, highlight it with the mouse. Friday's UI uses your terminal's native selection: in iTerm2 and most modern terminals, highlighting copies to the clipboard automatically. Ctrl+C for copy is not bound inside Friday.
Terminal-specific notes
- macOS Terminal (default):
Ctrl+Jworks for newlines.Shift+Enterdoes not. Rendering can also look off; see the Installation notes for fixes. - iTerm2:
Ctrl+Jworks.Shift+Enterrequires manual key mapping (Profiles -> Keys), or stick withCtrl+J. If you see scrollbar glitches, see the Installation workaround. - VS Code / Cursor integrated terminal: Run
/terminal-setuponce andShift+Enterwill insert a newline.Ctrl+Jworks without setup. - Other terminals:
Ctrl+Jis the safe default.Alt+EnterandCtrl+Smay be intercepted by the terminal or shell; if one is captured, use the other.
Read next
- Installation for
/terminal-setupand terminal recommendations. - Bash mode for the
!prefix and how commands run. - Permissions for confirmation prompts and approval modes.
- File support for clipboard paste and drag-and-drop.