Changelog

0.62.1
Added
  • Cmd+T (New tab) shortcut on the welcome screen (#1258)
Fixed
  • Cmd+backtick window cycling skipping windows
  • Titlebar shortcut hint clipping (#1259)
  • Terminal portals desyncing after sidebar changes (#1253)
  • Background terminal focus retries reordering windows
  • Pure-style multiline prompt redraws in Ghostty
  • Return key not working on Cmd+Ctrl+W close confirmation (#1279)
  • Concurrent remote daemon RPC calls timing out (#1281)
Removed
  • SSH remote port proxying (reverted, will return in a future release)
0.62.0
Markdown Viewer, Browser Find, Vi Copy Mode, and Localization

Markdown Viewer. Open Markdown files in their own panel and keep them live with file watching. Notes, READMEs, and docs refresh automatically as the file changes on disk.

Find in Browser. Browser panels now support Cmd+F with inline find controls, so you can search long docs, dashboards, and issue threads without leaving cmux.

Vi Copy Mode. Terminal scrollback now has a keyboard copy mode with vi-style navigation, making it much easier to inspect and copy from large output buffers.

Custom Notification Sounds. Choose from bundled sounds or pick your own audio file so background task notifications are easier to notice and easier to personalize.

Expanded Localization. cmux now includes Japanese plus 16 additional languages, and a per-app language override lets you change the UI language without changing macOS system settings.

Added
  • Markdown viewer panel with live file watching (#883)
  • Find-in-page (Cmd+F) for browser panels (#837, #875)
  • Keyboard copy mode for terminal scrollback with vi-style navigation (#792)
  • Custom notification sounds with file picker support (#839, #869)
  • Browser camera and microphone permission support (#760, #913)
  • Language setting for per-app locale override (#886)
  • Japanese localization (#819)
  • 16 new languages added to localization (#895)
  • Kagi as a search provider option (#561)
  • Open Folder command (Cmd+O) (#656)
  • Dark mode app icon for macOS Sequoia (#702)
  • Close other pane tabs with confirmation (#475)
  • Flash Focused Panel command palette action (#638)
  • Zoom/maximize focused pane in splits (#634)
  • cmux tree command for full CLI hierarchy view (#592)
  • Install or uninstall the cmux CLI from the command palette (#626)
  • Clipboard image paste in terminal with Cmd+V (#562, #853)
  • Middle-click X11-style selection paste in terminal (#369)
  • Honor Ghostty background-opacity across all cmux chrome (#667)
  • Setting to hide Cmd-hold shortcut hints (#765)
  • Focus-follows-mouse on terminal hover (#519)
  • Sidebar help menu in the footer (#958)
  • External URL bypass rules for the embedded browser (#768)
  • Telemetry opt-out setting (#610)
  • Browser automation docs page (#622)
  • Vim mode indicator badge on terminal panes (#1092)
  • Sidebar workspace color in CLI sidebar_state output (#1101)
  • Prompt before closing window with Cmd+Ctrl+W (#1219)
  • Jump to Latest button in notifications popover (#1167)
  • Khmer localization (#1198)
  • cmux claude-teams launcher (#1179)
Changed
  • Command palette search is now async and decoupled from typing for reduced lag
  • Fuzzy matching improved with single-edit and omitted-character word matches
  • Replaced keychain password storage with file-based storage (#576)
  • Fullscreen shortcut changed to Cmd+Ctrl+F, and Cmd+Enter also toggles fullscreen (#530)
  • Workspace rename shortcut Cmd+Shift+R now uses the command palette flow
  • Renamed tab color to workspace color in user-facing strings (#637)
  • Feedback recipient changed to feedback@manaflow.com (#1007)
  • Regenerated app icons from Icon Composer (#1005)
  • Moved update logs into the Debug menu (#1008)
  • Updated Ghostty to v1.3.0 (#1142)
  • Welcome screen colors adapted for light mode (#1214)
  • Notification sound picker width constrained (#1168)
Fixed
  • Frozen blank launch from session restore race condition (#399, #565)
  • Crash on launch from an exclusive access violation in drag-handle hit testing (#490)
  • Use-after-free in ghostty_surface_refresh after sleep/wake (#432, #619)
  • Startup SIGSEGV by pre-warming locale before SentrySDK.start (#927)
  • IME issues: Shift+Space toggle inserting a space (#641, #670), Ctrl fast path blocking IME events, browser address bar Japanese IME (#789, #867), and Cmd shortcuts during IME composition
  • CLI socket autodiscovery for tagged sockets (#832)
  • Flaky CLI socket listener recovery (#952, #954)
  • Side-docked dev tools resize (#712)
  • Dvorak Cmd+C colliding with the notifications shortcut (#762)
  • Terminal drag hover overlay flicker
  • Titlebar controls clipped at the bottom edge (#1016)
  • Sidebar git branch recovery after sleep/wake and agent checkout (#494, #671, #905)
  • Browser portal routing, uploads, and click focus regressions (#908, #961)
  • Notification unread persistence on workspace focus
  • Escape propagation when the command palette is visible (#847)
  • Cmd+Shift+Enter pane zoom regression in browser focus (#826)
  • Cross-window theme background after jump-to-unread (#861)
  • window.open() and target=_blank not opening in a new tab (#693)
  • Terminal wrap width for the overlay scrollbar (#522)
  • Orphaned child processes when closing workspace tabs (#889)
  • Cmd+F Escape passthrough into terminal (#918)
  • Terminal link opens staying in the source workspace (#912)
  • Ghost terminal surface rebind after close (#808)
  • Cmd+plus zoom handling on non-US keyboard layouts (#680)
  • Menubar icon invisible in light mode (#741)
  • Various drag-handle crash fixes and reentrancy guards
  • Background workspace git metadata refresh after external checkout
  • Markdown panel text click focus (#991)
  • Browser Cmd+F overlay clipping in portal mode (#916)
  • Voice dictation text insertion (#857)
  • Browser panel lifecycle after WebContent process termination (#892)
  • Typing lag reduction by hiding invisible views from the accessibility tree (#862)
  • CJK font fallback preventing decorative font rendering for CJK characters (#1017)
  • Inline VS Code serve-web token exposure via argv (#1033)
  • Browser pane portal anchor sizing (#1094)
  • Pinned workspace notification reordering (#1116)
  • cmux --version memory blowup (#1121)
  • Notification ring dismissal on direct terminal clicks (#1126)
  • Browser portal visibility when terminal tab is active (#1130)
  • Browser panes reloading when switching workspaces (#1136)
  • Sidebar PR badge detection (#1139)
  • Browser address bar disappearing during pane zoom (#1145)
  • Ghost terminal surface focus after split close (#1148)
  • Browser DevTools resize loop and layout stability (#1170, #1173, #1189)
  • Typing lag from sidebar re-evaluation and hitTest overhead (#1204)
  • Browser pane stale content after drag splits (#1215)
  • Terminal drop overlay misplacement during drag hover (#1213)
  • Hidden browser slot inspector focus crash (#1211)
  • Browser devtools hide fallback (#1220)
  • Browser portal refresh on geometry churn (#1224)
  • Browser tab switch triggering unnecessary reload (#1228)
  • Devtools side dock guard for attached devtools (#1230)
0.61.0
Tab Colors, Command Palette, Pin Workspaces

Tab Colors. Right-click any workspace in the sidebar to assign it a color. There are 17 presets to choose from, or pick a custom color. Colors show on the tab itself and on the workspace indicator rail.

Tab Colors

Command Palette. Hit Cmd+Shift+P to open a searchable command palette. Every action in cmux is here: creating workspaces, toggling the sidebar, checking for updates, switching windows. Keyboard shortcuts are shown inline so you can learn them as you go.

Command Palette

Open With. You can now open your current directory in VS Code, Cursor, Zed, Xcode, Finder, or any other editor directly from the command palette. Type "open" and pick your editor.

Open With

Pin Workspaces. Pin a workspace to keep it at the top of the sidebar. Pinned workspaces stay put when other workspaces reorder from notifications or activity.

Pin Workspaces

Workspace Metadata. The sidebar now shows richer context for each workspace: PR links that open in the browser, listening ports, git branches, and working directories across all panes.

Workspace Metadata
Added
  • Command palette (Cmd+Shift+P) with update actions and all-window switcher results (#358, #361)
  • Split actions and shortcut hints in terminal context menus
  • Cross-window tab and workspace move UI with improved destination focus behavior
  • Sidebar pull request metadata rows and workspace PR open actions
  • Workspace color schemes and left-rail workspace indicator settings (#324, #329, #332)
  • URL open-wrapper routing into the embedded browser (#332)
  • Cmd+Q quit warning with suppression toggle (#295)
  • cmux --version output now includes commit metadata
Changed
  • Added light mode and unified theme refresh across app surfaces (#258) — thanks @ijpatricio for the report!
  • Browser link middle-click handling now uses native WebKit behavior (#416)
  • Settings-window actions now route through a single command-palette/settings flow
  • Sentry upgraded with tracing, breadcrumbs, and dSYM upload support (#366)
  • Session restore scope clarification: cmux restores layout, working directory, scrollback, and browser history, but does not resume live terminal process state yet
Fixed
  • Startup split hang when pressing Cmd+D then Ctrl+D early after launch (#364)
  • Browser focus handoff and click-to-focus regressions in mixed terminal/browser workspaces (#381, #355)
  • Caps Lock handling in browser omnibar keyboard paths (#382)
  • Embedded browser deeplink URL scheme handling (#392)
  • Sidebar resize cap regression (#393)
  • Terminal zoom inheritance for new splits, surfaces, and workspaces (#384)
  • Terminal find overlay layering across split and portal-hosted layouts
  • Titlebar drag and double-click zoom handling on browser-side panes
  • Stale browser favicon and window-title updates after navigation
0.60.0
Tab Context Menu, DevTools, Notification Rings, CJK Input

Tab Context Menu. Right-click any tab in a pane to rename it, close tabs to the left or right, move it to another pane, or create a new terminal or browser tab next to it. You can also zoom a pane to full size and mark tabs as unread.

Tab Context Menu

Browser DevTools. The embedded browser now has full WebKit DevTools. Open them with the standard shortcut and they persist across tab switches. Inspect elements, debug JavaScript, and monitor network requests without leaving cmux.

Browser DevTools

Notification Rings. When a background process sends a notification (like a long build finishing), the terminal pane shows an animated ring so you can spot it at a glance without switching workspaces.

CJK Input. Full IME support for Korean, Chinese, and Japanese. Preedit text renders inline with proper anchoring and sizing, so composing characters works the way you'd expect.

CJK Input

Claude Code. Claude Code integration is now enabled by default. Each workspace gets its own routing context, and agents can read terminal screen contents via the API.

Added
  • Tab context menu with rename, close, unread, and workspace actions (#225)
  • Cmd+Shift+T reopens closed browser panels (#253)
  • Vertical sidebar branch layout setting showing git branch and directory per pane
  • JavaScript alert/confirm/prompt dialogs in browser panel (#237)
  • File drag-and-drop and file input in browser panel (#214)
  • tmux-compatible command set with matrix tests (#221)
  • Pane resize divider control via CLI (#223)
  • Production read-screen capture APIs (#219)
  • Notification rings on terminal panes (#132)
  • Claude Code integration enabled by default (#247)
  • HTTP host allowlist for embedded browser with save and proceed flow (#206, #203)
  • Setting to disable workspace auto-reorder on notification (#215)
  • Browser panel mouse back/forward buttons and middle-click close (#139)
  • Browser DevTools shortcut wiring and persistence (#117)
  • CJK IME input support for Korean, Chinese, and Japanese (#125)
  • --help flag on CLI subcommands (#128)
  • --command flag for new-workspace CLI command (#121)
  • rename-tab socket command (#260)
  • Remap-aware bonsplit tooltips and browser split shortcuts (#200)
Fixed
  • IME preedit anchor sizing (#266)
  • Cmd+Shift+T focus against deferred stale callbacks (#267)
  • Unknown Bonsplit tab context actions causing crash (#264)
  • Socket CLI commands stealing macOS app focus (#260)
  • CLI unix socket lag from main-thread blocking (#259)
  • Main-thread notification cascade causing hangs (#232)
  • Favicon out-of-sync during back/forward navigation (#233)
  • Stale sidebar git branch after closing a split
  • Browser download UX and crash path (#235)
  • Browser reopen focus across workspace switches (#257)
  • Mark Tab as Unread no-op on focused tab (#249)
  • Split dividers disappearing in tiny panes (#250)
  • Flaky browser download activity accounting (#246)
  • Drag overlay routing and terminal overlay regressions (#218)
  • Initial bonsplit split animation flicker
  • Window top inset on new window creation (#224)
  • Cmd+Enter being routed as browser reload (#213)
  • Child-exit close for last-terminal workspaces (#254)
  • Sidebar resizer hitbox and cursor across portals (#255)
  • Workspace-scoped tab action resolution
  • IDN host allowlist normalization
  • setup.sh cache rebuild and stale lock timeout (#217)
  • Inconsistent Tab/Workspace terminology in settings and menus (#187)
Changed
  • CLI workspace commands now run off the main thread for better responsiveness (#270)
  • Remove border below titlebar (#242)
  • Slimmer browser omnibar with button hover/press states (#271)
  • Browser under-page background refreshes on theme updates (#272)
  • Command shortcut hints scoped to active window (#226)
  • Nightly and release assets are now immutable (no accidental overwrite) (#268, #269)
0.59.0
Fixed
  • Fix panel resize hitbox being too narrow and stale portal frame after panel resize
0.58.0
Fixed
  • Fix split blackout race condition and focus handoff when creating or closing splits
0.57.0
Added
  • Terminal panes now show an animated drop overlay when dragging tabs
Fixed
  • Fix blue hover not showing when dragging tabs onto terminal panes
  • Fix stale drag overlay blocking clicks after tab drag ends
0.56.0
No user-facing changes.
0.55.0
Changed
  • Move port scanning from shell to app-side with batching for faster startup
Fixed
  • Fix visual stretch when closing split panes
  • Fix omnibar Cmd+L focus races
0.54.0
Fixed
  • Fix browser omnibar Cmd+L causing 100% CPU from infinite focus loop
0.53.0
Changed
  • CLI commands are now workspace-relative: commands use CMUX_WORKSPACE_ID environment variable so background agents target their own workspace instead of the user's focused workspace
  • Remove all index-based CLI APIs in favor of short ID refs (surface:1, pane:2, workspace:3)
  • CLI send and send-key support --workspace and --surface flags for explicit targeting
  • CLI escape sequences (\n, \r, \t) in send payloads are now handled correctly
  • --id-format flag is respected in text output for all list commands
Fixed
  • Fix background agents sending input to the wrong workspace
  • Fix close-surface rejecting cross-workspace surface refs
  • Fix malformed surface/pane/workspace/window handles passing through without error
  • Fix --window flag being overridden by CMUX_WORKSPACE_ID environment variable
0.52.0
Changed
  • Faster workspace switching with reduced rendering churn
Fixed
  • Fix Finder file drop not reaching portal-hosted terminals
  • Fix unfocused pane dimming not showing for portal-hosted terminals
  • Fix terminal hit-testing and visual glitches during workspace teardown
0.51.0
Fixed
  • Fix menubar and right-click lag on M1 Macs in release builds
  • Fix browser panel opening new tabs on link click
0.50.0
Fixed
  • Fix crashes and fatal error when dropping files from Finder
  • Fix zsh git branch display not refreshing after changing directories
  • Fix menubar and right-click lag on M1 Macs
0.49.0
Fixed
  • Fix crash (stack overflow) when clicking after a Finder file drag
  • Fix titlebar folder icon briefly enlarging on workspace switch
0.48.0
Fixed
  • Fix right-click context menu lag in notarized builds by adding missing hardened runtime entitlements
  • Fix claude shim conflicting with --resume, --continue, and --session-id flags
0.47.0
Fixed
  • Fix sidebar tab drag-and-drop reordering not working
0.46.0
Fixed
  • Fix broken mouse click forwarding in terminal views
0.45.0
Changed
  • Rebuild with Xcode 26.2 and macOS 26.2 SDK
0.44.0
Fixed
  • Crash caused by infinite recursion when clicking in terminal (FileDropOverlayView mouse event forwarding)
0.38.1
Fixed
  • Right-click and menubar lag in production builds (rebuilt with macOS 26.2 SDK)
0.38.0
Added
  • Double-clicking the sidebar title-bar area now zooms/maximizes the window
Fixed
  • Browser omnibar Cmd+L now reliably refreshes/selects-all and supports immediate typing without stale inline text
  • Omnibar inline completion no longer replaces typed prefixes with mismatched suggestion text
0.37.0
Added
  • "+" button on the tab bar for quickly creating new terminal or browser tabs
0.36.0
Fixed
  • App hang when omnibar safety timeout failed to fire (blocked main thread)
  • Tab drag/drop not working when multiple workspaces exist
  • Clicking in browser WebView not focusing the browser tab
0.35.0
Fixed
  • App hang when clicking browser omnibar (NSTextView tracking loop spinning forever)
  • White flash when creating new browser panels
  • Tab drag/drop broken when dragging over WebView panes
  • Stale drag timeout cancelling new drags of the same tab
  • 88% idle CPU from infinite makeFirstResponder loop
  • Terminal keys (arrows, Ctrl+N/P) swallowed after opening browser
  • Cmd+N swallowed by browser omnibar navigation
  • Split focus stolen by re-entrant becomeFirstResponder during reparenting
0.34.0
Fixed
  • Browser not loading localhost URLs correctly
0.33.0
Fixed
  • Menubar and general UI lag in production builds
  • Sidebar tabs getting extra left padding when update pill is visible
  • Memory leak when middle-clicking to close tabs
0.32.0
Sidebar Metadata

Sidebar Metadata. The sidebar now displays git branch, listening ports, log entries, progress bars, and status pills for each workspace.

Added
  • Sidebar metadata: git branch, listening ports, log entries, progress bars, and status pills
Fixed
  • localhost and 127.0.0.1 URLs not resolving correctly in the browser panel
Changed
  • browser open now targets the caller's workspace by default via CMUX_WORKSPACE_ID
0.31.0
Added
  • Arrow key navigation in browser omnibar suggestions
  • Browser zoom shortcuts (Cmd+/-, Cmd+0 to reset)
  • "Install Update and Relaunch" menu item when an update is available
Changed
  • Open browser shortcut remapped from Cmd+Shift+B to Cmd+Shift+L
  • Flash focused panel shortcut remapped from Cmd+Shift+L to Cmd+Shift+H
  • Update pill now shows only in the sidebar footer
Fixed
  • Omnibar inline completion showing partial domain (e.g. "news." instead of "news.ycombinator.com")
0.30.0
Fixed
  • Update pill not appearing when sidebar is visible in Release builds
0.29.0
Added
  • Cmd+click on links in the browser opens them in a new tab
  • Right-click context menu shows "Open Link in New Tab" instead of "Open in New Window"
  • Third-party licenses bundled in app with Licenses button in About window
  • Update availability pill now visible in Release builds
Changed
  • Cmd+[/] now triggers browser back/forward when a browser panel is focused (no-op on terminal)
  • Reload configuration shortcut changed to Cmd+Shift+,
  • Improved browser omnibar suggestions and focus behavior
0.28.2
Fixed
  • Sparkle updates from 0.27.0 could fail to detect newer releases because release build numbers were behind the latest published appcast build number
  • Release GitHub Action failed on repeat runs when SUPublicEDKey / SUFeedURL already existed in Info.plist
0.28.1
Fixed
  • Release build failure caused by debug-only helper symbols referenced in non-debug code paths
0.28.0
Added
  • Optional nightly update channel in Settings (Receive Nightly Builds)
  • Automated nightly build and publish workflow for main when new commits are available
Changed
  • Settings and About windows now use the updated transparent titlebar styling and aligned controls
  • Repository license changed to GNU AGPLv3
Fixed
  • Terminal panes freezing after repeated split churn
  • Finder service directory resolution now normalizes paths consistently
0.27.0
Fixed
  • Muted traffic lights and toolbar items on macOS 14 (Sonoma) caused by clipsToBounds default change
  • Toolbar buttons (sidebar, notifications, new tab) disappearing after toggling sidebar with Cmd+B
  • Update check pill not appearing in titlebar on macOS 14 (Sonoma)
0.26.0
Fixed
  • Muted traffic lights and toolbar items in focused window caused by background blur in themeFrame
  • Sidebar showing two different textures near the titlebar on older macOS versions
0.25.0
Fixed
  • Blank terminal on macOS 26 (Tahoe) — two additional code paths were still clearing the window background, bypassing the initial fix
  • Blank terminal on macOS 15 caused by background blur view covering terminal content
0.24.0
Changed
  • Update bundle identifier to com.cmuxterm.app for consistency
0.23.0
Changed
  • Rename app to cmux — new app name, socket paths, Homebrew tap, and CLI binary name (bundle ID remains com.cmuxterm.app for Sparkle update continuity)
  • Sidebar now shows tab status as text instead of colored dots, with instant git HEAD change detection
Fixed
  • CLI set-status command not properly quoting values or routing --tab flag
0.22.0
Fixed
  • Xcode and system environment variables (e.g. DYLD, LANGUAGE) leaking into terminal sessions
0.21.0
Fixed
  • Zsh autosuggestions not working with shared history across terminal panes
0.17.3
Fixed
  • Auto-update not working (Sparkle EdDSA signing was silently failing due to SUPublicEDKey missing from Info.plist)
0.17.1
Fixed
  • Auto-update not working (Sparkle public key was missing from release builds)
0.17.0
Fixed
  • Traffic lights (close/minimize/zoom) not showing on macOS 13-15
  • Titlebar content overlapping traffic lights and toolbar buttons when sidebar is hidden
0.16.0
Added
  • Sidebar blur effect with withinWindow blending for a polished look
  • --panel flag for new-split command to control split pane placement
0.15.0
Fixed
  • Typing lag caused by redundant render loop
0.14.0
Added
  • Setup script for initializing submodules and building dependencies
  • Contributing guide for new contributors
Fixed
  • Terminal focus when scrolling with mouse/trackpad
Changed
  • Reload scripts are more robust with better error handling
0.13.0
Added
  • Customizable keyboard shortcuts via Settings
Fixed
  • Find panel focus and search alignment with Ghostty behavior
Changed
  • Sentry environment now distinguishes between production and dev builds
0.12.0
Fixed
  • Handle display scale changes when moving between monitors
Changed
  • Fix SwiftPM cache handling for release builds
0.11.0
Added
  • Notifications documentation for AI agent integrations
Changed
  • App and tooling updates
0.10.0
Added
  • Sentry SDK for crash reporting
  • Documentation site with Fumadocs
  • Homebrew installation support (brew install --cask cmux)
  • Auto-update Homebrew cask on release
Fixed
  • High CPU usage from notification system
  • Release workflow SwiftPM cache issues
Changed
  • New tabs now insert after current tab and inherit working directory
0.9.0
Changed
  • Normalized window controls appearance
  • Added confirmation panel when closing windows with active processes
0.8.0
Fixed
  • Socket key input handling
  • OSC 777 notification sequence support
Changed
  • Customized About window
  • Restricted titlebar accessories for cleaner appearance
0.7.0
Fixed
  • Environment variable and terminfo packaging issues
  • XDG defaults handling
0.6.0
Fixed
  • Terminfo packaging for proper terminal compatibility
0.5.0
Added
  • Sparkle updater cache handling
  • Ghostty fork documentation
0.4.0
Added
  • cmux CLI with socket control modes
  • NSPopover-based notifications
Fixed
  • Notarization and codesigning for embedded CLI
  • Release workflow reliability
Changed
  • Refined titlebar controls and variants
  • Clear notifications on window close
0.3.0
Added
  • Debug scrollback tab with smooth scroll wheel
  • Mock update feed UI tests
  • Dev build branding and reload scripts
Fixed
  • Notification focus handling and indicators
  • Tab focus for key input
  • Update UI error details and pill visibility
Changed
  • Renamed app to cmux
  • Improved CI UI test stability
0.1.0
Added
  • Sparkle auto-update flow
  • Titlebar update UI indicator
0.0.x
Initial releases with core terminal functionality:
  • GPU-accelerated terminal rendering via Ghostty
  • Tab management with native macOS UI
  • Split pane support
  • Keyboard shortcuts
  • Socket API for automation