# Default keyboard shortcuts reference

Solo ships with a set of default shortcuts for navigating the app, managing processes, and working in the terminal. The **Hotkeys** tab in Settings shows configurable shortcuts; fixed shortcuts stay outside that list.

## Fixed global shortcuts

These are built in and can't be remapped.

| Shortcut | Action |
|----------|--------|
| `Cmd+C` (macOS) / `Ctrl+Shift+C` (Windows/Linux) | Copy selected text |
| `Cmd+V` (macOS) / `Ctrl+Shift+V` (Windows/Linux) | Paste |
| `Cmd+H` (macOS) / `Ctrl+H` (Windows/Linux) | Hide Solo (macOS) / minimize the window (Windows/Linux) |
| `Cmd/Ctrl+Q` | Quit Solo |

### Platform shortcuts

- **macOS:** ``Cmd+` `` and ``Cmd+Shift+` `` cycle Solo windows, even while a terminal is focused. `Cmd+M` minimizes the window, and `Cmd+Ctrl+F` toggles full screen. The **Window** menu also has **Minimize all** (`Cmd+Option+M`) and **Close all windows** (`Cmd+Option+W`).
- **Windows:** combinations that use the Windows key are reserved for the system and can't be assigned.

## General defaults

| Shortcut | Action |
|----------|--------|
| `Cmd/Ctrl+K` | Open [command palette](../command-palette/using.md) |
| `Cmd/Ctrl+Shift+K` | Open the [Actions palette](../command-palette/actions.md) |
| `Cmd/Ctrl+P` | Open [quick actions](../command-palette/context-actions.md) for the current selection |
| `Cmd/Ctrl+E` | Open [Quick jump](../command-palette/quick-jump.md) |
| `Cmd/Ctrl+Shift+E` | Open [Focus jump](../command-palette/focus-jump.md) for unread or favorite processes |
| `Cmd/Ctrl+Shift+P` | Open the [prompt template picker](../command-palette/prompt-template-picker.md) |
| `Cmd/Ctrl+T` | Open the [new agent/terminal picker](../command-palette/new-tab-picker.md) |
| `Cmd/Ctrl+W` | Close the selected agent or terminal |
| `Cmd/Ctrl+Shift+W` | Archive and close — complete the selected todo or archive the selected scratchpad, then navigate back |
| `Cmd/Ctrl+O` | Add a project (opens the folder picker) |
| `Cmd/Ctrl+,` | Open settings |
| `Cmd/Ctrl+Shift+U` | Check for updates |
| `Ctrl+Shift+Tab` | Switch to the previous workspace open in this window |
| `Ctrl+Tab` | Switch to the next workspace open in this window |
| `Cmd/Ctrl+F` | Open search for the active scratchpad list or editor, todo list, prompt template list, or terminal output; [terminal search](../terminal/search.md) requires a visible terminal |
| `Cmd/Ctrl+L` | Copy a [link](../integrations/deep-links.md) to the selected process, scratchpad, todo, or prompt template |
| `Cmd/Ctrl+Left` | Focus sidebar |
| `Cmd/Ctrl+Right` | Focus terminal |
| `Cmd/Ctrl+[` | Go back in navigation history |
| `Cmd/Ctrl+]` | Go forward in navigation history |
| `Cmd/Ctrl+Shift+[` | Jump to the previous favorite process |
| `Cmd/Ctrl+Shift+]` | Jump to the next favorite process |
| `Cmd/Ctrl+Shift+↑ / Cmd/Ctrl+Shift+↓` | Move to the previous or next visible sidebar item |
| `Alt+A / Alt+C / Alt+T` | Jump directly to the Agents, Commands, or Terminals section in the active project |
| `Cmd/Ctrl+Shift+=` | Increase application font size |
| `Cmd/Ctrl+Shift+-` | Decrease application font size |

Favorite cycling visits favorites across all projects in the current workspace; see [Process favorites](../sidebar/favorites.md). Workspace concepts are covered in [Workspaces](../workspaces/overview.md).

## Numbered navigation

| Shortcut | Action |
|----------|--------|
| `Option/Alt+1 – 9` | Select a visible project by its current sidebar order |
| `Cmd/Ctrl+1 – 9` | Select a visible top-level process in the active project by its current sidebar order; nested agents are skipped |

Workspace switching by number (**Switch to workspace 1–9**) exists as a bindable action but ships unbound — assign keys in **Settings > Hotkeys** if you want it.

## Sidebar navigation (sidebar must be focused)

| Shortcut | Action |
|----------|--------|
| `↑ / ↓` | Move selection up or down |
| `←` | Collapse / move up a level |
| `→` | Expand / move into a section or project |
| `Option/Alt+←` | Jump to the parent project header |
| `Option/Alt+↑ / Option/Alt+↓` | Jump to the previous or next section or project header |
| `Enter` | Invoke the selected sidebar row's primary action |

## Project header actions

| Shortcut | Action |
|----------|--------|
| `S` | Start auto-start commands |
| `A` | Start all commands |
| `P` | Stop all running commands |
| `R` | Restart running commands |

## Process row actions

| Shortcut | Action |
|----------|--------|
| `S` | Start or stop the selected command, terminal, or terminal-backed agent |
| `R` | Restart the selected running command, terminal, or terminal-backed agent; start a trusted stopped command |
| `C` | Clear output for the selected command or terminal |

## Terminal shortcuts

These shortcuts are global across sidebar and terminal focus. Focus and running-item navigation do not fire from ordinary text-entry controls.

| Shortcut | Action |
|----------|--------|
| `Cmd/Ctrl+←` | Move focus back to the sidebar |
| `Cmd/Ctrl+↑ / Cmd/Ctrl+↓` | Switch to the previous or next running sidebar item |
| `Cmd/Ctrl+=` | Increase terminal font size |
| `Cmd/Ctrl+-` | Decrease terminal font size |

## Unbound actions you can bind

Examples of actions that ship without a default shortcut are below. Assign one in **Settings > Hotkeys**:

- **Clear terminal** — clear the active terminal pane and scrollback without sending input to the process.
- **Reset terminal font size** — restore the terminal font to its default size.
- **Switch to workspace 1–9** — jump directly to a workspace by position.
- **Rename process** — open the rename dialog for the selected process.
- **Close window** — close the current workspace window, with the normal close confirmation. Its shortcut can't be shared with another command.
- **Next / previous project group** — jump between project groups in the sidebar, skipping runs of collapsed projects.

## Notes

- Numbered project shortcuts follow the current visible sidebar order. Numbered process shortcuts follow visible top-level-process order and skip nested agents. Filtering can change which item is `1`, `2`, and so on.
- Most configurable shortcuts can be remapped in **Settings > Hotkeys**.
- Fixed shortcuts like copy, paste, hide, quit, and sidebar up/down navigation aren't editable.
- See [Customizing keyboard shortcuts](./customizing.md) for remapping and disable behavior.

## When shortcuts are active

Shortcut routing depends on the current UI context:

- Sidebar shortcuts require sidebar focus. Project header and process row actions additionally require the matching row type to be selected.
- Modal and pane overlays block non-always shortcuts unless a command is explicitly allowed through that overlay.
- Some global navigation shortcuts are ignored while an ordinary input, textarea, or editable text area owns the keystroke. Previous/next visible-item and running-item navigation also require an existing sidebar selection.
- App shortcuts are suspended while **Settings > Hotkeys** is selected. The platform's physical close gesture is the exception and remains handled by Settings or a modal above it.

---

Are you a human? Read this doc on the web: https://soloterm.com/docs/keyboard-shortcuts/default-reference
