psmux v3.3.8/MIT/Rust on ConPTY

tmux, native on Windows. No WSL.

psmux is a terminal multiplexer for Windows 10 and 11 that runs directly on ConPTY. It reads your existing .tmux.conf, and it installs a tmux command so your fingers and scripts do not have to change.

This account is where I publish it, next to the other Rust tools I build: an htop for Windows, a network monitor, a VNC, RDP and SSH client that AI agents can drive, and a live video mixer.

4,335 stars across 12 projects 133,111 psmux release downloads

Illustration of a psmux session, drawn in HTML. The real recording is below.
  • 4,335GitHub stars across the 12 projects belowlive from the GitHub API
  • 151,000+release downloads on GitHub, all projectssum of release assets, Oct 2026
  • 48people have contributed to psmuxGitHub contributors API
  • 10 of 12projects written in Rustthe others: PowerShell, Python
psmuxquick start
PS> winget install psmux
PS> psmux new-session -s work
# or type tmux. psmux, pmux and tmux are the same binary.
release
v3.3.8, August 2026
runs on
Windows 10, Windows 11
binaries
psmux, pmux, tmux
downloads
133,111 from GitHub releases
license
MIT
01 / flagship

psmux

Native tmux for Windows, written in Rust on ConPTY.

psmux drives Windows ConPTY directly and speaks the tmux command language. It reads your existing .tmux.conf and tmux themes. Install it and you get three identical binaries, psmux, pmux and tmux, so old scripts keep working. It needs no WSL, Cygwin or MSYS2.

  • Windows 10
  • Windows 11
  • MIT
  • v3.3.8
  • 90+ tmux compatible commands and 140+ format variables
  • Mouse support, including over SSH on supported Windows builds
  • Copy mode with 53 vim keys
  • Claude Code agent teams open each teammate in its own psmux pane, with no extra config
  • Control mode (-C and -CC) for IDE and plugin authors, iTerm2 tmux gateway included
PS> winget install psmux
DeskVNCquick start
# download for Windows, macOS or Linux
https://github.com/psmux/DeskVNC/releases/latest

# then hand it to Claude Code (macOS path)
$ claude mcp add deskvnc -- /Applications/DeskVNCViewer.app/Contents/MacOS/dvv mcp --stdio
release
v0.27.10, October 2026
runs on
Windows, macOS, Linux
protocols
VNC (RFB 3.3 to 3.8), RDP, SSH and SFTP
agents
dvv MCP server, stdio or HTTP
license
MIT or Apache 2.0
02 / remote desktop for people and agents

DeskVNC

VNC, RDP and SSH in one native client, with an MCP server for AI agents.

Keep every VNC, RDP and SSH host in one library. Tabs split into panes, and each pane can hold a different machine over a different protocol. The protocol cores are written in Rust and frames are painted through WebGL2. Passwords stay in the OS keychain. There is no account and no telemetry.

It ships dvv, an MCP server. Claude Code or OpenCode can open a saved machine, read the screen, click and type over the ordinary protocol, with nothing installed on the target. Click into the pane and you have control back.

  • Windows
  • macOS
  • Linux
  • MIT or Apache 2.0
  • v0.27.10
19 msone observe and act cycle
447/scharacters typed by dvv_type
0.95 sone agent, two desktops, both tasks done

From the DeskVNC README, measured against a 1920x1080 Windows desktop on a LAN.

https://github.com/psmux/DeskVNC/releases/latest

.exe and .msi for Windows, a universal .dmg for macOS, .deb, .rpm and .AppImage for Linux.

GodwinMixquick start
$ git clone https://github.com/psmux/GodwinMix && cd GodwinMix
$ docker compose -f deploy/docker/docker-compose.yml up -d --build

# let an agent run the show
$ claude mcp add godwinmix -- godwinmix mcp
release
v0.2.1, October 2026
runs on
Linux, macOS, Windows, Docker
inputs
RTMP, SRT, HLS, RTSP, files, web pages
output
one or more RTMP destinations
license
Apache 2.0
03 / live video

GodwinMix

A live video mixer in Rust that keeps the RTMP output running.

Sources come in by URL: RTMP, SRT, HLS, RTSP, files, or a web page rendered by a real browser. One goes on programme at a time, and programme goes out to one or more RTMP destinations. The output encoder starts once and never restarts, because switching happens upstream on raw video and audio. Sources can join, drop or fail and the stream keeps going.

