Ghostty 1.4.0
Ghostty 1.4.0, a major release, was released on October 27, 2026. This update brings significant performance and memory improvements, along with a fully functional Kitty graphics implementation, including animation and relative placements. This marks the first non-Kitty terminal to support these features. Additionally, Ghostty 1.4.0 includes enhancements to SSH integration and numerous other improvements across all platforms.
Developed over a period of 7 months, the release incorporates changes from 172 contributors across 2,889 commits. The development team expressed gratitude towards all contributors, maintainers, community moderators, translators, packagers, and users who contributed to making this release possible. The entire changelog was meticulously crafted by the maintainers, taking approximately 16+ hours to complete.
Ghostty 1.4.0 supports macOS 27 (Golden Gate). The majority of the work focused on compatibility fixes, ensuring full compatibility with prior macOS versions, including macOS 13 (Ventura). Notable improvements and fixes include Kitty graphics animation and relative placements, SSH integration enhancements, and memory optimizations, among others.
One of the most significant changes is the addition of Kitty graphics animation and relative placements, which were the last major features of the Kitty graphics protocol that Ghostty did not support. Programs displaying animated images with the Kitty protocol, such as animated GIFs, now animate smoothly in Ghostty without displaying a single still frame.
The implementation supports frame transmission, composition, and playback control, with animations pausing while the terminal is not visible. Relative placements allow programs to position one image relative to another, ensuring the child image moves in sync with its parent.
Ghostty now features 100% conformance with the Kitty specification, addressing dozens of behavioral differences and improving the overall user experience. This includes fixes such as images scrolling with text inside scroll regions, retransmitting image IDs replacing old images, and handling invalid image data with error responses instead of silence, which could otherwise leave clients hanging.
The implementation of Kitty graphics has also led to substantial performance improvements. Image payloads are now parsed in bulk using SIMD instead of processing one byte at a time, resulting in up to 16x faster parsing for large image transfers. Drawing images now costs significantly less per frame. These enhancements make Ghostty (and libghostty) the first terminal to cover the entire Kitty graphics specification outside of Kitty itself.
Furthermore, Ghostty 1.4.0 transparently compresses scrollback that is not currently visible, reducing the physical memory usage for typical text-heavy history by 70% to 90%. This compression only runs while the terminal is idle and decompresses pages on demand when scrolling back or searching, having no measurable impact on I/O throughput. As a result, the default scrollback limit has been increased from 10 MB to 50 MB per terminal. The compression feature is currently available on macOS and 64-bit Linux.
In addition to memory and performance improvements, Ghostty 1.4.0 brings overall performance gains across the board. A surprising discovery on macOS reveals that the kernel caps every read from a pty at about 1 KiB, regardless of the read buffer size. Ghostty now addresses this issue by draining the pty on one thread while parsing on another, resulting in a 25% to 55% increase in end-to-end I/O throughput on macOS (M4 Max, plain and Unicode text) compared to Ghostty 1.3.x.
VT processing has also been made much faster, with plain ASCII text processing speeds increasing by 5.7x and CJK text processing speeds improving by 3.4x. The performance gains are evident when processing a 2.6 GB dataset of terminal recordings from asciinema, which now takes approximately 566 milliseconds, compared to 1.5 seconds in Ghostty 1.3.x.
In terms of user interface improvements, the GTK app has undergone a new rendering pipeline. It no longer relies on GtkGLArea and now uses EGL on its own thread to draw frames as DMABUFs, which are then handed to GTK for display. Rendering is triple-buffered, reducing tearing, and OpenGL calls no longer run on the main thread, allowing for the removal of several workarounds.
A notable result is that text and box-drawing characters are now crisp under fractional display scaling, such as 125% or 150%, eliminating blurry text and box-drawing characters.
Lastly, Ghostty 1.4.0 implements the Kitty clipboard protocol (OSC 5522) on both macOS and GTK, enabling programs running in the terminal to read and write plain text using this protocol. This enhancement was absent in Ghostty 1.3, which could parse the protocol but did not implement it.
Written by urgent.news from Lobsters's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.
This story
This is one outlet's version. Read the fullest account.
- Ghostty 1.4.0 ghostty.org
