Skip to content

Ghostty

App Terminal + Parser Backend

GPU-accelerated terminal by Mitchell Hashimoto. Written in Zig, Metal/OpenGL/Vulkan. Excellent standards compliance.

Ghostty is a terminal emulator created by Mitchell Hashimoto, founder of HashiCorp (Terraform, Vagrant, Vault). Written in Zig with GPU-accelerated rendering via Metal (macOS), OpenGL, and Vulkan. First released in late 2024 after years of development, Ghostty quickly gained attention for its focus on correctness and performance.

Ghostty's architecture separates the terminal emulation core into libghostty, a reusable library that other projects can embed. This is how cmux (the Ghostty multiplexer) gets its terminal emulation — it links against libghostty directly. The library handles VT parsing, grid management, and rendering, while the app adds window management and platform integration.

Among modern terminals, Ghostty has some of the best standards compliance, supporting kitty keyboard protocol, kitty graphics, sixel, OSC 8 hyperlinks, semantic prompts, and full Unicode including grapheme clustering. It scores consistently near the top of terminfo.dev's feature matrix.

Backend: GPU-accelerated terminal by Mitchell Hashimoto. Written in Zig, Metal/OpenGL/Vulkan. Excellent standards compliance. · v1.3.1
95%
140 passed · 8 failed of 148 features
Tested: March 26, 2026
Analysis2026-03-26

Ghostty scores 95% (140/148) on the terminfo.dev feature matrix, with gaps in the Core TUI, Rich TUI baselines. Ranks #3 of 13 tested terminals. Missing: CUP with DECOM, Tertiary Device Attributes (DA3), Sixel support in DA1, Sixel graphics, iTerm2 Cell Size Reporting (OSC 1337), iTerm2 Capability Reporting (OSC 1337), Kitty graphics protocol, Feature Reporting (TERM_FEATURES).

Character Sets

FeatureSupportNotes
DEC line drawing character set✓ yes
DEC Special Graphics✓ yes
G0/G1 character set switching✓ yes
UTF-8 mode✓ yes

Input Protocols

FeatureSupportNotes
Button-Event Mouse (1002)✓ yes
CSI u Key Encoding✓ yes
modifyOtherKeys✓ yes
modifyOtherKeys mode 3? unknown
Pixel Mouse Reporting (1016)✓ yesSGR pixel mouse mode not tracked by ghostty-web WASM backend
urxvt Mouse Reporting (1015)✓ yes
X10 Mouse Tracking (9)✓ yes

Modes

FeatureSupportNotes
Enter alt screen (DECSET 1049)✓ yesDECRPM: mode reset
Exit alt screen (DECRST 1049)✓ yes
App cursor keys (DECCKM)✓ yesDECRPM: mode reset
Application keypad (DECKPAM)✓ yes
Auto-wrap (DECAWM)✓ yesDECRPM: mode set
Bracketed paste (DECSET 2004)✓ yesDECRPM: mode reset
Mode 2031 color scheme reporting? unknown
Focus tracking (DECSET 1004)✓ yesDECRPM: mode reset
Insert/replace mode (IRM)✓ yes
Left/Right Margins (DECLRMM, Mode 69)✓ yesDECLRMM not tracked by ghostty-web WASM backend
All motion mouse (DECSET 1003)✓ yesDECRPM: mode reset
SGR mouse mode (DECSET 1006)✓ yesDECRPM: mode reset
Mouse tracking (DECSET 1000)✓ yesDECRPM: mode reset
Origin mode (DECOM)✓ yesDECRPM: mode reset
Reverse video (DECSCNM)✓ yesDECRPM: mode reset
Synchronized output (DECSET 2026)✓ yesDECRPM: mode reset

Reset

FeatureSupportNotes
Backend reset() method✓ yescursor at 5;5 after DECSTR
Full reset (RIS)✓ yes
SGR reset clears attributes✓ yes
Soft reset (DECSTR)✓ yes

Unicode

FeatureSupportNotes
East Asian Ambiguous Width✓ yeswidth=1 (ambiguous chars vary by terminal/locale)
Grapheme Cluster Cursor Movement✓ yes
Tab Stops (HT)✓ yes
Wide Char at Line Wrap✓ yes

Powered by Termless
Playwright for Terminals