Releases: ibuildthecloud/winterm-ghostty
Release list
v0.2.2
This release ships the portable ZIP only. No signing certificate is configured for this repository, and an unsigned MSIX cannot be installed, so it is not published. The portable build needs no certificate.
Windows Terminal, with ghostty's engine behind the pane instead of the stock one — chosen per profile, in the same window, side by side with cascadia panes.
It is a working fork, not a finished product; read Known issues before installing.
Install
No installer — unzip and run. Full notes: docs/install.md.
Expand-Archive .\winterm-ghostty-0.2.2.0-x64-portable.zip -DestinationPath .
.\terminal-0.2.2.0\WindowsTerminal.exeNo certificate to trust, no admin rights, no Developer Mode, nothing registered. Settings live beside the exe, so deleting the folder removes every trace.
What you give up is integration: no Start menu entry, no wtg.exe on PATH, no "Open in Terminal", and it cannot be set as your default terminal. Those need an installed package, which needs a signed one — see Signing.
Nothing switches engine by itself. Add "engine": "ghostty" to a profile — or to profiles.defaults — to opt in:
To confirm a pane is really using it, open the search box (Ctrl+Shift+F): on a ghostty pane the regex and case toggles are greyed out.
Fixed since 0.2.1
?reached applications as/. Only applications using the kitty keyboard protocol were affected; the modifiers a layout consumes to produce a character were not being reported, so?was encoded as its base key/plus a shift modifier (KD-08).- A ligature's second half blinked with the cursor. With a ligating font, parking a block cursor on the first character of a ligature such as
--made the other half flicker in antiphase. Moving the cursor now re-shapes the rows it leaves and enters (KD-06).
What works
Rendering, keyboard input (including IME), mouse, selection and clipboard, search, scrollback and marks, all six cursor shapes, Kitty graphics, and the terminal-size reports that image clients rely on. A pane drains its pty at roughly three quarters of cascadia's rate.
Everything above the pane — tabs, panes, settings, command palette, search box — is unaware of which engine it is holding.
Installs beside Windows Terminal
Its own package identity (WintermGhostty), its own execution alias (wtg.exe), and its own COM class IDs — so it does not replace, rename or hijack anything belonging to a real Windows Terminal install, on any channel. Settings are separate too: this starts with defaults rather than importing yours.
Known issues
- No accessibility. There is no UIA text provider on a ghostty pane, so Narrator and NVDA cannot read one. If you rely on a screen reader, keep those profiles on
"engine": "cascadia". - x64 only. Zig 0.16.0 cannot target
aarch64-windows-msvcat all, so there is no ARM64 build to ship. - KD-04 — a pane in a background window keeps drawing a focused-looking blinking cursor, and keeps presenting frames to do it.
- KD-05 — the Windows cursor-blink settings are ignored, including turning blinking off.
Each defect in docs/known-defects.md records what was measured rather than what was assumed, and what would tell the remaining hypotheses apart.
Signing
Nothing here is signed, and nothing needs to be. A portable build is not installed, so Windows never asks who published it.
An MSIX is built, but it is not published: an MSIX must carry a valid signature to install at all, no signing certificate is configured for this repository, and shipping one nobody can install would be shipping a trap. If that changes, an installer comes back and this section changes with it.
Verify what you downloaded against SHA256SUMS.txt. Note the file is written with Windows line endings, so sha256sum -c may report "could not be read" — compare the hash by hand if so.
Provenance
An unofficial fork of microsoft/terminal and ghostty-org/ghostty, not affiliated with or endorsed by either. Both are MIT; so is this.
Built by .github/workflows/release.yml from the recorded upstream pins plus the tracked patch series — the inputs are all in git.
v0.2.1
Windows Terminal, with ghostty's engine behind the pane instead of the stock one — chosen per profile, in the same window, side by side with cascadia panes.
It is a working fork, not a finished product; read Known issues before installing.
Install
No installer — unzip and run. Full notes: docs/install.md.
Expand-Archive .\winterm-ghostty-0.2.1.0-x64-portable.zip -DestinationPath .
.\terminal-0.2.1.0\WindowsTerminal.exeNo certificate to trust, no admin rights, no Developer Mode, nothing registered. Settings live beside the exe, so deleting the folder removes every trace.
What you give up is integration: no Start menu entry, no wtg.exe on PATH, no "Open in Terminal", and it cannot be set as your default terminal. Those need an installed package, which needs a signed one — see Signing.
Nothing switches engine by itself. Add "engine": "ghostty" to a profile — or to profiles.defaults — to opt in:
{
"name": "Ubuntu",
"engine": "ghostty" // "cascadia" (default) or "ghostty"
}To confirm a pane is really using it, open the search box (Ctrl+Shift+F): on a ghostty pane the regex and case toggles are greyed out.
What works
Rendering, keyboard input (including IME), mouse, selection and clipboard, search, scrollback and marks, all six cursor shapes, Kitty graphics, and the terminal-size reports that image clients rely on. A pane drains its pty at roughly three quarters of cascadia's rate.
Everything above the pane — tabs, panes, settings, command palette, search box — is unaware of which engine it is holding.
Installs beside Windows Terminal
Its own package identity (WintermGhostty), its own execution alias (wtg.exe), and its own COM class IDs — so it does not replace, rename or hijack anything belonging to a real Windows Terminal install, on any channel. Settings are separate too: this starts with defaults rather than importing yours.
Known issues
- No accessibility. There is no UIA text provider on a ghostty pane, so Narrator and NVDA cannot read one. If you rely on a screen reader, keep those profiles on
"engine": "cascadia". - x64 only. Zig 0.16.0 cannot target
aarch64-windows-msvcat all, so there is no ARM64 build to ship. - KD-06 — with a ligating font, parking a block cursor on the first character of a ligature such as
--makes the second half blink along with the cursor. Workaround: a font without that ligature, e.g. Consolas. - KD-04 — a pane in a background window keeps drawing a focused-looking blinking cursor, and keeps presenting frames to do it.
- KD-05 — the Windows cursor-blink settings are ignored, including turning blinking off.
Each defect in docs/known-defects.md records what was measured rather than what was assumed, and what would tell the remaining hypotheses apart.
Signing
Nothing here is signed, and nothing needs to be. A portable build is not installed, so Windows never asks who published it.
An MSIX is built, but it is not published: an MSIX must carry a valid signature to install at all, no signing certificate is configured for this repository, and shipping one nobody can install would be shipping a trap. If that changes, an installer comes back and this section changes with it.
Verify what you downloaded against SHA256SUMS.txt. Note the file is written with Windows line endings, so sha256sum -c may report "could not be read" — compare the hash by hand if so.
Provenance
An unofficial fork of microsoft/terminal and ghostty-org/ghostty, not affiliated with or endorsed by either. Both are MIT; so is this.
Built by .github/workflows/release.yml from the recorded upstream pins plus the tracked patch series — the inputs are all in git.
v0.1.0 — first downloadable build
Windows Terminal, with ghostty's engine behind the pane instead of the stock one — chosen per profile, in the same window, side by side with cascadia panes.
This is the first downloadable build. It is a working fork, not a finished product; read Known issues before installing.
Install
Full instructions, including what trusting the certificate actually grants: docs/install.md.
The short version — trust the certificate from an elevated PowerShell:
Import-Certificate -FilePath .\winterm-ghostty-0.1.0.0.cer -CertStoreLocation Cert:\LocalMachine\TrustedPeoplethen install (elevation not needed):
Add-AppxPackage -Path .\winterm-ghostty-0.1.0.0-x64.msixIf that fails with 0x80073CF3, the Microsoft.UI.Xaml.2.8 framework is missing. It is deliberately not shipped here — anyone installing this almost certainly has Windows Terminal already, which depends on the same framework, and Windows 11 preinstalls it. winget install --id Microsoft.UI.Xaml.2.8 fixes it.
Launch Terminal (ghostty) from the Start menu, or wtg.exe.
Nothing switches engine by itself. Add "engine": "ghostty" to a profile — or to profiles.defaults — to opt in:
{
"name": "Ubuntu",
"engine": "ghostty" // "cascadia" (default) or "ghostty"
}To confirm a pane is really using it, open the search box (Ctrl+Shift+F): on a ghostty pane the regex and case toggles are greyed out.
What works
Rendering, keyboard input (including IME), mouse, selection and clipboard, search, scrollback and marks, all six cursor shapes, Kitty graphics, and the terminal-size reports that image clients rely on. A pane drains its pty at roughly three quarters of cascadia's rate.
Everything above the pane — tabs, panes, settings, command palette, search box — is unaware of which engine it is holding.
Known issues
- No accessibility. There is no UIA text provider on a ghostty pane, so Narrator and NVDA cannot read one. If you rely on a screen reader, keep those profiles on
"engine": "cascadia". - x64 only. Zig 0.16.0 cannot target
aarch64-windows-msvcat all, so there is no ARM64 build to ship. - KD-06 — with a ligating font, parking a block cursor on the first character of a ligature such as
--makes the second half blink along with the cursor. Workaround: a font without that ligature, e.g. Consolas. - KD-04 — a pane in a background window keeps drawing a focused-looking blinking cursor, and keeps presenting frames to do it.
- KD-05 — the Windows cursor-blink settings are ignored, including turning blinking off.
- Shares upstream's COM class IDs. If you also have Windows Terminal Dev installed, both register the same CLSIDs and the last one to register wins, so "Open in Terminal" and default-terminal handoff may resolve to either. Stable and Preview are unaffected.
Each defect in docs/known-defects.md records what was measured rather than what was assumed, and what would tell the remaining hypotheses apart.
Signing
Signed with a self-signed certificate (CN=Darren Shepherd) — there is no paid publisher identity behind this, so Windows has no reason to trust it until you say so. docs/install.md explains what that grants and how to undo it. If you would rather not, the patch series in ghostty-patches/ and terminal-patches/ exists so you can build it yourself.
Verify what you downloaded against SHA256SUMS.txt.
Provenance
An unofficial fork of microsoft/terminal and ghostty-org/ghostty, not affiliated with or endorsed by either. Both are MIT; so is this.
Built locally rather than in CI — there is no build log behind this artifact beyond the patch series it was built from.
{ "name": "Ubuntu", "engine": "ghostty" // "cascadia" (default) or "ghostty" }