It is one binary on GStreamer with one HTTP port. The same binary is the gmx command line client and an MCP server, so an agent drives it through the API the web UI uses.

  • Linux
  • macOS
  • Windows
  • Docker
  • Apache 2.0
  • v0.2.1
30 fpsheld across takes, 0 disconnects
+4 msscheduled cue vs requested time
123unit tests on real GStreamer pipelines

From the GodwinMix README. Tested against mediamtx and node-media-server v4.

$ git clone https://github.com/psmux/GodwinMix && cd GodwinMix
$ docker compose -f deploy/docker/docker-compose.yml up -d --build
04 / terminal tools

Terminal tools

Small TUIs that each do one job. Most install as a single Rust binary from WinGet or crates.io, and several started as things I wanted next to psmux on my own Windows machine.

pstopquick start
PS> pstop --install-alias
PS> htop

htop for Windows. Per core CPU bars, memory, GPU and network meters, a process tree, and tabs for disk I/O, per process network, GPU and WSL. 23 color schemes.

  • Windows 10, 11
  • WinGet
  • Chocolatey
  • crates.io
PS> winget install marlocarlo.pstop
psnetquick start
PS> psnet
# nine tabs, no Npcap

Terminal network monitor for Windows. Traffic graphs, connections with DNS names, a packet inspector, a per app firewall and a LAN scan, in one binary of about 12 MB, with no Npcap.

  • Windows 10, 11
  • WinGet
  • crates.io
PS> winget install marlocarlo.psnet
tmuxpanelquick start
$ tmuxplugins
$ tmuxthemes

A TUI to browse, install, update and remove tmux plugins and themes, and edit options without memorising set -g. Works with tmux and psmux. Registry of 40+ plugins.

  • Windows
  • Linux
  • macOS
$ cargo install tmuxpanel
omp-managerquick start
PS> omp-manager

Sets up Oh My Posh from nothing: installs it, installs a Nerd Font, previews 100+ themes and writes the init line into each of eight shells, PowerShell 7 through Nushell.

  • Windows
  • Linux
  • macOS
PS> winget install marlocarlo.OmpManager
~/.psmux.confconfig
set -g @plugin 'psmux-plugins/ppm'
set -g @plugin 'psmux-plugins/psmux-sensible'
set -g @plugin 'psmux-plugins/psmux-resurrect'
run '~/.psmux/plugins/ppm/ppm.ps1'
# then Prefix + I inside psmux

PPM, a PowerShell port of tpm, plus ports of resurrect, continuum, sensible and vim navigator, and themes such as Catppuccin, Dracula, Nord and Tokyo Night.

  • Windows
  • PowerShell
PS> git clone https://github.com/psmux/psmux-plugins.git "$env:TEMP\psmux-plugins" ; Copy-Item "$env:TEMP\psmux-plugins\ppm" "$env:USERPROFILE\.psmux\plugins\ppm" -Recurse ; Remove-Item "$env:TEMP\psmux-plugins" -Recurse -Force
terminalmapquick start
$ terminalmap
# zoom 0 to 18, braille rendering

OpenStreetMap vector tiles drawn in braille, from world view down to street level. Also a Rust library: drop independent maps with their own markers into any TUI.

  • Windows
  • Linux
  • macOS
  • APT
$ cargo install terminalmap
psrootPowerShell
PS> psroot shell --network outbound
PS> psroot ls
PS> psroot test all
# 66 isolation tests, no Hyper-V needed

Docker style containers on Windows without Hyper-V, WSL or Docker, built on AppContainer and Job Objects. Runs on cloud VMs where nested virtualization is off. Standard tier needs no admin.

  • Windows 10 1809+
  • Linux
  • macOS
PS> git clone https://github.com/psmux/Psroot.git
PS> cd Psroot
PS> cargo build --release

No release yet. Build from source.

vigilquick start
$ sudo cargo run
# sudo adds firewall, fail2ban and attack data

Security dashboard for Linux servers: a 0 to 100 score, every listening port with a risk badge, fail2ban bans, firewall state and a braille map of where attacks come from.

  • Linux
$ git clone https://github.com/psmux/vigil
$ cd vigil
$ cargo build
$ cargo run

No release yet. Build from source; the crate called vigil on crates.io is a different project.

tmuxtopquick start
$ python tmuxtop.py --backup

A top for tmux: CPU and memory for the processes in every session, window and pane, with JSON export and a backup script that rebuilds your sessions. The oldest repo here, from 2024.

  • tmux + Python 3
$ git clone https://github.com/psmux/tmuxtop
$ cd tmuxtop
$ pip install psutil
$ python tmuxtop.py