Remux is a native iOS client for remote tmux workspaces.
Remux brings tmux's session, window, and pane model into a native iPhone interface. Connect to a server, open or create a tmux session, then switch sessions, browse windows, split panes, close panes, and send input through native iOS controls.
- Save SSH servers and multiple tmux sessions per server
- Open existing tmux sessions or create new ones over SSH
- Keep multiple terminal sessions running and switch between them
- Render tmux windows and panes as native iOS-managed terminal surfaces
- Browse tmux windows and panes from native iOS controls
- Focus panes and route keyboard, paste, mouse, and scroll input to the focused pane
- Create and close tmux windows from the app
- Split and close tmux panes from the app
- Copy terminal selections and paste through the focused pane
- Store server passwords in Keychain
- Remember trusted SSH hosts
- Save terminal font and theme settings
- This is early development work, not a daily-driver terminal yet.
- SSH is the only transport available today. Mosh support is planned.
- Source builds currently require a local terminal-renderer XCFramework at the path configured in project.yml. The framework is not distributed in this repository, so it must be available at that path before generating or building the project.
Requirements:
- Xcode with iOS 18 SDK support
- XcodeGen
- the terminal-renderer XCFramework configured in project.yml
Generate the Xcode project:
xcodegen generateBuild:
xcodebuild build \
-project Remux.xcodeproj \
-scheme Remux \
-destination 'generic/platform=iOS Simulator'Test:
xcodebuild test \
-project Remux.xcodeproj \
-scheme Remux \
-destination 'platform=iOS Simulator,name=iPhone 17,OS=latest'- RemuxApp: iOS app source
- RemuxAppTests: unit and integration-style tests
- RemuxAppUITests: UI tests
- docs: project documentation
- project.yml: XcodeGen project definition