WingHostty is a terminal emulator for Windows designed to provide developers with a feature-rich, native experience. Built using Ghostty's terminal core, it offers robust VT parsing, scrollback, and shell integration while running as a standalone Win32 application.
Key Features:
Native Win32 Runtime: Includes a tab bar, per-monitor DPI scaling, DWM dark title bar support, IME functionality, drag-and-drop, and native right-click menus.
OpenGL Renderer: Utilizes OpenGL 4.3 for rendering, ensuring smooth performance.
Shell Integration: Supports PowerShell, cmd, Git Bash, and optional WSL integration through an in-app profile picker.
Session Restore: Maintains window shape, tabs, splits, profiles, working directories, and titles across sessions.
GitHub Releases Updater: Checks for updates and verifies downloads using GitHub's public API.
Audience & Benefit:
Ideal for developers comfortable with configuring terminal applications. WingHostty provides a highly customizable experience tailored to Windows users, enhancing productivity through seamless shell integration and native runtime features. It is particularly suited for those who prioritize feature richness and platform-specific optimization without external dependencies or cross-platform concerns.
Installable via winget, WingHostty offers a stable and efficient terminal solution for Windows developers.
winghostty is a terminal emulator for Windows. It pairs:
The Ghostty terminal core — VT parser, screen and scrollback, font
pipeline, and renderer — forked from
ghostty-org/ghostty.
A native Win32 application runtime written for this fork: real Windows
tab bar, per-monitor DPI scaling, DWM dark title bar, IME, drag-and-drop,
native right-click menus, and a WSL-aware shell picker.
It also ships libghostty-vt, the Ghostty VT library, as a retained
deliverable for Zig and C consumers.
It is intended for developers who are comfortable editing a plain-text
configuration file and clicking through a SmartScreen warning on first
install.
Project status
winghostty is a young, single-maintainer fork. First fork commit: 2026-04-06.
First public releases: 2026-04-16.
Supported platform: Windows 10 and Windows 11 on x64 and ARM64.
Releases: Authenticode-signed installer and signed Windows binaries
inside the portable ZIP. The ZIP container itself is checksummed, not
Authenticode-signed. Windows SmartScreen may still warn on first run for a
new or low-reputation publisher certificate.
Feedback: use
Discussions for
questions. GitHub Issues are reserved for reproducible bugs.
No cross-platform app: macOS and Linux app runtimes are not shipped
from this repo and are not planned. libghostty-vt remains portable for
library consumers.
Coexistence: winghostty runs as its own top-level app window. It does
not register as a Windows Terminal profile provider; installing it
alongside Windows Terminal, WezTerm, or Alacritty is fine.
Accessibility: partial UI Automation support ships today, but
terminal scrollback and broader screen reader coverage are still
incomplete.
What works today
Native Win32 runtime: tab bar with overflow, horizontal / vertical splits,
per-monitor DPI scaling, DWM dark title bar, right-click context menus,
IME, drag-and-drop of files.
OpenGL 4.3 renderer via WGL.
Shared Ghostty terminal core: VT parsing, scrollback, bracketed paste,
mouse tracking, OSC 8 hyperlinks, Kitty graphics protocol, shell
integration for bash / zsh / fish / PowerShell. Command Prompt is
available as a plain fallback shell without automatic shell integration.
In-app profile picker that auto-detects installed shells.
Session restore for practical window shape: windows, tabs, splits, profiles,
working directories, and explicit titles.
GitHub Releases updater with check and verified-download modes, gated to one
check per 24 hours. Update installation remains manual.
High-contrast (HC) mode detection and palette switching.
libghostty-vt as a retained Zig / C library deliverable.
A precise list, including what is experimental and what is out of scope,
is in docs/status.md. For a row-by-row mapping against
official Ghostty docs, see
docs/windows-capability-matrix.md.
On first run, Windows SmartScreen may say "Windows protected your PC".
Click More info → Run anyway. Release installers and Windows binaries
inside the portable ZIP are Authenticode-signed, but SmartScreen reputation can
still lag behind signing.
Windows-specific paths, shell behavior, app identity, notifications, quick
terminal, windows/tabs/splits, automation, and troubleshooting live in
docs/windows.md.
First run
On first launch, winghostty creates its config folder and writes a template:
%LOCALAPPDATA%\winghostty\config.ghostty
The template sets no options — defaults live in the binary. To see every
option with inline docs:
winghostty +show-config --default --docs | more
A minimal config:
font-family = JetBrains Mono
font-size = 12
# Pick a theme from: winghostty +list-themes
# Theme files are config files; only use themes from sources you trust.
theme = Dracula
Reload config without restarting: Ctrl + Shift + ,
Keybindings
Default keybindings follow Windows conventions. Common ones:
Action
Binding
Copy
Ctrl+Shift+C
Paste
Ctrl+Shift+V
New tab
Ctrl+Shift+T
Close tab
Ctrl+Shift+W
Next / previous tab
Ctrl+Tab / Ctrl+Shift+Tab
Split right / down
Ctrl+Shift+O / Ctrl+Shift+E
Start search
Ctrl+Shift+F
Increase / decrease font
Ctrl+= / Ctrl+-
Reload config
Ctrl+Shift+,
Full list, plus the keybind grammar for chords and rebinding:
winghostty auto-detects installed Windows shells (PowerShell, cmd, Git
Bash, opt-in WSL) and exposes them through an in-app profile picker. To
pin a specific shell, set command = in your config.
Privacy
winghostty does not send telemetry or analytics. The only outbound network
call from the app is the GitHub Releases updater (when enabled), which
hits GitHub's public API. Crash reports, when produced, are stored locally
and never uploaded (see below).
Updates
auto-update = check
The updater checks api.github.com/repos/amanthanvi/winghostty/releases/latest
at most once every 24 hours. auto-update = check opens the release page if a
newer stable version exists and never replaces binaries silently.
auto-update = download downloads only eligible stable Windows installer
releases, verifies the architecture-specific SHA256SUMS file plus
Authenticode, and stages the installer locally. Unsigned installers fail that
verification and are not staged. Applying the staged installer is
user-initiated and may prompt for UAC.
Crash reports
winghostty does not upload crash reports. The app keeps a local directory:
%LOCALAPPDATA%\winghostty\crash
On Windows the Sentry initialization path is a no-op, but winghostty installs a
local unhandled-exception filter that writes .dmp minidumps for process-level
crash exceptions. Some hard-abort paths may still terminate before Windows can
produce a dump. The +crash-report CLI reads anything that is there:
winghostty +crash-report
Contents, if any, may include sensitive memory from the crashed process;
review before sharing.
Build from source
Most users should install from Releases. If you want to build:
Requirements
Windows 10 or 11 on x64 or ARM64
Zig 0.15.x (patch ≥ 2) — enforced at compile time via
src/build/zig.zig::requireZig. Newer 0.15 patch releases (0.15.3,
etc.) are accepted; 0.15.0 / 0.15.1, 0.14.x, and 0.16.x will fail to
compile.
Visual Studio 2022 (Community is fine) — MSVC toolchain on PATH
Git for Windows
The build script additionally rejects building the win32 app runtime for
non-Windows targets, returning
error.WindowsOnlyAppRuntimeRequiresWindowsTarget.
Build
zig build -Demit-exe=true
Output: zig-out\bin\winghostty.exe.
If Zig cannot reach deps.files.ghostty.org directly in your environment,
seed the Windows build dependency cache first:
src/apprt/win32_theme.zig — theme tokens, DWM integration, accent
helpers, HC handling (extracted from win32.zig in commit a759eb6)
src/update/github_releases.zig — updater
dist/windows/ and scripts/package-windows.ps1 — Windows packaging
Removed from this fork
Upstream macos/ Xcode project
Upstream src/apprt/gtk/ runtime
Flatpak / Snap / Linux desktop packaging
Because the terminal core is shared, most Ghostty configuration options,
themes, and shell-integration behavior apply here directly. When
Windows-native behavior conflicts with upstream cross-platform behavior,
this fork prefers the Windows-native result.
Contributing
Bug reports, reproducible issues, and focused PRs are welcome. Read
CONTRIBUTING.md and AI_POLICY.md
first. For usage questions and design discussion, use
Discussions.