Skip to content
Conduit

mcp server

btmux

A terminal emulator with tmux-style UX

buntec/btmuxcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

This project does not publish an install method we can turn into a config. Follow the README instead.

README

synced Oct 25, 2026

btmux

A terminal emulator and tmux-style session manager for the browser and desktop, powered by wterm and libghostty.

Highlights

  • Familiar tmux concepts and key bindings: sessions, windows, splits, zoom, and preset layouts
  • Server-side sessions: (re)connect from any number of frontends
  • Batteries included: file browser, Git mode, process viewer, Neovim GUI, VS Code integration
  • Coding agent state tracking and notifications
  • LaTeX rendering overlay
  • Single self-contained binary
  • Interactive, composable shader wallpapers
  • Support for base16/base24 color schemes, dark/light mode
  • Highly configurable
  • tmux-style CLI, REST API, MCP server, and an agent skill

Demos

Sessions, windows, and panes

https://github.com/user-attachments/assets/97306cfd-8c85-4134-911e-faada4723815

File browser, Git mode, and process viewer

https://github.com/user-attachments/assets/5e3c9a36-0783-45ea-886d-db83b4969694

Neovim GUI

https://github.com/user-attachments/assets/03185362-9673-48bc-97d8-c4695535c16f

Coding agents

https://github.com/user-attachments/assets/1c1886e8-2c41-412d-8448-a128df24cadf

LaTeX overlay

https://github.com/user-attachments/assets/716d0792-8989-43f7-887d-76d25f368321

Shader wallpapers

https://github.com/user-attachments/assets/4417fcdf-7d8f-4a2f-92ba-3144927a4ff2

Install

Release builds cover Apple Silicon macOS, x86-64/ARM64 Linux, and x64/ARM64 Windows. Windows support is experimental.

Desktop app:

  • macOS: brew install --cask buntec/btmux/btmux
  • Linux: install btmux-desktop-<arch>-unknown-linux-gnu.deb from Releases.
  • Windows: run btmux-desktop-<arch>-pc-windows-msvc-setup.exe from Releases. It installs for the current user, without admin rights.

The macOS app and Windows installers are unsigned. If macOS blocks the app, go to System Settings → Privacy & Security → Open Anyway; if SmartScreen blocks the installer, choose More info → Run anyway. See desktop details.

Browser / CLI on macOS or Linux:

curl -fsSL https://raw.githubusercontent.com/buntec/btmux/main/scripts/install.sh | bash
# or: brew install buntec/btmux/btmux

Browser / CLI on Windows: download btmux-x86_64-pc-windows-msvc.exe or btmux-aarch64-pc-windows-msvc.exe from Releases, rename it to btmux.exe, and put it in a directory on your PATH. For example, in PowerShell:

$arch = if ($env:PROCESSOR_ARCHITECTURE -eq 'ARM64') { 'aarch64' } else { 'x86_64' }
$dir = "$env:LOCALAPPDATA\Programs\btmux"
New-Item -ItemType Directory -Force $dir | Out-Null
Invoke-WebRequest "https://github.com/buntec/btmux/releases/latest/download/btmux-$arch-pc-windows-msvc.exe" -OutFile "$dir\btmux.exe"
[Environment]::SetEnvironmentVariable('Path', "$([Environment]::GetEnvironmentVariable('Path', 'User'));$dir", 'User')

On Windows:

  • Panes run powershell.exe by default. Set shell in config.toml to use pwsh, cmd.exe, Git Bash, or a WSL distribution (wsl.exe -d Ubuntu).
  • The config file is %APPDATA%\btmux\config.toml, and the access token is in %LOCALAPPDATA%\btmux\state.token (Get-Content "$env:LOCALAPPDATA\btmux\state.token").
  • btmux install (background service) and btmux upgrade (in-place upgrade) aren't supported. To update, quit btmux, replace btmux.exe, and start it again.

Homebrew, Windows, background services, and Home Manager are covered in Installation.

Quick start

btmux

This opens http://127.0.0.1:8004. Sign in with username btmux and the access token from the file whose path btmux prints at startup:

cat "${XDG_STATE_HOME:-$HOME/.local/state}/btmux/state.token"

On Windows, in PowerShell:

Get-Content "$env:LOCALAPPDATA\btmux\state.token"

Press <prefix> + ? to see all key bindings, or <prefix> + : to open the command palette.

Editor

<prefix> + e opens the configured editor over the active pane, and the file browser and Git mode open files there:

  • "neovim": a Neovim GUI drawn by btmux, with its command line, completion menu, messages, LSP signature help, and floating windows rendered as native UI. The default when Neovim 0.12 or newer is on PATH; see Neovim GUI.
  • "vscode": VS Code in the browser, using btmux's color scheme and font.
  • "pane": $EDITOR run in the pane's shell. The default without Neovim 0.12.

See Editor for details.

Learn more

Development

Requires Rust, Bun, and just. On macOS, install Xcode Command Line Tools (xcode-select --install): socket enumeration builds generate bindings using the macOS SDK and libclang. If libclang is installed separately, set LIBCLANG_PATH to its library directory. The pinned socket enumeration dependency does not require libclang on Linux. On Windows, install the MSVC build tools Rust needs. just setup and the desktop recipes run in PowerShell; the others need sh, so run them from Git Bash or put C:\Program Files\Git\bin on PATH.

just setup  # install dependencies
just dev    # backend on :8044, frontend on http://localhost:5173
just check  # type-check Rust and TypeScript

Run just to list all recipes. The dev server uses the dev profile and the fixed access token 1234.

License

MIT

↑↓ navigate openesc close