Terminal GuideTerminal Guide
tabby icon

Tabby

Terminal Emulators
macOSLinuxWindows
TypeScript

Highly customizable cross-platform terminal with SSH manager and serial console support.

Official Website

Features

SSH ManagerSerial ConsolePlugin SystemSplit PanesSFTP

Installation

Homebrew
brew install --cask tabby
Chocolatey
choco install tabby
Scoop
scoop install tabby

Why Use Tabby?

Tabby (formerly known as Terminus) is a highly customizable cross-platform terminal that integrates SSH connection management, serial console, and SFTP. Unlike lighter alternatives such as Hyper or WezTerm, Tabby focuses on built-in remote connection management. Its plugin system allows you to extend functionality further.

SSH Manager

Save and manage SSH connections as profiles. Supports key authentication, port forwarding, and jump hosts.

Serial Console

Connect to RS-232 serial ports. Perfect for embedded development and network device configuration.

Integrated SFTP

Use the integrated SFTP client for file transfers during SSH sessions. Upload via drag and drop.

Plugin System

Extend functionality with many plugins. Color schemes, SSH tabs, Docker integration, and more.

Main Features

SSH Connection Management

SSH connections are saved as profiles for one-click connectivity. Supports multiple authentication methods (password, public key, keyboard interactive).

SSH Features
# SSH Profile Features
# - Password authentication
# - Public key authentication (private key file)
# - SSH agent forwarding
# - Port forwarding (local/remote)
# - Connection via proxy/jump host
# - Auto-execute commands on connection

# SOCKS Proxy Configuration Example (set via GUI)
# Proxy type: SOCKS5
# Proxy host: localhost
# Proxy port: 1080

Serial Console

Supports RS-232 serial port connections. Convenient for embedded system development and network device console access.

Serial Configuration
# Serial Connection Configuration Parameters
# - Port: /dev/ttyUSB0 (Linux), COM1 (Windows)
# - Baud rate: 9600, 19200, 38400, 57600, 115200, etc.
# - Data bits: 7, 8
# - Parity: None, Odd, Even
# - Stop bits: 1, 2
# - Flow control: None, RTS/CTS, XON/XOFF

# Common Configuration Example (115200 8N1)
# Baud rate: 115200
# Data bits: 8
# Parity: None
# Stop bits: 1

SFTP Integration

Transfer files using the integrated SFTP panel during SSH sessions. Display local and remote file systems side-by-side with drag-and-drop support.

SFTP
# SFTP Features
# - Double-click to open files (local editor integration)
# - Drag and drop for upload/download
# - Right-click menu for operations (delete, rename, change permissions)
# - Directory bookmarks
# - Transfer queue management

# Open SFTP Panel: While in SSH session, press Cmd+Shift+F (macOS) / Ctrl+Shift+F

Platform-Specific Installation

Linux

Linux
# Debian/Ubuntu (.deb)
# Download .deb from https://github.com/Eugeny/tabby/releases
sudo dpkg -i tabby-*.deb

# Fedora/RHEL (.rpm)
# Download .rpm from https://github.com/Eugeny/tabby/releases
sudo rpm -i tabby-*.rpm

# Arch Linux (AUR)
yay -S tabby-bin

# AppImage
# Download AppImage from https://github.com/Eugeny/tabby/releases
chmod +x tabby-*.AppImage
./tabby-*.AppImage

Windows (winget)

Windows (winget)
# Install via winget
winget install Eugeny.Tabby

Official Website

Download the latest version from https://tabby.sh/.

Configuration and Customization

SSH Profile Configuration

Configuration files are managed in YAML format. You can configure via GUI or edit directly.

config.yaml (SSH)
# SSH Profile Configuration Example (in config file)
ssh:
  connections:
    - name: Production Server
      host: prod.example.com
      port: 22
      user: admin
      auth: publicKey
      privateKeys:
        - ~/.ssh/id_rsa
      jumpHost: bastion.example.com
      color: '#ff6b6b'
      scripts:
        - send: 'cd /var/log && ls -la'

    - name: Development Server
      host: dev.example.com
      port: 22
      user: developer
      auth: password
      color: '#4ecdc4'

Appearance Customization

config.yaml (Appearance)
# Appearance Settings
appearance:
  theme: 'One Dark'
  font: 'JetBrains Mono'
  fontSize: 14
  tabsOnTop: true
  vibrancy: true  # macOS transparency effect

terminal:
  bell: 'off'
  bracketedPaste: true
  scrollbackLimit: 10000

# Customize color schemes
# Additional themes can be installed from Settings > Plugins

Plugin Installation

Plugin Configuration
# Plugin Installation Steps
# Search and install from Settings > Plugins > Available plugins

# Popular Plugins:
# - tabby-docker: Connect directly to Docker containers
# - tabby-telnet: Telnet protocol support
# - tabby-save-output: Save output to file
# - tabby-quick-cmds: Quick command buttons
# - tabby-sync-config: Cloud sync for configuration

# Plugin Configuration Example (Docker)
docker:
  connection: local
  socket: /var/run/docker.sock

Hotkey Configuration

config.yaml (Hotkeys)
# Customize Hotkeys
hotkeys:
  toggle-window: ['Ctrl+Space']
  new-tab: ['Ctrl+Shift+T']
  close-tab: ['Ctrl+Shift+W']
  split-right: ['Ctrl+Shift+E']
  split-down: ['Ctrl+Shift+O']
  focus-next-pane: ['Ctrl+Tab']
  search: ['Ctrl+Shift+F']

Keyboard Shortcuts

ShortcutFunction
Ctrl+Shift+TOpen new tab
Ctrl+Shift+WClose current tab
Ctrl+Shift+ESplit pane right
Ctrl+Shift+OSplit pane down
Ctrl+TabFocus next pane
Ctrl+Shift+Left/RightMove tab
Ctrl+Shift+FSearch / SFTP panel
Alt+NumberSwitch to numbered tab
Ctrl+SpaceToggle window visibility
Ctrl+,Open settings

Tips

  • *Color-code Profiles: Set different background or tab colors for each SSH connection to visually distinguish production from development environments for safety.
  • *Port Forwarding: Configure port forwarding in SSH profiles to automatically tunnel local ports to remote servers on connection.
  • *Connection Scripts: Set commands to auto-execute after connecting via SSH profiles. Useful for directory changes and auto-attaching to screen/tmux.
  • *Configuration Backup: Enable cloud sync from Settings > Sync or manage config files with Git to share settings across machines.
  • *Docker Integration: Install the tabby-docker plugin to directly shell into running Docker containers.
Written by Dai AokiPublished: 2026-01-20

Related Articles

Explore More