LintLabs · Open beta

lmux is the lean mux

cmux and herdr, in one lean app.

The cmux window you know, with herdr's persistence built in. Terminals, browsers and agents keep running on your Mac and your servers. Quit, reboot or lose the network, and everything is where you left it.

cmux window+ herdr persistence+ tmux inside= lmux

Version 0.1.0 (89) · macOS 12 or later · Apple silicon

Built in together.

lmux takes the parts of cmux and herdr people actually use and puts them in one app, with tmux underneath. You don't install or run any of them separately.

From cmux

The window

  • Folders and workspaces in a sidebar
  • Splits, tabs and browser panes
  • Notifications and agent status cards
  • The agent CLI, with the same command names
  • Import your cmux workspaces in one step
Left out: the cloud VM service, team features, vault, recordings, the iOS simulator and ~25 background helpers.
From herdr

Persistence

  • Nothing closes for good
  • Quit, close the lid, lose the network or reboot
  • Every pane returns to the same folder and scrollback
  • Each Claude session resumes with claude --resume
  • Browsers keep running while you're away
Left out: nothing.
From tmux

The engine

  • Every terminal lives in tmux on its own machine
  • Keeps running with no window attached
  • tmux ships inside the app
Left out: having to install it, configure it or remember its keys.

Why it's lean.

The same workload in cmux and lmux on one MacBook Air: each workspace has a terminal printing about 20 lines a second, plus an idle split. Figures are what each app added on top of idle.

cmuxlmux
App on disk744 MB29 MB
Memory, 40 workspaces+698 MBabout +100 MB
CPU, 40 workspaces15.5%10%
Each agent command~170 ms~3 ms
Creating 40 workspaces11.5 s0.3 s
Most tested40 workspaces200 workspaces, 400 terminals

The app draws only the pane on screen. Remote terminals and browsers run on the server, so the laptop receives only what you're looking at.

One window for every machine.

Each computer runs a small lmux service that owns its terminals. The app on your Mac is just a view, so closing it stops nothing.

01

Nothing closes

Quit the app or restart your Mac. Every pane comes back with the same folder, history and Claude session.

02

Servers feel local

Open a workspace on a server and every terminal in it runs there. No manual SSH.

03

Agents with a browser

Claude Code can open a browser pane, click and type, and you watch it happen live.

Install in a minute.

Everything lmux needs is inside the app. There's nothing else to set up.

01

Download

Get lmux.dmg and open it.

02

Drag to Applications

Drag lmux onto the Applications folder, then open it from there.

03

Allow folder access

If macOS asks whether lmux may use a folder like Documents, click Allow. It asks once.

If macOS says it can't check lmux for malicious software, open System Settings › Privacy & Security, scroll down and click Open Anyway. This step goes away once the build is notarized by Apple.

Add a server.

Right-click the sidebar, choose Add Remote Host… and enter an SSH address like me@my-server. lmux installs itself there over SSH. The server needs tmux and Rust (curl https://sh.rustup.rs -sSf | sh), and on Linux loginctl enable-linger $USER so terminals outlive logout.