BooTTY
January 13, 2026 ยท View on GitHub
An alternative terminal extension for VS Code powered by Ghostty's terminal emulation (libghostty-vt) via WebAssembly.
Pronounced "Boo-T-T-Y" ๐ป
Note: This is an unofficial community project. It is not affiliated with or endorsed by the Ghostty project.
Performance: The underlying ghostty-web library and WASM builds have not been optimized for web/VS Code environments. Performance may not match native terminal emulators. This is expected and improvements are ongoing upstream.
Features
- Ghostty's terminal emulation - VT100/xterm escape sequence parsing via libghostty-vt WASM
- Real PTY integration - Full terminal emulation with native shell support
- Panel and editor terminals - Open terminals in the bottom panel or as editor tabs
- Multi-tab support - Multiple terminal sessions in the panel view
- Theme integration - Automatically uses VS Code's color theme
- File path detection - Ctrl/Cmd+click to open files from terminal output
How It Works
This extension uses two main components:
-
libghostty-vt (WASM) - Ghostty's terminal emulation library handles:
- VT100/xterm escape sequence parsing
- Terminal state management (cells, cursor, scrollback)
- Unicode/grapheme handling
- Key encoding (Kitty protocol, xterm modifyOtherKeys)
-
Canvas2D Renderer (JavaScript) - The extension renders the terminal using:
- HTML5 Canvas with 2D context
- Dirty line tracking for efficient updates
- VS Code theme color integration
Note: This extension uses Canvas2D rendering, not WebGL. GPU-accelerated WebGL rendering is a potential future enhancement.
Installation
Search for "BooTTY" in the VS Code extensions marketplace, or install from the command line:
code --install-extension bigboss.bootty
Usage
| Action | Windows/Linux | macOS |
|---|---|---|
| Toggle terminal panel | Ctrl+` | Cmd+` |
| New terminal | Ctrl+Shift+` | Cmd+Shift+` |
| New terminal in panel | Ctrl+Shift+T | Cmd+Shift+T |
| Next tab | Ctrl+Shift+] | Cmd+Shift+] |
| Previous tab | Ctrl+Shift+[ | Cmd+Shift+[ |
You can also use the Command Palette (Ctrl+Shift+P / Cmd+Shift+P):
BooTTY: New TerminalBooTTY: New Terminal in EditorBooTTY: New Terminal in PanelBooTTY: Toggle Terminal Panel
Configuration
| Setting | Default | Description |
|---|---|---|
bootty.fontFamily | "" | Font family (empty = use editor font) |
bootty.fontSize | 0 | Font size in pixels (0 = use editor size) |
bootty.defaultTerminalLocation | "panel" | Where new terminals open ("panel" or "editor") |
bootty.bell | "visual" | Bell style ("visual" or "none") |
bootty.notifications | true | Show notifications from terminal apps (OSC 9) |
Requirements
- VS Code 1.106.0 or later
- macOS, Linux, or Windows
Credits
- Ghostty by Mitchell Hashimoto - The terminal emulator whose VT100 parser (libghostty-vt) powers this extension
- ghostty-web by Coder - WebAssembly bindings and Canvas2D renderer for libghostty-vt
Related Repositories
- BooTTY - This VS Code extension
- @0xbigboss/ghostty-web - Fork of ghostty-web with enhanced selection handling (npm)
License
MIT - See LICENSE for details.