Keyboard Shortcuts
Updated August 16, 2026
The shortcut scheme follows a simple model: Cmd works at the gem (project tab) level, Cmd + Ctrl works at the shard (session) level, and Cmd + D / Cmd + Opt handle split panes.
Gems (project tabs)
| Shortcut | Action |
|---|---|
Cmd + T | New gem |
Cmd + W | Close gem (or the focused pane when split) |
Cmd + 1-9 | Jump to gem by position |
Cmd + Shift + ] | Next gem |
Cmd + Shift + [ | Previous gem |
Shards (sessions within a gem)
| Shortcut | Action |
|---|---|
Cmd + Ctrl + T | New shard |
Cmd + Ctrl + W | Close shard |
Cmd + Shift + T | Resurrect the most recently closed shard (undo-close) |
Cmd + Ctrl + 1-9 | Jump to shard by position |
Cmd + Ctrl + ] | Next shard |
Cmd + Ctrl + [ | Previous shard |
Split panes
| Shortcut | Action |
|---|---|
Cmd + D | Split / unsplit toggle |
Cmd + Opt + Left | Move focus to the left pane |
Cmd + Opt + Right | Move focus to the right pane |
Cmd + D changed in v2.75.0. In older versions it made a new shard, now it toggles a split pane. To make a new shard, use Cmd + Ctrl + T.
Terminal
| Shortcut | Action |
|---|---|
Cmd + K | Clear screen and scrollback (keeps the shell prompt) |
Cmd + F | Find in scrollback |
Cmd + + | Increase font size |
Cmd + - | Decrease font size |
Cmd + 0 | Reset font size |
Cmd + Ctrl + F | Toggle full screen |
Cmd + Y | Toggle the chat dock for the focused shard |
Cmd + Shift + C | Copy selection |
Cmd + Shift + V | Paste |
Cmd + click | Open a file path or URL under the pointer |
Cmd + Y opens the chat dock for the focused shard, read from the transcript rather than the terminal renderer. You can read and drive the conversation without the TUI in the way. Tool calls appear as their own rows there: click one to expand its full output, with a copy button. You can also click a collapsed … +N lines (click to expand) row straight in the terminal.
Cmd + F opens a find bar over the terminal. Type to search, Enter / Shift + Enter jump to the next / previous match, a count shows how many matches were found, and Esc closes the bar.
Cmd + Shift + F opens global history search: a floating palette that searches everything your agents ever said and every command that ran, across all gems and shards, open or closed. Arrow keys move through results, Enter jumps to an open shard or shows the surrounding conversation for closed history, and Esc (or the close button) dismisses it. Scope and kind filters narrow to the current gem, conversations, or commands.
Cmd + K and Cmd + F are claimed by crystl at the app level (the same way iTerm and Warp claim them), so they won’t reach the program running in the terminal.
Typing a new line
Shift + Return inserts a new line. Plain Return sends. Reach for it whenever you want a multi-line message and don’t want to fire it off halfway through writing.
It works where you’ll want it most: typing a prompt to Claude Code in the terminal. No /terminal-setup step, no config. crystl passes the key through and Claude Code picks it up. Other agents handle multi-line input their own way, so check their docs if Shift + Return doesn’t behave there.
The same key works in crystl’s own text boxes, though plain Return varies by field:
| Where | Return | Shift + Return |
|---|---|---|
| Terminal prompt (Claude Code) | Sends the message | New line |
Chat composer (Cmd + Y, quest chat, side quests) | Sends the message | New line |
| Workbench task description | New line | New line |
| Workbench task title | Commits the rename | Commits the rename |
The Workbench description is the odd one out: it’s a multi-line note, so plain Return already gives you a new line. Each line round-trips as its own detail line in WORKBENCH.md. Esc hands focus back to the terminal.
Facet inserts
| Shortcut | Action |
|---|---|
Cmd + Opt + 1 | Fire the facet insert bound to bar slot 1 into the active shard |
Cmd + Opt + 2 | Fire the facet insert bound to bar slot 2 |
Cmd + Opt + 3 | Fire the facet insert bound to bar slot 3 |
Approval management
| Shortcut | Action |
|---|---|
Cmd + Return | Allow the focused project’s current approval |
Cmd + Esc | Deny the focused project’s current approval |
Cmd + Shift + Return | Allow all queued approvals |
The approval chords act on the focused project, so the pending panel you answer is always the one belonging to the gem in front of you. A queued approval in a sibling project is left alone.
Plain Return in the terminal does not approve anything. It used to, and that is gone. Return sends your message, nothing more. To answer an approval, use Cmd + Return / Cmd + Esc, click Allow or Deny on the panel, or answer the agent’s own menu in the terminal.
App
| Shortcut | Action |
|---|---|
Cmd + , | Open settings |
Cmd + Q | Quit crystl |
Hold Option at launch | Fresh start: open with no restored gems |