I heard about cmux right after I heard about, and started using, Ghostty – a terminal application written (in Rust) by Mitchell Hashimoto (of Hashicorp fame). I’d had mixed feelings about Ghostty, but figured it would probably go through pretty fast iterations and improvement, so I kept it around. I was pretty convinced I didn’t really need cmux per se, but thought the vertical tabs on the sidebar with more than just a window title could be useful. Ya gotta try, right?
So, I gave it a shot. I used it for probably 2-3 months. It’s a fine tool, as is Ghostty, but these things are mostly solving issues I don’t really have. I’m not someone who uses vim or emacs as my primary IDE, and I don’t need to run a command in 50 separate terminal windows simultaneously (er, anymore, ask me about my first beowulf cluster in 2003!). I also don’t switch my working context across terminal panes in a single window, I do it at the macos desktop level (using SpaceJump, which I recently found and is helpful for that). I have a desktop per project, and each desktop has the terminal windows, browser windows, documentation, and IDE windows for just that project (I have 12 desktops, currently).
Ultimately, I gave iTerm2 another shot after a long time (years, actually) just using the native macos Terminal application. It turns out that iTerm2 actually has vertical tabs, which is nice. Also, the TUIs for Codex and Claude Code both set pretty good window titles, and notifications happen exactly like they did in cmux. I had issues with the cmux in-terminal browser, so I never used it, so in all, I can’t say I’m really missing a whole lot from not using cmux.
This in no way is a knock on cmux, or anyone who uses it. I’m also not advocating that others not use whatever they want. I’m just recording my current mindset. At some point I’m sure it’ll change or I’ll go in another direction, which makes posts like this interesting in a historical chronology context.