Built by @ghostty-org on GitHub. This page was written by @iluxav from public sources, last updated for v1.3.1 (2026-03-13), and may lag behind new releases.
Run a GPU-rendered terminal with native windows, tabs and splits on macOS and Linux, set up in a plain-text config file with built-in themes and shell integration.
What you can do with it
Run a terminal emulator with a native app on macOS (SwiftUI, Metal) and Linux (GTK, OpenGL).
Good to know
No Windows version; the README roadmap lists Windows terminals as not started.
Since v1.0.1
Open several windows, tabs and splits in one terminal app.
Since v1.0.1
Set fonts, colors, keybindings and window behavior in a plain-text config file.
Since v1.0.1
Switch the color scheme to a built-in theme, or one of your own in ~/.config/ghostty/themes, with the theme option.
Since v1.0.1
Get new tabs and splits that open in the current directory, prompt jumping and no close prompt at an idle shell, through automatic shell integration.
Good to know
Detected automatically for bash, elvish, fish and zsh; other shells need manual setup.
Since v1.0.1
Bind keys to Ghostty actions, including global shortcuts that work when Ghostty is not focused.
Good to know
Global keybinds do not work in every environment.
Since v1.0.1
Toggle a quick terminal that slides in from a screen edge or appears in the center.
Good to know
No default keybind. On Linux it needs a Wayland compositor that supports wlr-layer-shell.
Since v1.0.1
Choose server-side, client-side or no window decorations on Linux with window-decoration.
Good to know
Server-side decorations need a compositor that supports them.
Since v1.1.0
Show all 16
Run any keybind action by name from a command palette.
Since v1.2.0
Show an image behind the terminal text with background-image, with options for opacity, position, fit and repeat.
Since v1.2.0
See a native progress bar when a program reports progress with the OSC 9;4 sequence.
Since v1.2.0
Undo closing a window, tab or split within a set time.
Good to know
macOS; the time is set with undo-timeout.
Since v1.2.0
Search the scrollback from a search bar and step through the matches.
Since v1.3.1
Get a notification when a long command finishes, with notify-on-command-finish.
Good to know
Relies on shell integration to know when a command ends.
Since v1.3.1
Show a native scrollbar, set with the scrollbar option.
Since v1.3.1
Control Ghostty from AppleScript on macOS.
Good to know
macOS only; can be turned off with macos-applescript.
Since v1.3.1
Before you upgrade
Newest first
v1.3.12026-03-13
The default copy action now puts formatted text (plain plus rich) on the clipboard instead of plain text only.
Scrollback search (Cmd+F on macOS, Ctrl+Shift+F on Linux); native scrollbars (scrollbar option); notifications when a command finishes; key tables for modal keybinds; click to move the cursor in prompts; AppleScript on macOS. Copying now puts formatted text on the clipboard by default, and Linux font hinting defaults to light. Groups v1.3.0 and v1.3.1.
Also: tab-inherit-working-directory and split-inherit-working-directory; set_tab_title and set_surface_title keybind actions; Unicode 17.
v1.3.1. Linux needs GTK 4.14 and libadwaita 1.5.
Added: Search the scrollback from a search bar and step th…Added / inferred: Get a notification when a long command finishes, wi…Added: Show a native scrollbar, set with the scrollbar opt…Improved: Bind keys to Ghostty actions, including global shor…Improved / inferred: Get new tabs and splits that open in the current di…Added: Control Ghostty from AppleScript on macOS.Behavior changed: Run a terminal emulator with a native app on macOS…Behavior changed: Set fonts, colors, keybindings and window behavior…
Keep the ghostty command reachable from your shell even when your shell config resets PATH.
Details
Shell integration adds GHOSTTY_BIN_DIR to PATH; mouse-scroll-multiplier takes separate values for precision (trackpad) and discrete (wheel) scrolling. Groups v1.2.1 and v1.2.2.
v1.2.2.
Improved: Get new tabs and splits that open in the current di…Improved: Set fonts, colors, keybindings and window behavior…
Run any keybind action by name from a command palette.
Details
Command palette (Ctrl+Shift+P on Linux, Cmd+Shift+P on macOS); background-image options; native progress bars for OSC 9;4; quick-terminal-size; the quick terminal on Wayland; global keybinds on GTK; FreeBSD support. Keybinds use W3C key codes and the physical: prefix is gone; libadwaita is required on Linux.
Also: Renamed options that still load: adw-toolbar-style is gtk-toolbar-style, gtk-tabs-location=hidden is window-show-tab-bar=never, selection/cursor-invert-fg-bg map to cell-foreground/cell-background colors, bold-is-bright maps to bold-color. Commands accept direct: and shell: prefixes.
v1.2.0. Linux needs libadwaita and OpenGL 4.3.
Added: Run any keybind action by name from a command palet…Added: Show an image behind the terminal text with backgro…Added: See a native progress bar when a program reports pr…Added: Undo closing a window, tab or split within a set ti…Improved: Toggle a quick terminal that slides in from a scree…Improved: Bind keys to Ghostty actions, including global shor…Action required / inferred: Bind keys to Ghostty actions, including global shor…Improved / inferred: Get new tabs and splits that open in the current di…Improved: Run a terminal emulator with a native app on macOS…Action required / inferred: Run a terminal emulator with a native app on macOS…Behavior changed: Set fonts, colors, keybindings and window behavior…
Let a Wayland compositor draw Ghostty's window borders and title bar on Linux.
Details
window-decoration accepts auto, server, client and none, and Ghostty follows the compositor's preference on Wayland. Keybinds can use the performable: prefix; macOS gets the alpha-blending option. background-blur-radius was renamed to background-blur (the old name still works).
Also: split-divider-color, gtk-custom-css, window-position-x/-y on macOS.
v1.1.0.
Added: Choose server-side, client-side or no window decora…Improved: Bind keys to Ghostty actions, including global shor…Behavior changed: Run a terminal emulator with a native app on macOS…
Use a GPU-rendered terminal with native windows, tabs and splits on macOS and Linux.
Details
First public release (v1.0.0, with the v1.0.1 fixes): a SwiftUI app with a Metal renderer on macOS and a GTK app with OpenGL on Linux, configured in a plain-text config file.
Download from ghostty.org or distribution packages; macOS and Linux.
Added: Run a terminal emulator with a native app on macOS…Added: Open several windows, tabs and splits in one termin…Added: Set fonts, colors, keybindings and window behavior…Added: Switch the color scheme to a built-in theme, or one…Added: Get new tabs and splits that open in the current di…Added: Bind keys to Ghostty actions, including global shor…Added / inferred: Toggle a quick terminal that slides in from a scree…