your tmux sessions, in your pocket
Secure access to your tmux sessions from your phone.
End-to-end encrypted, peer-to-peer connected.
How it works
Install pmux
Replace tmux with pmux in your workflow. Every tmux command works the same way.
brew install pocketmux/tap/pmux Initialize agent service
Create the configuration file and install the agent service on your host system.
pmux init Pair your phone
Run the pair command and scan the QR code with the PocketMux app. A one-to-many constraint is enforced on phone-to-host pairings.
pmux pair Access remotely
Open the PocketMux app and see your paired hosts and their pux+tmux sessions. Connect to your choice of session/pane!
pmux new-session Built for privacy and security
Zero-knowledge Server
The signaling server never sees your terminal content, session metadata, or activity. It relays connection setup and nothing else.
End-to-end Encrypted
All terminal data flows directly between your devices over WebRTC DataChannels with DTLS encryption. No intermediary.
tmux-native
The pmux command is a transparent tmux proxy. Your muscle memory, aliases, and workflows remain unchanged. Just swap tmux for pmux.
Open source
The CLI + agent, signaling server, wire protocol, and shared types are all MIT licensed. Inspect, extend, or self-host.
Architecture
Terminal data flows directly between your devices. The server is a thin signaling relay that facilitates connections and stores device pairings and never sees any tmux session data. Direct connection failure will fallback to using Cloudflare's TURN service.
PocketMux App
- Terminal rendering & input
- MessagePack binary codec
- Secure keychain storage
- Ed25519 device identity
Agent + pmux CLI
- WebRTC peer connection
- Transparent tmux proxy
- Socket isolation
-L pmux - Session, window & pane I/O
Signaling Service
SDP/ICE relay + device pairing
zero terminal session data passes through this service
Mobile App
- Terminal rendering & input
- MessagePack binary codec
- Secure keychain storage
- Ed25519 device identity
pmux Agent
- WebRTC peer connection
- Transparent tmux proxy
- Socket isolation (-L pmux)
- Session, window & pane I/O
Cloudflare Signaling
SDP/ICE relay + device pairings
zero terminal data passes through this service
Pricing
Open source pmux
Free
- ✓
CLI + agent —
pmux - ✓ Signaling server — Cloudflare Worker
- ✓ Protocol + types — TypeScript
- ✓ MIT licensed
PocketMux app
$TBD/year
iOS and Android
- ✓ Native tmux-aware terminal interface
- ✓ Navigation and management of sessions, windows, and panes
- ✓ Customizable input bar; Tab, Ctrl, Esc, arrows, shortcuts, and custom byte commands
Why a subscription fee for PocketMux?
Your subscription covers the infrastructure that makes PocketMux work. Cloudflare hosting the signaling service, storing device pairing data, and providing a secure and high-performance TURN relay for reliable, encrypted connections when direct peer-to-peer isn't possible. A low annual price keeps the service running securely and privately without ads, telemetry, or data collection.