Ghostty 1.3.0: Terminal emulator with scrollback search

The terminal emulator Ghostty has been released in version 1.3.0. The developers have implemented some of the most requested features.

listen Print view
Saxophone player with ghosts, purple background

(Image: heise medien)

6 min. read
Contents

The terminal emulator Ghostty has been released in version 1.3.0, bringing features such as scrollback search, native scrollbars, and the option to position the cursor by clicking in shell prompts, among others. Additionally, the developers have closed an important security vulnerability.

Ghostty is a modern terminal emulator for macOS and Linux that relies on GPU rendering and is written in the Zig programming language. It is developed by HashiCorp founder Mitchell Hashimoto. Six months of work have gone into the new version, with 180 developers contributing over 2,858 commits. The Release Notes include hundreds of improvements, bug fixes, and performance optimizations across all supported platforms.

The new scrollback search is among the most requested features. It can be accessed on macOS with Cmd+F and on Linux with Ctrl+Shift+F. The implementation highlights found matches and allows navigation with arrow keys or Cmd+G. On macOS, the search bar can be dragged to one of the four corners if it obscures important content. The search also integrates with macOS components like the menu bar, system-wide shortcuts for “Find Next/Previous,” and the system clipboard for search terms. Technically, the search operates with a dedicated thread that requires only small lock time slices and terminates itself when not in use to minimally impact I/O and rendering.

Also new are native scrollbars in overlay style, which integrate system-conformingly into macOS and GTK. The behavior can be adjusted via the configuration option scrollbar; by default, Ghostty adopts the system setting.

Videos by heise

Another new feature is the ability to position the cursor by clicking in shell prompts – similar to a regular text field. To support this, the feature utilizes OSC 133 extensions click-events and cl=line. Native support is provided by Fish from version 4 onwards and Nushell from 0.111 onwards; for other shells, support depends on Ghostty's integrated shell integration. The developers have revised their OSC 133 implementation and now rely on region-based detection, which works more accurately than the row-based variant used by some competitors. A debug overlay for OSC 133 areas aids in troubleshooting.

Also new are notifications for completed commands. Users can specify when and how Ghostty should display messages via three configuration options: never, only when the window is not focused, or always. The action can be set to a ringtone (bell) or a system notification; by default, only commands lasting longer than 5 seconds are reported. This feature also requires OSC 133 or shell integration.

The developers have significantly improved I/O performance. Tests with 4 GB asciinema files show that replay time has decreased from several minutes to a few seconds. The renderer lock time has been reduced by a factor of two to five; the system often works completely lock-free thanks to dirty tracking. This results in smoother scrolling and less jitter with heavy output.

A critical memory leak has been fixed, which was triggered by certain AI tools like Claude Code. With intensive use, memory consumption could increase to up to 37 GB after ten days. The bug existed since version 1.0 and affected the recycling logic for non-standard scrollback pages. Stability during intensive use with logs or build outputs is now significantly higher.

A security vulnerability (CVE-2026-26982) has been closed, where control characters like 0x03 (Ctrl+C) in pasted text or drag-and-drop content could lead to the execution of arbitrary commands in some shells. While the attack requires user interaction, such paste exploits are not uncommon in terminal emulators. Ghostty now replaces insecure control characters with spaces when pasting, similar to xterm.

Ghostty is now officially a non-profit project under the patronage of Hack Club, a 501(c)(3) organization. Almost all donations go directly to contributors, five of whom have already signed contracts for a total of approximately 300 hours of development work. This transformation is intended to protect the project from commercialization and sale in the long term.

System requirements have changed: Version 1.3.0 is the last to support macOS 13 Ventura. From version 1.4 onwards, macOS 14 will be required, as Apple discontinued support for Ventura in autumn 2025. On Linux, Ghostty requires GTK 4.14 and libadwaita 1.5. Older distributions like Debian Bookworm will need to use Snaps or Flatpaks, or stick with an older Ghostty version.

Further innovations include extended keybind functions such as Key Tables and chained keybinds, support for the Kitty Keyboard Protocol, and Unicode 17 compliance. On macOS, there is experimental AppleScript support for automation, as well as unobtrusive update mechanisms. The standalone library libghostty allows the terminal emulator to be integrated into third-party applications such as Neovim, multiplexers, or PaaS solutions.

More details about Ghostty 1.3.0 can be found in the Release Notes. A detailed review of the terminal emulator was published by heise online in February 2025.

(fo)

Don't miss any news – follow us on Facebook, LinkedIn or Mastodon.

This article was originally published in German. It was translated with technical assistance and editorially reviewed before publication.