* feat(ui): add a title-bar overflow menu for palette and settings The command palette and settings panel were reachable only by keyboard (⌘P / ⌘,) — no on-screen affordance existed, so the app leaned entirely on shortcuts for its two most useful non-terminal entry points. Add a ghost "⋯" button on the title bar's otherwise-empty right edge (same 30px tile rhythm as the "+"), opening a small dropdown: - Command Palette ⌘P - Settings… ⌘, Both rows dispatch the real gpui action, so a click and the shortcut share one path and each row auto-renders its keybinding hint. The menu is hidden while the settings tab is active (both entries are redundant there). On Windows/Linux the window controls sit on the right, so the button gets extra right padding to read as a menu, not a fourth control. * fix(ui): keep the title-bar overflow menu from drifting into the corner The '⋯' is pinned to the right edge of a strip that used '.w_full()', but the title bar sizes its content by intrinsic width, so 'w_full' never tracked the window. Shrinking the window left the strip's right edge — and the pinned '⋯' — lagging behind, sliding the button into the rounded corner where it clipped and read cramped. Derive the strip width from the live viewport instead, mirroring the cap already used for the chip row, so the right edge tracks the window at every size and the '⋯' holds its original tight 8px inset on resize. --------- Co-authored-by: l0ng-ai <24760907+l0ng-ai@users.noreply.github.com>
tty7
A GPU-rendered terminal in pure Rust.
GPU rendering on Zed's gpui · VT core from Alacritty
Why tty7 · Install · Features · Benchmarks · Keybindings
English · 简体中文
Why tty7
- Fast — about 2× the throughput of Alacritty, Ghostty, or Kitty on the same hardware (benchmarks)
- A modern prompt — completion, syntax highlighting, and history search built in; no plugins to assemble
- Sessions that survive — close the window or quit the app, your shells keep running; no tmux
- Zero config — zsh, bash, fish, and PowerShell work out of the box
Native builds for macOS, Windows, and Linux ship with every release.
Install
Download the build for your platform from Releases:
- macOS —
tty7-<version>-macos-arm64.dmg(Apple Silicon) or…-x86_64.dmg(Intel); open it and dragtty7.appinto Applications. - Windows —
…-windows-x86_64-setup.exe(installer: Start Menu shortcut + uninstall entry), or…-windows-x86_64.zip(portable: unzip and runtty7.exe). - Linux —
…-linux-x86_64.tar.gz; extract and run./tty7(needs the usual x11/wayland runtime libraries).
Features
At the prompt
- Ghost suggestions — your history completes the whole line as you type; → to accept
- Tab completion that explains — every flag and subcommand with its description, for ~100 common commands
- Syntax highlighting — as you type, nothing to install
- Fuzzy history search — ⌃ R shows what you ran, where, and whether it failed
- History from day one — your existing shell history just works, and carries across sessions
- Real line editing — selection, word motion, undo
In the window
- Tabs & splits — always open in the current directory
- Command palette ⌘ P · scrollback search ⌘ F
- ⌘-click links · desktop notifications
- Eight themes · CJK / IME input
Benchmarks
All four terminals measured back-to-back on the same machine, same day, same 155×40 grid — Apple M1 Pro, macOS 26.3.1, five-run averages (2026-07-04):
| tty7 | Alacritty | Ghostty | Kitty | |
|---|---|---|---|---|
Plaintext IO — 11 MB cat (lower = better) |
95 ms | 239 ms | 179 ms | 185 ms |
| DOOM-fire frame rate (higher = better) | 888 fps | 485 fps | 552 fps | 617 fps |
| Cold-launch memory | 116 MB¹ | 105 MB | 128 MB | 130 MB |
¹ GUI 105 MB + the persistent daemon 11 MB.
Where the speed comes from:
- The PTY is read at device speed and parsed in large batches, off the render path
- Hot paths are lock-free — a big
catnever waits on drawing - The daemon buffers up to 16 MiB ahead of the window before backpressure applies
Methodology (how each terminal is driven, grid fairness, known pitfalls) and
one-command reproduction live in scripts/bench/ —
run it yourself.
Keybindings
Keys are shown in macOS notation — on Windows and Linux, read ⌘ as Ctrl. Open Settings with ⌘ , to browse or remap them all. The essentials:
| ⌘ T · ⌘ W · ⌘ ⇧ T | new tab · close tab · reopen closed tab |
| ⌘ D · ⌘ ⇧ D | split right · split down |
| ⌘ ] · ⌘ [ | next pane · previous pane |
| ⌘ ⏎ · ⌘ ⇧ ⏎ | toggle fullscreen · maximize / restore the pane |
| ⌘ K | clear the screen and scrollback |
| ⌘ P | command palette |
| ⌘ F | search the scrollback |
| ⌃ R | fuzzy-search shell history |
| ⌘ + · ⌘ − · ⌘ 0 | font size up · down · reset |
The full list — and any overrides — lives in Settings → Keybindings.
Built on gpui and alacritty_terminal · Apache-2.0 · Discord · Changelog