Muxflow
A remote-first tmux IDE that keeps coding agents, files, Git and phone notifications in one place.
- Source repo
- gal064/muxflow
- Stars
- ★ 75
- Last updated
- today
- License
- MIT
- Primary language
- TypeScript
- FA score
- 53/100 · Major gaps
At a glance
- How it runs
- Works with
- Portable with changesCodex · Claude Code
- Cost
- Free, no paid service needed
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- Developers running Claude Code or Codex on a long-lived remote Linux box who want sessions and processes to survive laptop reboots or disconnects.
- Not a fit if
- Users who don't work in tmux and want a zero-terminal setup
- Teams needing Windows or iOS today (documented: macOS, Linux, Android; iOS is 'coming soon')
- Hosts where tmux 3.3+ can't be installed or OpenSSH isn't available
- Source review
- 53/100 · Major gaps
What does this agent do, and when should you use it?
Muxflow is a remote-first IDE built on tmux, shipped as a Tauri desktop app for macOS and Linux plus an Android app. Sessions stay on the host: close the app, reboot your laptop or switch machines and every window, pane and process is still there; tmux sessions map to workspaces, windows to tabs, and renames flow both ways. It attaches to Linux or macOS hosts through your existing OpenSSH config, with a helper that talks over SSH and a private Unix socket rather than a TCP port, and multiple hosts can be shown side by side. Beyond the terminal it adds a Ports tab (list listeners and forward one with a click), a file browser with Markdown preview, Git diff/stage/commit/push, and native paste across SSH — a screenshot is uploaded and its path dropped into the remote pane. Codex, Claude Code and pi have lifecycle adapters, so blocked-question and finished notifications reach desktop and phone, alongside voice replies and walkie-talkie voice mode on mobile.
Muxflow attaches to a tmux server on the local machine or a remote Linux/macOS host, mapping tmux sessions to workspaces, windows to tabs and panes to panes, with renames synced both ways. Remote connections use your OpenSSH config, keys and agent, and install a helper into ~/.local/bin on the host; the helper communicates over SSH and a private Unix socket and needs no root. The Ports tab lists what is listening on the host and forwards a port to your machine in one click, the file panel browses, edits and downloads files with Markdown preview, and the Git panel performs diff, stage, commit and push. Pasting a screenshot or file uploads it over the same SSH connection and writes its path into the terminal, so Codex or Claude Code reads the image as if local. Agent lifecycle status comes from reviewable agent hooks, which drive desktop and Android notifications when an agent blocks on a question or finishes; the Android app also reads terminal output, types replies, starts new agents in any workspace, browses files and offers hold-to-talk voice mode with voice replies. Adapters cover Codex, Claude Code and pi; other CLI agents run as ordinary tmux windows and can be wired in through hooks.
- Developers running Claude Code or Codex on a long-lived remote Linux box who want sessions and processes to survive laptop reboots or disconnects.
- Engineers who work locally but put heavy agents on a remote machine and need to browse its files, inspect Git diffs and commit from the desktop app.
- People who leave the desk and want an Android notification when an agent finishes, then open the terminal, read output and reply from the phone.
- Teams juggling several hosts — dev box, GPU box, jump host — and comparing their sessions side by side.
- Users tired of scp-ing screenshots to a remote host and typing paths by hand before an agent can see the image.
- Individual developers who want to speak instructions to an agent during a commute and hear voice replies.
How do you install or deploy this agent?
Make sure tmux is installed on your machine and on every machine you connect to. Install the desktop app with the official script:
curl -fsSL https://github.com/gal064/muxflow/releases/latest/download/install.sh | bashFor Android, install the APK from the releases page. Building from source needs Rust 1.97.1, Node.js 24, pnpm 11, tmux 3.3+ and the Tauri 2 platform prerequisites:
pnpm install --frozen-lockfile
pnpm test:transport:local
tmux new-session -s work
pnpm tauri devPackage builds use pnpm release:linux -- x86_64, pnpm release:macos and pnpm mobile:apk:release.
How do you use this agent?
- Install tmux 3.3 or newer on the remote machine and confirm
ssh <host>works from your terminal (a~/.ssh/configalias is fine). - In Muxflow, click the host name at the bottom left, choose Connection settings… and click + Add host.
- Select SSH and enter the host or config alias in SSH host.
- Click Check helper, then Install helper… to place the helper in
~/.local/binon the remote machine (no root needed). - Click Connect.
- Optionally click Set up agent status… to enable Codex, Claude Code and pi notifications from that machine.
If notifications don't appear, open Settings and click Send test notification under System notifications. If the connection drops or lags, run Check helper for that host and use Install helper… / Upgrade helper… when offered.
What are this agent's strengths and limitations?
- Sessions live in tmux on the host, so closing the app, rebooting or switching machines preserves every window, pane and process.
- Remote access reuses your OpenSSH config and keys, and the helper talks over SSH plus a private Unix socket instead of exposing a TCP port.
- Native paste across SSH uploads a screenshot or file and writes its path into the remote pane, so Codex and Claude Code see it as an image.
- Ports forwarding, a file browser with Markdown preview, and Git diff/stage/commit/push are built into the same window.
- Lifecycle adapters for Codex, Claude Code and pi drive desktop and Android notifications, with voice replies and voice mode on the phone.
- MIT licensed, with published builds for Linux x86_64, macOS Apple Silicon and Android.
- Hard dependency on tmux: every local and remote machine needs tmux 3.3+, a real cost for people who don't already work in tmux.
- Documented platforms are macOS, Linux and Android only; iOS is marked coming soon and Windows isn't mentioned.
- Codex 0.157 and newer hide event origin via a shared background server, so status shows unknown unless Codex is restarted in a new pane.
- Voice features rely on an optional separately downloaded speech model with its own third-party notices.
- The remote helper is an extra component; version mismatches require manual Check helper / Upgrade helper troubleshooting.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| Muxflow This agent | 53 · Major gaps | Desktop appFree | ★ 75 | today | TypeScript | Codex · Claude Code |
| Intent Agent Workbench | 60 · Some gaps | Desktop app | ★ 377 | today | JavaScript | — |
| TermFold Debian Coding Terminal | 51 · Major gaps | Desktop appFree + model costs | ★ 32 | 1mo ago | Kotlin | Codex · Claude Code |
| Synara | 52 · Major gaps | Desktop appFree + model costs | ★ 2.2k | today | TypeScript | Codex · Claude Code |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows: the helper listens only on a private Unix socket (no TCP), runtime and state dirs are 0700, support bundles are 0600 and refuse overwrite/symlinks, private keys and passwords are explicitly not copied (auth stays with OpenSSH), and there is no telemetry beyond a once-daily GitHub update check. Deductions: install is curl | bash executing a remote script with no checksum or signature verification; modifying ~/.codex/config.toml and the tmux global environment are persistent external side effects on the user's environment, documented with markers and an uninstall path but without a clearly described confirmation flow; dependency security rests only on Cargo.toml version constraints with no audit or lockfile evidence in the provided files; publisher provenance is unverified, weakening attribution.
Evidence shows: CI runs clippy, cargo test, frontend checks and a bounded fuzz smoke on Linux and macOS; troubleshooting documents concrete diagnostic paths (doctor states, notification permissions, Codex unknown) with classified error output. Deductions: dependency availability demands fairly new, strict versions (tmux 3.3+, Rust 1.97.1, Node 24, pnpm 11) with no fallback guidance; nothing was executed, so self-consistency under real use is unconfirmed.
Evidence shows: a clear target of remote SSH + tmux coding-agent workflows, with multi-host, desktop and Android, voice and screenshot paste; capability boundaries are stated (only Codex/Claude Code/pi have lifecycle adapters, other CLIs run as plain windows). Deductions: trigger precision depends on hooks plus a workaround for Codex's background server that the docs admit relies on current upstream behavior and may break; iOS is marked coming soon, leaving an incomplete environment surface.
Evidence shows: a well-structured README with install, remote-connect steps, troubleshooting, build instructions and a docs index; a full MIT LICENSE; detailed known limitations (Intel Macs unsupported as hosts, macOS not notarized, notification permission traps). Deductions: no CHANGELOG or release-notes file; naming stability is muddied by ADE_-prefixed env vars alongside muxflow, suggesting a rename history; maintenance responsibility points to an individual account (gal064) with unverified publisher identity and an update path that depends on GitHub releases.
Evidence shows: outputs (terminal, files, Git, ports, notifications) are directly usable for the target user, and the product adds marginal value over raw tmux + SSH via notifications, mobile access and paste. Deductions: cost-benefit is non-trivial — helper installation, Codex config edits, keeping multiple clients on the same version, and Gatekeeper bypass on macOS; actual usability was not executed or verified.
Evidence shows: privacy and diagnostics docs make specific factual claims, and known upstream issues are cited by openai/codex issue numbers, giving some separation of fact from inference. Deductions: most feature claims rest on GIFs and prose with no checkable test output or evidence artifacts; cross-source corroboration is limited to CI config roughly matching docs, with no run results; publisher and source attribution cannot be independently confirmed.
- The installer pipes a remote script into bash with no checksum or signature verification; download and review it before running.
- Connecting a host modifies the tmux global environment and ~/.codex/config.toml, persistent side effects on the user's environment; confirm the changes on controlled hosts first.
- The macOS build is ad-hoc signed and not notarized, requiring a manual Gatekeeper bypass, which carries supply-chain and trust risk.
- Publisher identity is unverified and updates rely on latest.json from GitHub releases; verify the release source independently.
- This is a static source review with no build or test execution; feature claims are not runtime-verified.