part of no-phux
phux is a programmable terminal runtime. A background server keeps shells running; public control and event interfaces let people, scripts, and coding agents work with them across clients and machines.
- Split, detach, and reattach in the TUI, or use a native or browser client.
- Read terminal state, send input, and wait for output through the JSON CLI, SDK, or MCP adapter. Visual and headless clients use the same resource protocol.
- Read structured agent lifecycle records from a harness, with terminal detection as the fallback.
- Connect directly to remote machines:
phux --remote me@minipairs over SSH once, then attaches over QUIC. No phux account is required.
Use tmux for mature terminal multiplexing. Choose phux when you also need public terminal and agent-event interfaces, independent clients, or direct remote attachment.
Use Herdr for an integrated agent workspace. Both systems keep real PTYs alive and expose agent-aware control. Herdr projects its workspace model to its clients; phux exposes Terminal and AgentSession resources for clients with their own layouts and workflows.
Choose by use case · translate tmux keys · compare the Herdr architecture · see measured performance
brew trust --tap no-phux/tap
brew install no-phux/tap/phuxOr use the verified release installer:
curl -fsSL https://phux.sh/install | shRelease builds support macOS arm64, Linux x86_64, and Linux arm64. Windows is not supported. For the native macOS Cockpit:
curl -fsSL https://phux.sh/install-cockpit | shFor agents:
npx skills add no-phux/skillsRun phux to start. Prefix is Ctrl-A; Ctrl-A d detaches. Other channels
and source builds: Install.
phux # start the server and attach
# Ctrl-A % # split left/right
# Ctrl-A d # detach; the shells keep running
phux ls --json # inspect the same terminals headlessly
phux snapshot default # read the current grid without attaching a UIQuickstart · keys and configuration · remote access · agent control · harness emit contract · build a client
Apache-2.0. Copyright 2026 phall.