Ep 2: Ghostty — The Fastest GPU Terminal

⏱ Est. reading time: 6 min Updated on 5/7/2026

Metal/OpenGL rendering, 3x faster than iTerm2. The preferred terminal for Agents where speed is everything.

Rendering Principles

Ghostty uses GPU acceleration to render terminal content:

Platform Rendering Engine Description
macOS Metal Apple's native GPU API, direct hardware access
Linux OpenGL Cross-platform GPU API

Comparison with traditional CPU rendering:

CPU Rendering (iTerm2 / Terminal.app):
  Terminal Output → CPU calculates character positions → CPU draws pixels → Display

GPU Rendering (Ghostty):
  Terminal Output → GPU shaders draw directly → Display

Result: Ghostty is approximately 3x faster in heavy output scenarios (based on VibeHackers community benchmarks).

Installation

macOS:

# Option 1: Homebrew (Recommended)
brew install --cask ghostty

# Option 2: DMG download from official site
# https://ghostty.org/docs/install

Linux:

# Ubuntu/Debian (AppImage)
curl -LO https://github.com/ghostty-org/ghostty/releases/latest/download/Ghostty-x86_64.AppImage
chmod +x Ghostty-x86_64.AppImage

# Nix
nix run nixpkgs#ghostty

# Fedora/CentOS: Use RPM package
# https://github.com/ghostty-org/ghostty/releases

Operating System Support

System Support Notes
macOS 12+ Native Metal rendering, best experience
Linux (x86_64) Native OpenGL rendering
Linux (ARM64) Supported Raspberry Pi, etc.
Windows Not Supported No plans (author's stance is clear)

Configuration

Ghostty works out-of-the-box with zero configuration. The config file is located at ~/.config/ghostty/config:

# Theme (hundreds of built-in themes available)
theme = catppuccin-mocha

# Font
font-family = "JetBrains Mono"
font-size = 14

# Window
window-padding-x = 10
window-padding-y = 10
window-decoration = true

# Performance
adjust-cell-height = 0

# Keybinding examples
keybind = cmd+t=new_tab
keybind = cmd+w=close_surface

Configuration changes are automatically hot-loaded without requiring a restart.

Core Features

Feature Description
Split Panes Cmd+D for vertical split, Cmd+Shift+D for horizontal split
Tabs Cmd+T for new tab, Cmd+1-9 to switch
Kitty Graphics Protocol Display images directly in the terminal (icat image.png)
Theme System Hundreds of built-in themes, one-line config to switch
Unicode Support Full Unicode + Emoji + Ligatures support

Agent Interaction Mechanism

Interaction with Ghostty is primarily configuration-driven; it does not expose a runtime API:

flowchart LR
    A[Config File
~/.config/ghostty/config] -->|Hot-load| B[Ghostty Process] C[Internal Splitting] -->|Visual Management| D[Claude Code Agent] E[Keybindings] -->|Window Control| B B -->|GPU Rendering| F[Agent Output Display] style A fill:#2ecc71,color:#fff style D fill:#4a9eff,color:#fff
Interaction Mode Support Description
Config File Full The only way to control Ghostty; hot-loading enabled
Socket API None Ghostty does not expose a runtime API
AppleScript None Not supported on macOS either
CLI Control Limited No ghostty CLI for sending commands
Built-in Splitting Yes Manual management of multiple Agent windows

Practical Usage: Open multiple Ghostty tabs/splits, each running a Claude Code instance. Management relies on manual switching.

Pros & Cons

Pros Cons
Fastest rendering speed (GPU accelerated) No Agent management notification mechanism
Zero-config, works out-of-the-box No vertical tab bar
Rich theme system No programmable API
Cross-platform (macOS/Linux) No Windows support
MIT licensed, completely free No built-in AI features
Kitty Graphics Protocol support tmux integration not as deep as iTerm2

Best Use Cases

  • Running 1-3 Agents locally, prioritizing speed
  • Scenarios with massive code output (diffs, logs, test results)
  • Using as a frontend for tmux (Ghostty + tmux combo)