# Keyboard Shortcuts

<TabSwitcher />

Pane is keyboard-first. Open the command palette with <KeyCombo keys={["⌘", "⇧", "P"]} /> to discover and search every available action.

Press <KeyCombo keys={["⌘", "⌥", "/"]} /> to open shortcut settings. There you can:

1. Turn Pane's shortcuts off, so a terminal app or agent gets every key. You can keep just the command palette shortcut on.
2. Add snippet hotkeys: <KeyCombo keys={["⌘", "⌥", "letter"]} /> types text you saved into the focused terminal.
3. Turn the Kitty keyboard protocol on or off for programs that ask for precise key reporting.

Commands that can't run right now still show in the palette, dimmed, with the reason.

In a terminal, <KeyCombo keys={["⌘", "K"]} /> clears the scrollback, like it does in most terminals.

## All shortcuts

<ShortcutGrid />

<Toggle title="Sidebar cycling follows where you clicked">
<KeyCombo keys={["⌘", "↑/↓"]} /> on macOS and <KeyCombo keys={["Ctrl", "↑/↓"]} /> on Windows/Linux cycle through the sidebar section you entered from.

Click a pane in **Pinned** and the shortcut moves through pinned panes. Click a pane in **Repositories** and it follows the repository list, including your project ordering and collapsed state.
</Toggle>

<Toggle title="Windows and Linux equivalents">
All shortcuts that use ⌘ (Command) on macOS use Ctrl on Windows and Linux. All shortcuts that use ⌥ (Option) on macOS use Alt on Windows and Linux.

For example: ⌘⌥3 on macOS becomes Ctrl+Alt+3 on Windows and Linux.
</Toggle>

Terminal shortcuts (like Claude Code slash commands) are passed directly to the running process and are not configurable in Pane. To customize terminal behavior, configure the agent itself. See [Configuration](/docs/configuration) for project-level settings.

## @ Terminal Reference

Cross-terminal communication. Type `@` in any terminal to pull content from another terminal in the same pane — your agents can share context without copy-pasting between tabs.

A picker appears instantly showing all other terminals. If you keep typing, it disappears and the `@` is treated as normal text.

Select a terminal, then choose:

- **Raw Paste** — pastes the last N lines of text directly into your session
- **Embed File** — saves to a temp file and inserts the file path (useful for large outputs)

Toggle between modes with <KeyCombo keys={["Tab"]} />. Change line count (100, 300, 500, All) with <KeyCombo keys={["←"]} /> <KeyCombo keys={["→"]} />. Select a terminal with <KeyCombo keys={["Enter"]} />.

## Terminal Shortcuts

Custom text-paste shortcuts for your terminal. Press <KeyCombo keys={["⌘", "⌥", "<key>"]} /> to paste preconfigured text into the active terminal — prompt templates, review instructions, debug commands, one keystroke.

For example, bind <KeyCombo keys={["⌘", "⌥", "T"]} /> to paste *"Think hard. Is this really the root cause or is this a symptom?"* into any agent session.

Configure in **Settings → Shortcuts** (<KeyCombo keys={["⌘", "⌥", "/"]} />). Each shortcut has a key, label, and text to paste. Hold <KeyCombo keys={["⌘", "⌥"]} /> to see all configured shortcuts as an overlay on screen.
