#cmux 0.63.0: SSH, Claude Code Teams, oh-my-openagent, Browser Import, Minimal Mode
SSH. cmux ssh user@remote creates a workspace for a remote machine. Browser panes route through the remote network so localhost just works. Drag an image into a remote session to upload via scp. Coding agent notifications come home to your local sidebar. Reconnects on drops.
Claude Code Teams. cmux claude-teams launches Claude Code's experimental teammate mode with one command. It sets up the environment, fakes a tmux session, and translates tmux commands into native cmux splits. Teammates stack vertically in a right column with sidebar metadata and notifications.
oh-my-openagent. cmux omo integrates oh-my-openagent (formerly oh-my-opencode), which orchestrates specialist agents across Claude, GPT, and Gemini in parallel. Same tmux shim as claude-teams, auto-installs the plugin, notifications route through cmux.
Browser Profile Import. Import cookies, history, and sessions from Chrome, Arc, Brave, Firefox, Safari, and 20+ browsers. The import wizard detects installed browsers, lets you pick profiles, and injects everything into cmux's browser panes so you're already logged in.
Minimal Mode. Hide the titlebar for a distraction-free terminal. Controls move to the sidebar and appear on hover. Toggle from the command palette or Settings.
Custom Commands. Define project-specific actions in cmux.json that launch from the command palette. One file per repo, no global config needed.
- Browser profile import — cookies, history, and settings from Chrome, Firefox, Safari, and more (#318, #1582, #1593)
- Support
window.open()popup windows in browser panes with shared OAuth context (#1150, #1600) - Minimal mode — hide the titlebar for a distraction-free terminal (#1479, #2218)
cmux.jsoncustom commands — define project-specific actions launched from the command palette (#2011, #2122)cmux omocommand for oh-my-openagent integration (#2087, #2230, #2280)- Codex CLI hooks integration for terminal notifications (#2103)
- Customizable number shortcuts for workspace switching (#1951)
- Customizable sidebar selection highlight color (#1824)
- Match Terminal Background sidebar color setting (#2293)
- Optional single-click focus for inactive split panes (#1796)
- Support image drag-and-drop into SSH terminals (#1838)
- Support dropping folders onto the dock icon to open as workspaces (#1571)
- Support modifier+key combinations in
send-keyCLI — ctrl+enter, shift+tab, arrow keys, home/end/delete/pageup/pagedown (#1994, #1920) --nameflag fornew-workspaceCLI command (#2160)--no-focusflag forcmux ssh(#2227)--directionflag for markdown open command (#1763)- Per-surface TTY exposed in
cmux treeoutput (#2040) set-color/clear-colorworkspace actions for tab color via CLI (#1873, #1833)- IntelliJ IDEA added to command palette Open Directory targets (#1860)
- Open a new terminal tab from empty tab bar double-click (#1601)
- Double-click custom titlebar to zoom or minimize (#2130)
- Confirm before closing pinned workspaces (#1895)
- Show tab name in close tab confirmation dialog (#1845)
- Sidebar listening ports are now clickable to open in browser (#1844)
- Ukrainian (uk) localization (#2226)
- Hidden CLI command for live terminal debugging (#1599)
rcandremote-controladded to command passthrough (#1539)- Export
CMUX_SOCKETalongsideCMUX_SOCKET_PATHin terminal env (#1991) - Dual licensing — AGPL + commercial (#2021)
- Universal binary (arm64 + x86_64) for stable releases (#2287)
- Add claude-teams, omo, and __tmux-compat to Go relay CLI for SSH sessions (#2238)
- Warn Before Quit enforced when Cmd+Q arrives via app switcher (#2186)
- Show update-available banner automatically on launch (#1651, #1543, #1575)
- Restore Sparkle scheduled update checks (#1597)
- New window inherits size from current window (#2124)
- Restore last-surface close preference toggle (#1679)
- Rename "Import From Browser" to "Import Browser Data" (#1672)
- Make founders email selectable in feedback success view (#1733)
- Include hardware details in feedback submissions (#1726)
- Coalesce scrollbar updates during bulk output for improved performance (#2116)
- Reduce shell integration prompt latency (#2109)
- Skip quit confirmation for tagged DEV builds (#2288)
- Use dedicated setting for sidebar port link browser preference (#2219)
- Skip sidebar PR lookup on main/master branches (#2110)
- Stabilize sidebar directory ordering when split focus changes (#1798)
- Improve tmux notification attention routing (#1898)
- Fix Cmd+N workspace creation crashes caused by stale snapshots, ARC hotpaths, and restore-time races (#2204, #2183, #2181, #2178, #2176, #2173, #2133, #2023, #1985, #1930)
- Fix ARC workspace inheritance crash and native Zig helper builds (#2283)
- Fix
EXC_BAD_ACCESScaused by over-releasing Ghostty font (#1496) - Fix terminal black screen on macOS 26.3.1 by dispatching Ghostty callbacks to main thread (#1937)
- Fix blank terminal renders after workspace switches (#1964)
- Fix stale terminal portal after restore churn (#2025)
- Fix floating portal terminal after nightly update relaunch (#1696)
- Fix terminal portal resync after restore-time bind (#1973)
- Fix terminal find overlay crash and focus handoff (#1487)
- Fix split transparency regression (#1568)
- Apply
background-opacityandbackground-blurto terminal rendering area (#1858) - Fix keyboard shortcuts not working with CJK input sources (Korean, Japanese, Russian) (#1649, #1913, #2202)
- Skip CJK fallback font injection when font-family already covers glyphs (#2241)
- Skip Korean from CJK font-codepoint-map auto-injection (#1700)
- Fix Japanese IME confirmation Enter from executing command prematurely (#2075, #1671)
- Fix Korean IME Enter handling on composition path in browser panes (#2108)
- Fix AZERTY Option+Delete word delete in Claude Code (#1640)
- Fix Escape key not working in terminal panels (e.g., lazygit) (#1957)
- Fix unbound Cmd+Shift+key combos being silently swallowed (#1959)
- Fix Cmd+W closing terminal tabs instead of About/Licenses windows (#1473)
- Fix Cmd+O opening Documents folder — handle in custom shortcut handler (#2034)
- Consume Cmd+number shortcuts when workspace index is out of bounds (#2033)
- Fix arrow key glyph matching in customizable shortcuts (#1443)
- Fix cursor movement on double-click selection (#1709)
- Fix doomscroll when reviewing scrollback (#1616)
- Fix browser panes rendering blank after reopen (#2141)
- Fix browser portal leaking to other tabs on Bonsplit tab switch (#2000)
- Fix browser freeze after pane split (#1852)
- Fix browser pane video fullscreen (#1921)
- Fix browser image copy pasteboard data (#1850)
- Fix browser pane file drops hanging on "Uploading" (#1843)
- Fix browser back navigation history handoff (#1897)
- Fix browser devtools X-close persistence (#1627)
- Fix browser PR metadata deadlock and BrowserPanelView hot paths (#1564)
- Fix Cloudflare/CAPTCHA verification failures in browser panel (#1877)
- Fix Google sign-in infinite loading in browser pane (#1493)
- Fix native value setter for React compatibility in browser panes (#2059)
- Fix sidebar badges not refreshing on workspace state change (#2046)
- Fix sidebar PR badge detection for workspace branches and restored workspaces (#1896, #1570, #1636)
- Fix sidebar notification persisting after being read (#1933)
- Fix premature workspace title truncation in sidebar (#1859)
- Fix pinned workspace ordering — keep pinned workspaces above pin boundary (#1503, #1505)
- Fix command palette ordering for "check" query (#1740)
- Fix command palette focus after terminal find (#2089)
- Fix missing command palette open-in targets (#1621)
- Fix all split panes appearing focused after layout restoration (#2088)
- Fix panel resize stuttering when tiled with browser panels (#1969)
- Fix splitter hitbox overlap and terminal scrollbar width resync (#1950)
- Increase content side hit width to prevent accidental window resize (#2018)
- Fix window position restore on relaunch (#2129)
- Fix dock icon not auto-switching with system dark mode (#1928, #1510)
- Align titlebar icons with traffic-light buttons (#1754)
- Fix focused notification sound playback (#1855)
- Fix laggy terminal sync during sidebar drags (#1598)
- Fix spinner hang after display resolution changes (#1549)
- Fix workspace layout follow-up spin loop (#1633)
- Fix Ghostty
resize_splitkeybind support (#1899) - Fix update attempt refreshing pill without actually updating (#2168, #2142, #2117)
- Fix SSH control master cleanup on remote teardown (#2104)
- Fix SSH cleanup after moving the last remote surface (#2123)
- Fix SSH image transfer cleanup and IPv6 followups (#1907, #1904)
- Fix SSH remote CLI wrapper and proxy follow-ups (#1596)
- Fix nightly SSH remote daemon checksum mismatch (#2225)
- Fix cmux ssh notify surface targeting (#1799)
- Fix tmux compat store decoding, layout cleanup, and cross-workspace fallback (#2207)
- Fix claude-teams pane anchoring with main-vertical layout (#2119)
- Fix claude-hook stop teardown races (#1954)
- Fix Claude Code hooks config to match actual schema (#1388)
- Handle TabManager unavailable in SessionEnd/Start hooks (#1735)
- Fix blocking sleep in preexec hook causing command lag (#1444)
- Fix redundant focus events causing Powerlevel10k redraws (#1579)
- Fix identical session autosave writes (#1732)
- Fix locale page crashes under Google Translate (#1956)
- Fix About Panel newline escaping (#1298)
- Fix remote sidebar directory canonicalization to preserve live paths (#1800)
- Fix AppleScript
count windowsreturning 0 andworking directoryreturning empty (#1826) - Fix PWD action routing to correct TabManager per tabId (#2147)
- Fix socket returning wrong error when surface_id is provided but unresolvable (#2150)
- Guard inherited terminal config against stale surfaces (#2101)
- Suppress socat stdout in
_cmux_sendto prevent "OK" leak (#1619) - Add
-rshorthand to skip session ID check in Claude wrapper (#1992) - Check git repo before running git commands to prevent TCC permission prompts (#1677)
- Preserve explicit wheel scrollback against passive follow (#1965)
- Fix terminal pane drag/drop handoff delay (#1837)
- Remove restricted web-browser entitlement (#1727)