Reference
Keyboard Shortcuts
| Shortcut | Action |
|---|
| Ctrl+] | Detach from session (session keeps running) |
| Key | Action |
|---|
↑/↓ or j/k | Navigate sessions |
1-9 | Select session N |
Enter | Attach to selected session |
c | New shell session (in the selected session's directory) |
, | Rename selected session (Ctrl+U clears the field, Esc cancels) |
x | Stop selected session |
r | Refresh session list |
g / G | Jump to top / bottom |
q or Esc | Quit |
| Mouse | Click to select, click the selected row to attach, wheel to move |
While attached, every key goes to the program except the prefix. Change the prefix with prefix = C-a in ~/.config/relay-tty/relayrc. Mouse events pass through to the program.
| Key | Action |
|---|
Ctrl+B n / p | Next / previous running session |
Ctrl+B 1-9 | Jump to session N (picker order) |
Ctrl+B c | New shell session in the current session's directory, then switch to it |
Ctrl+B , | Rename the current session (pins the title) |
Ctrl+B s or Esc | Back to the picker |
Ctrl+B d | Detach and quit the TUI (session keeps running) |
Ctrl+B x | Interrupt the foreground process (SIGINT) |
Ctrl+B k | Clear scrollback |
Ctrl+B a | Actions menu: interrupt, clear, rename, stop session |
Ctrl+B ? | Show this key list on the status row |
Ctrl+B Ctrl+B | Send a literal Ctrl+B to the program |
| Shortcut | Action |
|---|
| Cmd+Shift+N (macOS) / Ctrl+Shift+N | Create new session in current project directory |
| Shortcut | Action |
|---|
| Standard terminal shortcuts | Passed through to the remote shell |
| Shift+Enter | Insert newline without submitting (for programs like Claude Code that support extended key reporting) |
| Cmd+K (macOS) / Ctrl+Shift+K | Clear scrollback buffer |
| Ctrl+Shift+F | Toggle terminal search |
| Cmd+= / Cmd+- | Increase/decrease font size |
| Pinch-to-zoom | Increase/decrease font size (touch devices) |
Clearing the scrollback resets both the on-screen buffer and the server-side ring buffer for the session, so the reported output size drops back toward zero and the cleared scrollback stays cleared across reconnects and other connected devices. The delta-resume offset is preserved, so reconnecting clients still recover instantly.
Font size changes send SIGWINCH — the terminal columns and rows adjust to fit the viewport at the new font size. Scroll position is preserved.
| Shortcut | Action |
|---|
| Click sidebar session | Select that session's cell without leaving the view |
| Double-click sidebar session | Select and zoom that session's cell (same as double-clicking the cell) |
| Click cell | Select cell for keyboard input |
| Double-click cell | Zoom/expand cell |
| Cmd+= / Cmd+- | Increase/decrease font size of selected cell |
| Pinch-to-zoom | Increase/decrease font size (touch devices) |
| Escape | Unzoom, then deselect |
Picking a session in the sidebar reveals it in the view you are already in rather than navigating to the single-session page. In Grid and Lanes it unzooms whatever cell was zoomed and selects the picked session's cell; in Tiles it focuses that session's pane, opening one beside the focused pane if none is showing it. Double-clicking a sidebar session additionally zooms the cell in Grid and Lanes, replacing any cell that was already zoomed; in Tiles a double-click behaves like a single click. If a project, recency, or inactive filter was hiding the session, only the filter responsible for hiding it is relaxed, so the rest of your filtering survives.
Font size is saved per session and shared across all views (grid, lanes, and single-session). Every font size change sends SIGWINCH to recompute terminal dimensions — the container stays fixed while columns and rows adjust to fit the new cell size.
The mobile toolbar provides button equivalents for common actions:
| Button | Action |
|---|
| Keyboard icon | Open/close scratchpad |
| Search icon | Open terminal search |
| Microphone icon | Start voice input |
| Folder icon | Open file browser |
| Share icon | Open share dialog |