A native iOS client for remote tmux workspaces.
Remux is a native iOS client for remote tmux workspaces, built on Ghostty. It brings tmux's session, window, and pane model into a mobile-first interface. It previews files and running dev servers straight from the terminal, and uploads photos and files, with markup for images.
- tmux sessions: Attach to running sessions or start new ones.
- Windows and panes: Swipe between windows, pick panes from a bottom sheet with live previews, and split, zoom, or close them.
- Shortcut palette: Run saved commands with a tap. Starter sets cover shell, Claude Code, and Codex, and you can add your own commands and groups.
- Attachments: Upload photos and files to the server, with markup for images. The remote path is typed at the prompt.
- File preview: Long-press a path in terminal output to preview it: code, images, PDFs, or HTML pages.
- Localhost preview: Long-press a localhost URL to open the dev server running on the remote machine, hot reload and WebSockets included.
- Cursor control: Hold the space bar or long-press in the terminal, then drag to place the cursor.
- Direct SSH: Remux connects straight to the server, with no relay and no account. Passwords and private keys are stored in the iOS Keychain, and trusted host keys are remembered.
- Themes: Ghostty default, Catppuccin Mocha, and Catppuccin Latte, with adjustable font size.
Remux is in development. A TestFlight beta is planned; until then, build from source.
Requirements:
- Xcode with iOS 18 SDK support
- XcodeGen
Fetch the prebuilt GhosttyKit framework:
scripts/fetch_ghosttykit.shGenerate the Xcode project and build:
xcodegen generate
xcodebuild build \
-project Remux.xcodeproj \
-scheme Remux \
-destination 'generic/platform=iOS Simulator'Run the tests:
xcodebuild test \
-project Remux.xcodeproj \
-scheme Remux \
-destination 'platform=iOS Simulator,name=iPhone 17,OS=latest'To build GhosttyKit yourself instead of fetching it, see remux-ghostty and scripts/build_release_ghosttykit.sh.
Remux is built on Ghostty's terminal core and uses Citadel for SSH.