What's Changed
- Remote tmux (
-CCover SSH) mirroring (beta) by @robertnisipeanu in #5553 - Fix iOS TestFlight signing entitlements by @azooz2003-bit in #6141
- iOS: add Return shortcut to terminal accessory bar by @lawrencecchen in #6101
- iOS terminal: full-height regression test + keyboard/layout freeze fuzzing by @lawrencecchen in #6103
- iOS: close the open workspace from the top-right menu by @lawrencecchen in #6142
- iOS composer: image attachments, attach button, autocorrect, padding by @lawrencecchen in #6102
- iOS: fix Swift 6 actor-isolation compile error in composer image encode path by @lawrencecchen in #6199
- iOS: Telegram-style chat surface for agent sessions by @azooz2003-bit in #5984
- CI: set up Node in nightly + release jobs (fix npm not found turning main red) by @lawrencecchen in #6206
- iOS composer: on-device voice dictation by @lawrencecchen in #6197
- Add cmux remotes CLI to manage device-registry routes by @lawrencecchen in #6096
- CI: drop ios-testflight push trigger (fix cancelled-run red on main) by @lawrencecchen in #6214
- Fix Pair iPhone window: Cmd+W, sizing, layout, QR padding, channel scheme, failure copy by @lawrencecchen in #6038
- Sidebar: remove rows measurement that re-livelocks layout at scale by @lawrencecchen in #6188
- Fix closed Settings window reappearing by @lawrencecchen in #6193
- Cover numbered shortcut modifier swaps by @austinywang in #4738
- changelog: downplay freeform canvas (not production-ready) by @lawrencecchen in #6218
- Extract notification delivery coordinator from AppDelegate. by @azooz2003-bit in #6145
- Extract workspace session restore policy service by @azooz2003-bit in #6146
- Consolidate workspace extractions into CmuxWorkspaces (no new packages) by @azooz2003-bit in #6222
- ci: route display-resolution jobs to display-capable runner by @lawrencecchen in #6243
- Polish canvas minimap interactions by @azooz2003-bit in #6220
- CI: bound activation scrollback fixture by @azooz2003-bit in #6241
- Avoid PostHog flush deadlock during quit by @azooz2003-bit in #6232
- [codex] Refactor chat parser and transcript service ownership by @azooz2003-bit in #6216
- CI: pin signing/notarization jobs to WarpBuild (fix self-hosted codesign errSecInternalComponent) by @lawrencecchen in #6264
- Fix workflow-guard-tests: expect Warp-pinned release signing runner (#6264 follow-up) by @lawrencecchen in #6265
- Consolidate split extractions into CmuxWorkspaceWindow (no new packages) by @azooz2003-bit in #6223
- Consolidate browser extractions into CmuxBrowser (no new packages) by @azooz2003-bit in #6225
- Harden memory diagnostics for long-session surface leaks by @austinywang in #6267
- Fix browser download trigger parity by @austinywang in #6258
- Consolidate ghostty extractions into CmuxTerminalCore (no new packages) by @azooz2003-bit in #6227
- Founders Edition welcome email: announce iOS beta launch + collect TestFlight email by @austinywang in #6280
- Consolidate sidebar extractions into CmuxSidebar (no new packages) by @azooz2003-bit in #6226
- Organize SPM packages into Packages/{Shared,iOS,macOS}/ so the folder tree mirrors the Xcode workspace groups by @azooz2003-bit in #6278
- Consolidate debug extractions into CmuxFeedback (no new packages) by @azooz2003-bit in #6224
- iOS dictation: fix conventions-lint namespace-enum (main-wide red) + harden mic-start crash by @lawrencecchen in #6238
- Preserve Claude Teams restore flags by @lawrencecchen in #6242
- ci: import Developer ID intermediates for signing by @lawrencecchen in #6263
- Extract browser detection + import value model into CmuxBrowserImport package by @azooz2003-bit in #6179
- Fix fuzzy settings search coverage and matching by @austinywang in #6196
- Fix self-hosted CI compatibility failures by @lawrencecchen in #6289
- iOS: stop pausing background music on text submit by @lawrencecchen in #6290
- Fix nightly prune on signing runners without gh by @lawrencecchen in #6295
- Fix R2 appcast upload AWS CLI lookup by @lawrencecchen in #6301
- ci: upload R2 appcasts without awscli by @lawrencecchen in #6304
- Cleanup: resolve Aziz Round-1 review concerns (de-static namespaces, redundant init, dual-observation, trivial switch, conformance colocation) by @azooz2003-bit in #6315
- Extract window chrome domain from ContentView by @azooz2003-bit in #6147
- Vault sidebar: always offer "Show more" for folder sections so capped folders stay reachable (#6302) by @austinywang in #6327
- Track cmux SwiftPM Package.resolved files by @azooz2003-bit in #6314
- Add browser hard refresh shortcut by @austinywang in #6256
- ci: add reload-build workflow for cloud reload Blacksmith builder by @lawrencecchen in #6354
- Restore pane header title after terminal restart (#5931) by @austinywang in #6333
- Recover blank Markdown viewer pane after dragging it to another column (#6144) by @austinywang in #6331
- ci: reload-build runner input as free-form string by @lawrencecchen in #6361
- Reduce CMUX UI lag from Settings, sidebar, git, and browser churn by @azooz2003-bit in #6260
- ci: reload-build use per-run log path by @lawrencecchen in #6363
- feat: Clear Screen (Keep Scrollback) command + Cmd+Shift+K by @austinywang in #6139
- ios: unread-workspace count badge on the back button by @lawrencecchen in #6350
- Cut over v1 debug/test control dispatch onto ControlCommandCoordinator by @azooz2003-bit in #6343
- ios: mark workspace read/unread from terminal menu; chat button top-level by @lawrencecchen in #6362
- Fix settings search for auto-naming by @austinywang in #6201
- scripts: one-step team dogfood setup (per-user auto-sign-in + auto-attach) by @lawrencecchen in #6372
- Browser control: delegate storage.* JS builders into CmuxBrowser substrate by @azooz2003-bit in #6345
- Faithful Mobile-control cutover onto the ControlCommandCoordinator seam by @azooz2003-bit in #6344
- Add iOS debug controls for workspace row layout by @lawrencecchen in #6274
- Fix terminal focus retry after tiny responder handoff by @austinywang in #6359
- ci: clear stale submodule git locks before checkout on self-hosted macOS jobs by @azooz2003-bit in #6394
- Fix blank SF Symbol controls on macOS 27 by @austinywang in #6396
- Fix OpenCode resume after tui-settings capture by @austinywang in #6397
- ci: test-determinism gate to ban flaky test primitives going forward by @azooz2003-bit in #6399
- Fix macOS notification fallback identity by @austinywang in #6000
- Release closed macOS helper windows by @azooz2003-bit in #6368
- ci: serialize GUI app-host tests per machine (fix testmanagerd contention) by @azooz2003-bit in #6400
- Consolidate 20 narrow micro-packages into their owning domain packages by @azooz2003-bit in #6356
- ci: self-heal resolve clears whole .ci-source-packages on incomplete artifacts by @lawrencecchen in #6403
- Reduce Sentry CLI broken-pipe crashes and hangs by @azooz2003-bit in #6254
- ci: vendor Apple Developer ID intermediates (fix flaky nightly signing) by @lawrencecchen in #6404
- Eliminate flaky tests: deterministic rewrites across Swift, Python, shell by @azooz2003-bit in #6392
- ios: liquid-glass workspace header with panes behind it by @lawrencecchen in #6300
- ci: run tests-job xcodebuild in the console GUI session (fix testmanagerd on self-hosted minis) by @azooz2003-bit in #6401
- ci: reap leaked virtual-display helpers before create (unblock display jobs on fleet) by @lawrencecchen in #6407
- Fix ~100% CPU re-render loop when selecting a bundled extension sidebar (#5970) by @austinywang in #6341
- CI: route every runner type through Blacksmith (Blacksmith-only) by @lawrencecchen in #6408
- ci(tests): fix AppDelegateShortcutRoutingTests teardown crash + make app-host backtraces cheap by @lawrencecchen in #6412
- Fix tab-switch crash in vertical sidebar: defer hosted-inspector side-dock promotion out of the layout pass (#6150) by @austinywang in #6340
- Guard PostHog flush against shutdown stalls by @austinywang in #6417
- ios: grow the nav title into the real center gap by @lawrencecchen in #6420
- Make shortcut routing focus tests deterministic by @azooz2003-bit in #6419
- Fix notification jump focus for nested tabs by @lawrencecchen in #6416
- ci: stop using the self-hosted mac-mini fleet entirely by @lawrencecchen in #6423
- fix(claude-wrapper): merge user --settings into injected hook settings by @choi88andys in #5388
- Add cmux profiling capture action by @lawrencecchen in #6433
- Revert hookless agent forking by @lawrencecchen in #6434
- remote-tmux: restore bonsplit pointer so ssh-tmux tab reorder syncs to tmux by @robertnisipeanu in #6438
- remote-tmux: fix mirror buffer truncation on cross-DPI display move by @robertnisipeanu in #6393
- Fix cmux ssh PTY resize with SSH ControlMaster by @austinywang in #6432
- CI: skip expensive jobs for unrelated PRs by @azooz2003-bit in #6429
- review-bot-rules: no test/debug seam in production Swift Sources by @azooz2003-bit in #6455
- Fix Claude restore cwd drift for session resume by @austinywang in #6205
- fix: terminal content duplication on window resize (revives #4765) by @mvanhorn in #6386
- Fix stale cmux ssh pane resize: reconcile remote PTY size after arming SIGWINCH by @kylejcaron in #5989
- Stop main window drifting down on sleep/wake by @sergej-koscejev in #6305
- Issue 6194 session restore resume cwd by @austinywang in #6458
- Fix title-churn beachball in transcript adoption and sidebar rows by @austinywang in #6460
- Speed up macOS CI with unit test sharding by @lawrencecchen in #6464
- Fix #5770: recover Settings open from offscreen frames and silent no-ops by @austinywang in #5806
- CI: fix build lag DerivedData cache path by @azooz2003-bit in #6454
- Make CLI Sentry capture fire-and-forget by @azooz2003-bit in #6426
- CI: gate activation benchmark on macOS changes by @azooz2003-bit in #6453
- Fix remote PTY restore probe reply leak by @austinywang in #6070
- Add right-sidebar custom sidebar tabs by @lawrencecchen in #6430
- Add a configurable terminal scroll-speed multiplier (terminal.scrollSpeed) by @RubiconPerform in #5671
- Fix Dia browser import profile detection by @lawrencecchen in #6478
- ios: sustain hold-to-repeat Backspace via a virtual delete-repeat anchor by @lawrencecchen in #6299
- ios: fix broken Release archive blocking all TestFlight builds by @lawrencecchen in #6488
- ci: run iOS TestFlight beta lane every ~2h (prompt internal builds) by @lawrencecchen in #6489
- Speed up macOS CI lanes by @lawrencecchen in #6490
- Use agent hook directories for open diff by @lawrencecchen in #6468
- Fix right sidebar surface shortcut spam routing by @lawrencecchen in #6472
- Prioritize full command palette title matches by @lawrencecchen in #6498
- Route agent session web resource CI by @azooz2003-bit in #6474
- Flaky-test follow-up: review fixes + second-pass team sweep by @azooz2003-bit in #6452
- Fix #6447: Claude Code 2.1.183 agent-team teammates open split panes again by @austinywang in #6499
- ci: aggregate required gates (stop branch-protection desync on renames/splits) by @azooz2003-bit in #6519
- Fix zsh aliases after agent return shell by @austinywang in #6515
- Move open diff baseline lookup off main thread by @lawrencecchen in #6497
- Fix QuickLook preview crash on deactivated QLPreviewView by @thiveeiyan in #6402
- Avoid nested quit confirmation modal loops by @azooz2003-bit in #6461
- Fix native pairing sign-in failures by @azooz2003-bit in #6457
- Focus canvas panes from terminal body clicks by @azooz2003-bit in #6456
- Fix iOS unread count badge contrast by @lawrencecchen in #6524
- web: llms.txt overhaul + surface open source + fix agent-integration canonicals by @lawrencecchen in #6523
- Fix changelog title clipping by @lawrencecchen in #6425
- Add README/site feature-parity review rule by @lawrencecchen in #6540
- docs: add iOS app setup guide by @lawrencecchen in #6541
- Align group plus button trailing inset by @lawrencecchen in #6531
- docs: align heading text with body text by @lawrencecchen in #6542
- Diff viewer: searchable, uncapped branch base picker with smart defaults by @azooz2003-bit in #6484
- Fix cmux ssh-tmux socket path too long for AF_UNIX by @mxschmitt in #6465
- Fix canvas zoom animation snap at low zoom by @azooz2003-bit in #6538
- Diff viewer: responsive toolbar that never overlaps at small widths by @azooz2003-bit in #6550
- Add mark-read/unread + clear notifications to workspace group menu by @azooz2003-bit in #6535
- File explorer keyboard open selection by @austinywang in #6001
- Use pan arrows for canvas scroll hint by @azooz2003-bit in #6528
- Honor keep workspace open on last surface close by @austinywang in #6475
- Add Chrome-style audio-playing indicator for browser panes by @austinywang in #6517
- README: add FAQ mirroring the homepage by @lawrencecchen in #6561
- ios: auto-generate per-build TestFlight "What to Test" + stamp next beta version by @lawrencecchen in #6544
- Show profiling progress window by @lawrencecchen in #6440
- Fix audio indicator audibility signal by @austinywang in #6566
- Avoid DevTools teardown during redock by @austinywang in #6559
- Fix sidebar row-height layout feedback by @austinywang in #6558
- Bound iOS pairing attempts by @lawrencecchen in #6495
- Add global font magnification by @austinywang in #6554
- Fix main CI sidebar drop metrics test fixture by @lawrencecchen in #6575
- Fix Cmd+grave show/hide global hotkey by @austinywang in #6477
- Defer restored browser WebViews until visible by @austinywang in #6508
- Localize iOS docs + refresh all README translations by @lawrencecchen in #6563
- Fix terminal input after window key restore by @austinywang in #6518
- Fix main app-host shard regressions by @lawrencecchen in #6580
- Fix stale surface-to-panel rebinding by @austinywang in #6581
- Gate idle pollers to active workspace by @austinywang in #6583
- Fix stale Claude notification sidebar status by @austinywang in #6473
- Fix copy-on-select Ghostty parity by @austinywang in #6200
- Fix portal hit-test CPU on pointer movement by @austinywang in #6592
- Fix hidden popover relayout during SwiftUI updates by @austinywang in #6589
- Fix remote tmux session discovery under non-UTF-8 remote locale by @mxschmitt in #6568
- Fix stale agent resume executable paths by @austinywang in #6582
- Cache settings search index per runtime by @austinywang in #6591
- Fix vim copy-mode cursor, V/Y, and pasteboard by @austinywang in #6221
- Fix crash diagnostic window restore by @austinywang in #6596
- Reduce redundant panel title update work by @Eridanus117 in #6552
- Evict hidden browser WebViews under memory pressure by @austinywang in #6585
- Fix canvas tab hover hit testing by @azooz2003-bit in #6555
- Fix explicit surface routing for read-screen and send by @austinywang in #6605
- Flag Needs input for blocked AskUserQuestion/ExitPlanMode under --dangerously-skip-permissions by @austinywang in #6608
- Sync remote tmux session rename to the mirror workspace title by @mxschmitt in #6602
- ci: route all macOS compile/test gates to Swift 6.3 Xcode (match what ships) by @azooz2003-bit in #6603
- Remove high-memory pane warning UI (triangle + popover); keep guardrail engine by @austinywang in #6619
- ci: align xcode-select default with selected toolchain (fix git-shell-out test crashes) by @austinywang in #6624
- Fix Cmd+T opening in home after agent-resume session restore (#6617) by @austinywang in #6621
- Revert sidebar row-height layout feedback by @austinywang in #6625
- Fix sidebar tab selection highlight timing by @austinywang in #6627
- Fix Codex sidebar status lifecycle by @austinywang in #6609
- Fix sidebar lag regression since v0.64.16 (#6612): cut per-row font-modifier + pin-state work by @austinywang in #6613
- ci: route all macOS runners through Blacksmith by @lawrencecchen in #6650
- Allow m4r notification sound files by @austinywang in #6635
- Add one-step grouped workspace creation by @lawrencecchen in #6657
- Fix oversized surface tab width — make tabs hug their content (#6652) by @austinywang in #6653
- iOS reload: auto sign-in + auto-pair the device by default by @lawrencecchen in #6661
- Add review-bot rules: reliability/single-source-of-truth, no-ambient-global-state, hot-path formatting by @lawrencecchen in #6660
- ios: make workspace folder collapse device-local by @lawrencecchen in #6666
- SEO: FAQPage JSON-LD + landing pages (Ghostty, agents, best-terminal) by @lawrencecchen in #6642
- web: add framed iPhone over the Mac hero (+ demo headline mode) by @lawrencecchen in #6637
- Fix duplicate iOS companion feature bullet + reword by @lawrencecchen in #6675
- web: broaden homepage positioning to multitasking, organization, programmability by @lawrencecchen in #6677
- Fix OpenCode bunfs worker autoresume by @austinywang in #6680
- blog: "cmux home" by @lawrencecchen in #6673
- iOS: don't lose saved hosts/IPs on upgrade (paired-Mac backup + restore) by @lawrencecchen in #6405
- web: add space above FAQ on home page by @lawrencecchen in #6681
- Release v0.64.17 by @austinywang in #6682
New Contributors
- @robertnisipeanu made their first contribution in #5553
- @choi88andys made their first contribution in #5388
- @kylejcaron made their first contribution in #5989
- @sergej-koscejev made their first contribution in #6305
- @RubiconPerform made their first contribution in #5671
- @thiveeiyan made their first contribution in #6402
- @Eridanus117 made their first contribution in #6552
Full Changelog: v0.64.16...v0.64.17