Skip to content

Terminal

OxideTerm’s terminal is a Rust-native pipeline. Session bytes update alacritty_terminal state, OxideTerm builds terminal snapshots, and a GPUI painter draws text, selection, cursor, decorations, Sixel images, and Kitty graphics directly on the GPU surface.

There is no browser renderer or terminal bridge in this path. Input, output, resize events, search, selection, scrollback, and rendering remain inside the native process.

The terminal drains pending events with budgets tuned for three activity tiers:

TierTriggerBehavior
BoostThe previous drain exhausted its budgetPrioritizes throughput until queued output catches up
NormalRecent input or terminal activityKeeps interactive typing and fresh output responsive
IdleNo recent input or outputAvoids unnecessary redraw work

The application also supports Quality, Low Power, Compatibility, and Auto render profiles. Auto selects a policy from detected graphics capability; Compatibility disables expensive visual effects and terminal image decoding when required.

  • Local PTY sessions
  • SSH terminals
  • Telnet terminals
  • Serial terminals
  • Recorded-session playback

All session types use the same native terminal view and interaction model while their backends own protocol-specific connection and lifecycle behavior.

  • Open multiple tabs for local or remote sessions.
  • Split terminal tabs horizontally or vertically.
  • Keep independent shell channels, scroll positions, selections, and search state per pane.
  • Resize panes with draggable dividers.
  • Restore terminal topology as part of workspace and reconnect state.

Broadcast sends a command submitted from the terminal command bar to the current pane and selected terminal targets. Targets may be local or remote and can live in different tabs or split positions. Typing directly into the terminal surface is not mirrored key by key.

Broadcast is immediate. Review destructive commands before submitting them because each selected session receives the command independently.

Open search with ⌘F on macOS or Ctrl+Shift+F on Windows/Linux. Native search scans the active terminal’s retained scrollback, highlights matches, shows the current/total result count, and scrolls to the selected match.

Use Enter or the down arrow for the next result, Shift+Enter or the up arrow for the previous result, and Escape to close search. See Terminal Search for details.

OxideTerm records terminal output in asciicast v2 format:

  • Timestamped output events
  • Variable-speed playback
  • Search within playback content
  • Export for review or use with compatible asciinema tooling

The native terminal tracks Sixel and Kitty image assets alongside terminal state. Graphics decoding, pixel limits, placeholders, and cache size follow the active render profile so low-power or compatibility modes can reduce cost.

Use ⌘K on macOS or Ctrl+K on Windows/Linux to open the command palette. It provides native actions for tabs, connections, settings, search, and workspace tools.

Zen mode hides surrounding workspace chrome to maximize terminal space. Background images, opacity, blur, and fit are available from Appearance settings when the selected render profile permits them.

  • Saved connections and active nodes appear in the session tree.
  • Quick Connect opens temporary connections without requiring a saved profile.
  • OpenSSH configuration and encrypted .oxide bundles can populate saved state.
  • Multi-hop ProxyJump routes resolve through the node router.
  • Password, private key, certificate, SSH Agent, and keyboard-interactive authentication are supported where applicable.
  • Terminal, SFTP, forwards, and IDE consumers can share a physical SSH connection.
  • Host-key TOFU rejects unexpected changes to known hosts.
ActionmacOSWindows / Linux
New Connection⌘ NCtrl+N
Local Terminal⌘ TCtrl+T
Command Palette⌘ KCtrl+K
Terminal Search⌘ FCtrl+Shift+F
Inline AI⌘ ICtrl+Shift+I
Keyboard Shortcuts⌘ /Ctrl+/
Zen Mode⌘ Shift+ZCtrl+Shift+Z

Shortcuts are configurable. The keybindings settings page shows the active bindings for the current platform.

Local terminals use portable-pty, including ConPTY on Windows. Shell discovery covers common installations such as zsh, bash, fish, PowerShell, Git Bash, WSL2, and CMD according to the current platform.

Active SSH nodes can feed native monitoring and Host Tools for latency, processes, services, containers, ports, filesystems, packages, logs, and other sampled state. These tools share node identity and reconnect state with the terminal rather than opening an unrelated workspace.