Making Windows Terminal Look Good™
embelish is a lightweight, tmux-style terminal session multiplexer for Windows Terminal, written in Go. It manages multiple persistent shell sessions with keyboard-driven navigation.
- Ctrl+B prefix keybindings — tmux-style command mode
- Multiple sessions — create, switch, kill, and rename sessions on the fly
- Session persistence — sessions survive even if the shell exits (auto-creates a new one)
- Session list overlay — browse and select sessions with
j/knavigation - Status bar — clean status bar showing active sessions
- Scroll region protection — status bar stays visible while terminal content scrolls
- Automatic resize — all sessions adapt to terminal size changes
- Cross-platform — ConPTY on Windows, PTY on Linux/macOS
git clone https://github.com/cexes/Making-Windows-Terminal-Look-Good.git
cd Making-Windows-Terminal-Look-Good
make build-windows # Windows
make build # Linux/macOSThe binary is a single executable with no dependencies.
go install github.com/cexes/Making-Windows-Terminal-Look-Good@latestembelish Launch interactive session manager
embelish help Show help
embelish version Show version
Once inside the TUI:
| Key | Action |
|---|---|
Ctrl+B c |
Create new session |
Ctrl+B 0-9 |
Switch to session by number |
Ctrl+B n |
Next session |
Ctrl+B p |
Previous session |
Ctrl+B s |
Show session list |
Ctrl+B x |
Kill current session |
Ctrl+B , |
Rename current session |
Ctrl+B d |
Detach (quit embelish) |
Ctrl+B ? |
Show help |
embelish uses Ctrl+B as the prefix key, just like tmux. Press Ctrl+B, release, then press a command key.
Inside the session list (Ctrl+B s):
j/kor arrow keys — navigateEnter— select sessionc— create new sessiond— delete sessionqorEsc— close list
embelish runs as a single process that:
- Puts the terminal in raw mode
- Creates a pseudo-terminal (ConPTY on Windows, PTY on Unix) for each session
- Forwards I/O between the real terminal and the active session
- Intercepts
Ctrl+Bto enter command mode - Draws a status bar on the last line using scroll region protection
make # build for both platforms
make build # build for current platform
make build-windows # cross-compile for Windows
make clean # remove binaries
make run # go run .MIT