Skip to main content

Terminals

PreviewAvailable on: WindowsShips in the preview channel only. Not a stable release.

The hero surface: splits, search, copy mode, bookmarks, and why closing the window does not kill your shell.

The terminal is the surface everything else grew around. Rendering is xterm.js; the PTY is owned by the local session host; and the daemon owns durable session state and reattach.

That last split is the important one: the window is a view, so closing it detaches rather than terminates.

Splitting and moving

ActionShortcut
Split horizontallyCtrl D
Split verticallyCtrl Shift D
Directional focusCtrl ←↑↓→
Cycle panesCtrl Tab
Move focusCtrl Shift ←↑↓→
Maximize paneCtrl B then Z
Reopen closed tabCtrl Shift T

On macOS, mod shortcuts use .

IMPORTANT

Ctrl B is a literal tmux-style prefix on every platform, including macOS. While it is armed, global shortcuts are suppressed — which is why shortcuts sometimes appear dead. Press Esc.

A workspace caps at 20 panes. Past that, terminal rendering and process supervision stop being predictable, so the cap is deliberate rather than arbitrary.

Working inside a pane

FeatureNotes
In-terminal searchFind text in scrollback
Context menuCopy, paste, clear, split
Vi copy modeKeyboard selection for vi users
Line bookmarksCtrl M, literal Ctrl everywhere
Scrollback persistenceSurvives restart
Shell integrationPrompt marks for navigation

Shell detection and allowlist

Harmony detects available shells and launches from an allowlist rather than executing anything named as a shell. Paste handling uses bracketed paste, and PTY output is filtered.

SECURITY

Pasting into a terminal is a classic way to run something you did not read. Paste warnings exist for that reason — they are not noise.

Floating panes

A pane can be floated out of the split tree when you want it visible alongside another layout rather than inside it.

Layout presets

Layouts can be saved and reapplied from the sidebar picker or the command palette. Worth doing once you find an arrangement that suits a project — it is faster than rebuilding splits each session.

Crash restore

If the UI exits unexpectedly, a restore banner offers to bring panes back, with a progress list that distinguishes a live reattach from a restored/restarted session.

NOTE

Restore reattaches sessions the daemon still holds. It cannot recover a session that was explicitly stopped, because stopping ends it.

Verifying what the daemon holds

nala sessions list

If a pane looks closed in the UI but the process seems alive, this is the authoritative answer.