Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
247 commits
Select commit Hold shift + click to select a range
085479b
ci: release notes batch 10 commits per GraphQL query and retry GitHub…
lawrencecchen Oct 14, 2026
f9d8ad6
fix(cmux-tui): recover checkpoint capture from unreplayable Kitty upl…
austinywang Oct 14, 2026
add03ae
Fix Claude Code resume cwd and reused PID restore blocking (#20249)
austinywang Oct 14, 2026
ccc1e1c
Allow shared team members to enable Cloud (#20425)
austinywang Oct 14, 2026
5b61020
Bump Bonsplit: stop per-render tab-strip work behind CMUXTERM-MACOS-4…
austinywang Oct 14, 2026
a807883
Fix custom upload command remote paths (#20260)
austinywang Oct 14, 2026
1db7d00
Name every Cloud diagnostics 429 and keep failures and drop reports p…
lawrencecchen Oct 14, 2026
0ad2d1c
fix(cloud): recover wedged cmux-tui links safely (#20376)
austinywang Oct 14, 2026
063a134
fix: keep Claude idle after helper PreToolUse follows Stop (#20262)
austinywang Oct 14, 2026
fa7160c
fix(coderouter): fail over Claude 408/409 responses (#20350)
austinywang Oct 14, 2026
ca9f96d
fix(cloud): bound unresponsive VM stats and pause (#20345)
austinywang Oct 14, 2026
a47d61e
Fix control-created surfaces replaying inherited startup work (#20312)
austinywang Oct 14, 2026
aad8350
Fix OpenCode auto-resume after TUI startup race (#20441)
austinywang Oct 14, 2026
c77b533
Fix main's red app-host shards and intermittent CI failures (#20459)
austinywang Oct 14, 2026
bc23feb
Trust cmux's own Codex hooks so Codex stops asking to review them (#2…
austinywang Oct 14, 2026
2f08b3e
fix: show the Cloud welcome only once (#20243)
austinywang Oct 14, 2026
b04b54f
Cloud: push the machine prompt name as root again (#20496)
austinywang Oct 14, 2026
b328cc6
Cloud: recover frozen machines with provider restart and health alert…
austinywang Oct 14, 2026
c13b015
Explain a full Cloud resource pool instead of a missing plan (#20066)
austinywang Oct 14, 2026
f3d212e
fix: route remote tmux split shortcuts to projected panes (#18333)
Mirksen Oct 14, 2026
28e8640
fix(cmux-tui): drop an unneeded BTreeSet qualification (#20501)
austinywang Oct 14, 2026
4d9d0f7
Expect the request deadline error in the Cloud command timeout test (…
austinywang Oct 14, 2026
b6981ca
Retry Codex lock contention instead of refusing restores on relaunch …
austinywang Oct 14, 2026
1f4a240
Fix OpenCode lifecycle notifications (#20444)
austinywang Oct 14, 2026
35a1346
Fix Return delivery to browser forms (#20449)
austinywang Oct 14, 2026
d1e23b1
Don't restore a Claude session that never wrote a transcript (#20498)
austinywang Oct 14, 2026
3301556
Fix Backspace dropping text an IME commits on the same keypress (#20466)
vjintageboy Oct 14, 2026
140cc95
Raise the Freestyle TLS rule limit default to 200,000 (#20503)
austinywang Oct 14, 2026
b0be0db
Fix upside-down Design Mode selection screenshots (#20424)
austinywang Oct 14, 2026
5a06fb1
Fix display reconnect windows staying on the active Space (#20428)
austinywang Oct 14, 2026
a9b104f
test: cover Codex tmux hook routing for issue 18768 (#20417)
austinywang Oct 14, 2026
496a40b
cloud: keep the agent updater off a resumed clone's daemon start (#20…
austinywang Oct 14, 2026
150b81d
Run a custom ui.newWorkspace.action from Cmd-N and the controls that …
nebullii Oct 14, 2026
4158d14
Realtime Cloud machines list through the presence vms sync collection…
lawrencecchen Oct 14, 2026
62f5cb2
Print OK for cmux vm restart like pause and resume (#20526)
austinywang Oct 14, 2026
1a6dc29
Promote Cloud images with the Codex hook-trust fix and latest agents …
austinywang Oct 14, 2026
43de24d
Keep acknowledged agent notifications dismissed (#20547)
austinywang Oct 14, 2026
011d4a6
Keep cmux's private route marker out of scp and ssh for cmux ssh work…
nebullii Oct 14, 2026
fef76c5
Add a staff-only VM Health page (#20225)
austinywang Oct 14, 2026
7a117d8
Keep agent Running/Idle accurate when a Stop hook never arrives (#20564)
austinywang Oct 14, 2026
787f7c4
Keep restored cmux ssh workspaces connecting instead of showing SSH e…
austinywang Oct 14, 2026
aa7a34f
Add a Cloud button to the sidebar footer (#20563)
austinywang Oct 14, 2026
de479d7
settings: labs.classicHome keeps classic Home one release (cx-ebm.59.5)
lawrencecchen Oct 14, 2026
d813703
macOS analytics: identify signed-in Cloud user (#20565)
lawrencecchen Oct 14, 2026
825f5fb
analytics: tag synthetic Cloud traffic, add sign-up, VM ready and hou…
lawrencecchen Oct 14, 2026
1d86039
test(acpmux): start modes that do not ask from a session, an approved…
teamleaderleo Oct 14, 2026
8349d1b
feat(acpmux): start a no-ask mode from a session in it or an approved…
teamleaderleo Oct 14, 2026
4b5cf67
cmux-next motion (hq-1d phases 1-3): closed-form springs on one Motio…
lawrencecchen Oct 14, 2026
409e2da
Mac product analytics: Cloud upgrade funnel, welcome card and retenti…
austinywang Oct 14, 2026
fc5a863
Offer the next plan tier and stop asking Max subscribers to buy Pro (…
austinywang Oct 14, 2026
30eb688
Regenerate settings schema, MDM manifests, settings page strings and …
lawrencecchen Oct 14, 2026
a8b5a4b
billing: App Store Go hours, Pro/Max compute allowances, Sandbox allo…
lawrencecchen Oct 14, 2026
528b9e9
CmuxNext tabs: ui.animations.newTab is on by default; a new tab grows…
lawrencecchen Oct 14, 2026
c603705
Release v0.65.2 (#20629)
austinywang Oct 14, 2026
88cc4d3
iOS billing: Monthly/Yearly plans, refund request, analytics, unavail…
lawrencecchen Oct 14, 2026
13b05aa
refactor: rename acpmux start gate module
teamleaderleo Oct 14, 2026
a1e2bf4
Merge origin/feat-cmux-next into leo-acpmux-auto-inherit
teamleaderleo Oct 14, 2026
4814e6a
test: the default full access never widens a caller session that asks
teamleaderleo Oct 14, 2026
f04c419
fix: keep the harness mode for chats a caller that asks starts
teamleaderleo Oct 14, 2026
d3ba5e7
test: start modes never move an adopted session and peer prompts are …
teamleaderleo Oct 14, 2026
834e2b8
fix: start modes never widen an adopted session, peer prompts are che…
teamleaderleo Oct 14, 2026
55d19b0
debug: show why an approved preset start is refused (temporary)
teamleaderleo Oct 14, 2026
140d23d
Revert "debug: show why an approved preset start is refused (temporary)"
teamleaderleo Oct 14, 2026
b05cf15
fix: an approved preset's digests survive the fresh agent's reset
teamleaderleo Oct 14, 2026
0f34db0
test: a respawned preset session leaves the approved mode, whatever t…
teamleaderleo Oct 14, 2026
321d7d4
Keep the palette upgrade command available before the account is know…
austinywang Oct 14, 2026
14f2ddb
test: a request during an approved preset's start never rebinds the a…
teamleaderleo Oct 14, 2026
68914f2
fix(acpmux): record the preset spawn digest only on a cold start
teamleaderleo Oct 14, 2026
9d01f95
ci(release): wait up to 4h for the Computer Use helper notarization (…
austinywang Oct 14, 2026
915952c
Merge origin/feat-cmux-next into leo-acpmux-auto-inherit
teamleaderleo Oct 14, 2026
6bdb321
diag(cmux-next): page calls in flight in debug.page, slow page replie…
lawrencecchen Oct 14, 2026
03fa34c
test(cmux-next): live click proof restarts the Chief owner with the p…
lawrencecchen Oct 14, 2026
065726a
Merge origin/feat-cmux-next (18260a5d9bc0) into nx-grow-land
lawrencecchen Oct 14, 2026
d8c1fa3
cmux-next motion: hq-4e review fixes on the merged head (newTab expor…
lawrencecchen Oct 14, 2026
eff3ab4
Chief registry: chief.profile.adopt makes an existing agent participa…
lawrencecchen Oct 14, 2026
e5f8e8b
cmux-motion: SpringParameters::finite_or clamps a negative damping fr…
lawrencecchen Oct 14, 2026
3c8b77a
fix(cmux-next): a Chief profile page call always answers, on a relay …
lawrencecchen Oct 14, 2026
6809476
test(cmux-next): click proof holds the press so NoActivateKeyboardGua…
lawrencecchen Oct 14, 2026
695ed41
red: a new Chief's brain gets the job runner's HOME, not the account'…
lawrencecchen Oct 15, 2026
22dd715
chief brains: a new Chief's brain gets the account's home (cx-ebm.60.6)
lawrencecchen Oct 15, 2026
de926dc
cmux-next palette: selecting a Window Style row previews it live
lawrencecchen Oct 15, 2026
00fcdbe
chief.profile.adopt review fixes: owner gate first, any page origin r…
lawrencecchen Oct 15, 2026
67ab928
fix(cmux-next): review fixes for the Chief profile relay: a call the …
lawrencecchen Oct 15, 2026
6294505
cmux-next motion: drop ReduceMotionListFadeTests (Reduce Motion takes…
lawrencecchen Oct 15, 2026
69ce520
chief brains: rustfmt the account home (cx-ebm.60.6)
lawrencecchen Oct 15, 2026
8e7ff1f
chief.profile.adopt: refuse a bound participant, revoke its earlier c…
lawrencecchen Oct 15, 2026
c1bb75c
Merge remote-tracking branch 'origin/feat-cmux-next' into hq6d-classi…
lawrencecchen Oct 15, 2026
a8d901e
Merge origin/feat-cmux-next (8369646faf72) into nx-grow-land
lawrencecchen Oct 15, 2026
0ee3754
Merge origin/main 9d01f956c51c into feat-cmux-next (main sync 2026-10…
lawrencecchen Oct 15, 2026
d21ef25
Remove main files added under directories feat-cmux-next deleted (mai…
lawrencecchen Oct 15, 2026
70497ca
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-hq5c-m…
lawrencecchen Oct 15, 2026
55965c4
Regenerate settings schema, MDM manifests, action exports and setting…
lawrencecchen Oct 15, 2026
61d6c2d
cmux-tui: rustfmt main's OpenCode semantic_kind arms (main sync 2026-…
lawrencecchen Oct 15, 2026
5065975
chief.profile.adopt: the Chief-credential check and the mint run unde…
lawrencecchen Oct 15, 2026
26694bf
Merge origin/feat-cmux-next into feat-cmux-next-hqec-chief-adopt
lawrencecchen Oct 15, 2026
653c4d7
Restore the diff page catalog: rename detection put main's legacy Res…
lawrencecchen Oct 15, 2026
0e67e0c
Regenerate bindings after merge
lawrencecchen Oct 15, 2026
02f1dca
labs.classicHome: settings schema and MDM exports regenerated on the …
lawrencecchen Oct 15, 2026
32bd233
cmux-tui: behavior test: server compact-registry refuses a running ow…
lawrencecchen Oct 15, 2026
e036ede
Merge remote-tracking branch 'origin/feat-cmux-next' into hq6d-chief-…
lawrencecchen Oct 15, 2026
e7e462c
test(cmux-next): click proof comment states what the lost click is an…
lawrencecchen Oct 15, 2026
a1833f9
Drop main-sync leftovers: unused test imports in journal_checkpoint, …
lawrencecchen Oct 15, 2026
8506ca2
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-hq5c-m…
lawrencecchen Oct 15, 2026
cfbf532
Merge remote-tracking branch 'origin/feat-cmux-next' into hq6d-classi…
lawrencecchen Oct 15, 2026
04acadd
labs.classicHome is read once at launch, like CMUX_NEXT_CLASSIC_HOME;…
lawrencecchen Oct 15, 2026
592cd6c
cmux-coderouter: a Mac with no default keychain mints keys with a ran…
lawrencecchen Oct 14, 2026
fc4c401
Merge origin/feat-cmux-next (1cb7e587bffe) into nx-grow-land
lawrencecchen Oct 15, 2026
73d6012
cmux-coderouter: status says where the install secret lives (install_…
lawrencecchen Oct 14, 2026
ee33d69
cmux-coderouter: review fixes for the keychain fallback (hq-11, secur…
lawrencecchen Oct 14, 2026
8464918
acpmux test: rustfmt line break in router_install_secret.rs (cx-f4thx)
lawrencecchen Oct 14, 2026
1580bdb
cmux-coderouter: the Keychain probe runs before the admin socket exis…
lawrencecchen Oct 14, 2026
da517d5
cmux-tui: server compact-registry rewrites a session registry offline…
lawrencecchen Oct 15, 2026
7bfbc22
cmux-next motion: frame-strip progress and proof docs move out of Cmu…
lawrencecchen Oct 15, 2026
f998e9d
cmux-tui-hooks: pass the session-flags state key by value (clippy nee…
lawrencecchen Oct 15, 2026
70d33ac
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-cmux-n…
lawrencecchen Oct 15, 2026
780e4c1
chief.profile.adopt: clippy (one write struct for mutate, no redundan…
lawrencecchen Oct 15, 2026
7532336
Merge origin/feat-cmux-next into feat-cmux-next-hqec-chief-adopt
lawrencecchen Oct 15, 2026
8a22ccc
labs.classicHome: schema and MDM exports with the restart help text (…
lawrencecchen Oct 15, 2026
155978d
Merge feat-cmux-next (1cb7e587bffe) into leo-acpmux-auto-inherit
teamleaderleo Oct 15, 2026
bb480f1
acpmux: ACPMUX_AGENT_LAUNCH=deny / CMUX_AGENTS_DISABLED=1 starts no a…
lawrencecchen Oct 15, 2026
c47dd2f
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-cmux-n…
lawrencecchen Oct 15, 2026
603cbd7
cmux-next: holder wire protocol v1 spec (cx-t2sqm.12)
lawrencecchen Oct 15, 2026
3a73529
Merge origin/feat-cmux-next (eb4b8ed54af3) into feat-cmux-next
lawrencecchen Oct 15, 2026
bf4c0ef
cmux NEXT: no prewarmed WebKit process at launch (a load into it froz…
teamleaderleo Oct 15, 2026
34179e8
Merge origin/feat-cmux-next (bf4c0ef7a8f6) into feat-cmux-next
lawrencecchen Oct 15, 2026
4c56848
ci: the batch formatter fails on a failed bun install (#20764)
teamleaderleo Oct 15, 2026
dbe40f1
safe-push train: merge 34179e82fb34 (feat-hq5c-main-sync-1014-2)
Oct 15, 2026
cd287a2
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-cmux-n…
lawrencecchen Oct 15, 2026
7163394
Merge remote-tracking branch 'origin/feat-cmux-next' into nx-style-pr…
lawrencecchen Oct 15, 2026
d51174a
resource_attach: chief.profile.adopt is the 54th connection operation
lawrencecchen Oct 15, 2026
61da528
cmux-next motion: DebugFrameStrip report dictionary gets an explicit …
lawrencecchen Oct 15, 2026
df88423
Merge origin/feat-cmux-next (dbe40f1a5467) into feat-cmux-next
lawrencecchen Oct 15, 2026
27a21a6
cmux-tui: compact-registry shares the ensure arm's unreachable (crash…
lawrencecchen Oct 15, 2026
17baa59
CmuxNext: status set waits for a new terminal to join its workspace (…
teamleaderleo Oct 15, 2026
85e5fd0
safe-push train: merge df88423d3126 (feat-cmux-next-hqad-agent-deny)
Oct 15, 2026
e049c77
Merge origin/feat-cmux-next (17baa59842ea) into feat-cmux-next
lawrencecchen Oct 15, 2026
ec7f8db
Merge origin/feat-cmux-next (17baa59842ea) into feat-cmux-next
lawrencecchen Oct 15, 2026
3c49346
safe-push train: merge e049c777fb02 (feat-cmux-next-hqjn-compact)
Oct 15, 2026
277a9dc
safe-push train: merge ec7f8dbf2c43 (feat-cmux-next-hq6d-nbackup)
Oct 15, 2026
4c9081b
fix: reopening a closed page takes every close of it; Search Tabs lis…
teamleaderleo Oct 15, 2026
8fca14f
Merge origin/feat-cmux-next (4c9081bf6929) into feat-cmux-next
lawrencecchen Oct 15, 2026
51a713a
refactor(cmux-tui): move the Command router and connection-frame hand…
teamleaderleo Oct 15, 2026
be93bec
cmux-next composer: one gap and grouping across the footer row (#20785)
teamleaderleo Oct 15, 2026
d28e48c
Agent chat and channels: one hover action per row (#20439)
teamleaderleo Oct 15, 2026
5b0d048
Merge origin/feat-cmux-next (d28e48caa888) into nx-grow-land
lawrencecchen Oct 15, 2026
9c56e65
test(cmux-next): the click proof runs the app without CMUX_NEXT_NO_AC…
lawrencecchen Oct 15, 2026
9ed28b6
Agent pane: calm the changed-files card and diff (cx-ncc.99) (#20780)
teamleaderleo Oct 15, 2026
f4d317f
cmux-next: keep the previous run's cef.log as cef.previous.log (cx-ur…
teamleaderleo Oct 15, 2026
ed98f53
Merge origin/feat-cmux-next (f4d317fcf694) into feat-cmux-next
lawrencecchen Oct 15, 2026
f5fb2b6
fix(tabs): repaint only the selected tab when the window changes main…
teamleaderleo Oct 15, 2026
501ae7b
window edge: flush card as a Debug opt-in (default unchanged) (#20388)
teamleaderleo Oct 15, 2026
4020e9d
cmux-next: a cmux-render fence runs inline as a render card; render c…
teamleaderleo Oct 15, 2026
222fb84
acpmux: a job object per agent on Windows (cx-ncc.54)
lawrencecchen Oct 10, 2026
e9bab88
acpmux: a stopped Windows agent gets Ctrl+Break before its job ends (…
lawrencecchen Oct 10, 2026
5964ce8
acpmux: the harness command builder (harness_command, resolved_profil…
lawrencecchen Oct 13, 2026
90269fb
Regenerate settings schema, MDM manifests and settings page strings a…
lawrencecchen Oct 15, 2026
3d29102
cmux-next: CmuxNextApp cap 113750 -> 113810 for the motion landing
lawrencecchen Oct 15, 2026
4f33baa
Merge origin/feat-cmux-next (4020e9d28dd7) into nx-grow-land
lawrencecchen Oct 15, 2026
114bf95
Merge commit '4020e9d28dd7a325c4ecf116d7e248a067a69c9d' into gpui/cod…
lawrencecchen Oct 15, 2026
f0b44b2
ci: warm Vite before browser tests, per-file limits, 40 min cap (cx-v…
teamleaderleo Oct 15, 2026
7e0897f
test: a plain command shows busy only after its threshold (cx-6so.11)…
teamleaderleo Oct 15, 2026
058e915
Merge origin/feat-cmux-next (7e0897f7da0e) into feat-cmux-next
lawrencecchen Oct 15, 2026
53d7392
agent pane: page the session list through the host's pane policy (cx-…
teamleaderleo Oct 15, 2026
c6b1430
cmux-tui: closing a screen, pane or workspace keeps its tab groups fo…
teamleaderleo Oct 15, 2026
02cd733
cmux-next: pin CCmuxAppFFI to cmux-app-ffi-4f33baa5d867 (motion landing)
lawrencecchen Oct 15, 2026
c7f70a3
cmux-next: holder v1 spec records D6 (no code-identity check) and the…
lawrencecchen Oct 15, 2026
70edcd5
Merge origin/feat-cmux-next (c7f70a324d46) into feat-cmux-next
lawrencecchen Oct 15, 2026
bb20480
Merge commit 'c7f70a324d460f61c51a49410689107cf8fb132b' into gpui/acp…
lawrencecchen Oct 15, 2026
cf4589a
Merge origin/feat-cmux-next (70edcd5254e1) into feat-cmux-next
lawrencecchen Oct 15, 2026
645aa6d
Merge origin/feat-cmux-next (cf4589ac0e5a) into feat-cmux-next
lawrencecchen Oct 15, 2026
cfc5ef4
cmux-tui: terminal host records may name a per-install socket dir (cx…
lawrencecchen Oct 15, 2026
2660428
cmux-next: CmuxNextApp cap back to 113692 (frame-strip proof analysis…
lawrencecchen Oct 15, 2026
c6416c5
cmux-tui: a tab group closed with its terminals reopens as its group …
teamleaderleo Oct 15, 2026
374d3c1
Merge origin/feat-cmux-next (c6416c53474f) into feat-cmux-next
lawrencecchen Oct 15, 2026
de357d7
cx-tgf4h red: cmux chief -p under ACPMUX_AGENT_LAUNCH=deny fails at o…
lawrencecchen Oct 15, 2026
d2b482f
Chief: gallery variant for selected text; selection follows the Ghost…
teamleaderleo Oct 15, 2026
153b13c
fix: a new workspace's sidebar row lands with its content (#20709)
teamleaderleo Oct 15, 2026
b9432a5
cmux NEXT: agent chat Update button updates the agent CLI in place (c…
teamleaderleo Oct 15, 2026
76214bc
safe-push train: merge 374d3c187813 (feat-cmux-next-ptyh-noscan)
Oct 15, 2026
4107f35
cmux-next: honest Claude Reasoning menu: resolved default, Ultracode …
teamleaderleo Oct 15, 2026
1bf155a
cmux-next: model rail dims a signed-out harness and offers Log In (cx…
teamleaderleo Oct 15, 2026
5f306f1
Chat math: KaTeX loads only with math, prices and shell $$ stay text,…
teamleaderleo Oct 15, 2026
6715131
cx-tgf4h: the Chief says at once that agents are disabled in this bui…
lawrencecchen Oct 15, 2026
0156975
Channels view: gallery plays for the host's home.currentSelection (re…
lawrencecchen Oct 15, 2026
43a3485
Channels view: home.currentSelection for the Home dock's view switch
lawrencecchen Oct 15, 2026
b451626
Channels view: serve home.currentSelection on the page bridge, not a …
lawrencecchen Oct 15, 2026
4cc9ae3
Channels view: home.currentSelection review follow-ups
lawrencecchen Oct 15, 2026
9dc804c
acpmux: Codex picks run the in-process bridge, not the npx codex-acp …
teamleaderleo Oct 15, 2026
c0a77dd
cx-tgf4h review: forward chief control to a running brain first; daem…
lawrencecchen Oct 15, 2026
6eaf26f
Merge origin/feat-cmux-next (9dc804cfec4d) into feat-cmux-next
lawrencecchen Oct 15, 2026
201ad73
test: warm the dev server in three agent pane browser tests (#20873)
teamleaderleo Oct 15, 2026
b81365b
acpmux tests: every acpmux process a test starts gets a hermetic envi…
lawrencecchen Oct 15, 2026
8976baa
safe-push train: merge 6eaf26fbe839 (feat-cmux-next-hqec-parity)
Oct 15, 2026
5a90205
cx-tgf4h: fmt and clippy
lawrencecchen Oct 15, 2026
7f0d2b5
acpmux tests: the hermetic HOME is <scratch>/home, never a chat's folder
lawrencecchen Oct 15, 2026
ba34f72
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-cmux-n…
lawrencecchen Oct 15, 2026
1bc1b11
acpmux tests: review fixes for the hermetic environment (cx-s8wux)
lawrencecchen Oct 15, 2026
137431a
cmux-tui: agent-session-attach takes the agent pane's whole kind list…
lawrencecchen Oct 15, 2026
25c18d4
agent pane: the attach asks at most 8 kinds again (session offers com…
lawrencecchen Oct 15, 2026
8f8d4bf
cmux-tui: test fake needs no mut (cx-kpd0v)
lawrencecchen Oct 15, 2026
43ca216
acpmux tests: router_install_secret starts the router through daemon_…
lawrencecchen Oct 15, 2026
13f1600
Merge origin/feat-cmux-next (8976baaba58a) into feat-cmux-next
lawrencecchen Oct 15, 2026
9168834
Merge origin/feat-cmux-next (8f8d4bf0c724) into feat-cmux-next
lawrencecchen Oct 15, 2026
0489fd9
safe-push train: merge 13f16004b3b8 (nx-cap-back)
Oct 15, 2026
0b54bf5
Merge origin/feat-cmux-next (0489fd9ae7b8) into feat-cmux-next
lawrencecchen Oct 15, 2026
77a14f4
safe-push train: merge 9168834bb202 (feat-cmux-next-hqec-avatars)
Oct 15, 2026
7295a6f
acpmux: one typed protocol registry; generated web types and drift ch…
teamleaderleo Oct 15, 2026
07009bf
cmux-next: fix two Chief profile relay base reds (concurrency check, …
teamleaderleo Oct 15, 2026
9d70c8a
Merge remote-tracking branch 'origin/feat-cmux-next' into acpmux-test…
lawrencecchen Oct 15, 2026
7508230
fix(cmux-next): the Chief profile relay's retry is a two-attempt for …
lawrencecchen Oct 15, 2026
d5be0c2
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-cmux-n…
lawrencecchen Oct 15, 2026
7f8b06e
cmux-next sidebar perf round 3: Release-build hitch bench with real w…
lawrencecchen Oct 15, 2026
82e0e8c
Merge origin/feat-cmux-next (9d70c8abb75a) into feat-cmux-next
lawrencecchen Oct 15, 2026
ded2efa
Channels: a primary or danger button keeps its fill under the pointer…
lawrencecchen Oct 15, 2026
d12946d
Channels gallery: primary-hover asserts the hover ring and the unchan…
lawrencecchen Oct 15, 2026
00bfbe7
Merge origin/feat-cmux-next (82e0e8c26258) into feat-cmux-next
lawrencecchen Oct 15, 2026
8a3ee62
cmux-motion: Chrome tab strip tween (200 ms easeOutQuad, restart from…
lawrencecchen Oct 15, 2026
6bc71f3
Merge origin/feat-cmux-next (00bfbe73a923) into feat-cmux-next
lawrencecchen Oct 15, 2026
33005c9
acpmux: record a session's git branch and HEAD at start (hq#1920) (#2…
teamleaderleo Oct 15, 2026
854febb
Merge origin/feat-cmux-next (33005c9b0a0b) into feat-cmux-next
lawrencecchen Oct 15, 2026
ef4c23a
cx-tgf4h: keep CmuxNextApp line count (App size cap)
lawrencecchen Oct 15, 2026
067eb07
Merge remote-tracking branch 'origin/feat-cmux-next' into feat-cmux-n…
lawrencecchen Oct 15, 2026
2803876
acpmux: a pooled agent host no longer spins on Linux reading its own …
lawrencecchen Oct 15, 2026
3e2d1f4
cmux-tui smoke: sidebar drag checks the drawn sidebar document order
lawrencecchen Oct 15, 2026
20532d8
PR dock chips; tooltips only where nothing else names the control (#2…
teamleaderleo Oct 15, 2026
7f5ecae
Merge remote-tracking branch 'origin/feat-cmux-next' into fix-s6-tui-…
lawrencecchen Oct 15, 2026
e3defdc
ci: nightly-next recovery initializes the notices submodule before co…
lawrencecchen Oct 15, 2026
bd980a6
ci: the cmux NIGHTLY-identity job also initializes the notices submodule
lawrencecchen Oct 15, 2026
0e9bcaa
agent pane: progress and stop for a running Claude subagent or workfl…
teamleaderleo Oct 15, 2026
8f6a640
Merge origin/feat-cmux-next (0e9bcaaa42b0) into feat-cmux-next
lawrencecchen Oct 15, 2026
bab85c0
Channels view: gallery plays for a message link with no link read (red)
lawrencecchen Oct 15, 2026
c4c22c7
Channels view: open a known conversation's message link without the o…
lawrencecchen Oct 15, 2026
34feeb4
Channels view: format parseConversationLink (vp fmt)
lawrencecchen Oct 15, 2026
74b11d1
Channels view: link fallback review follow-ups
lawrencecchen Oct 15, 2026
3c09d63
acpmux: host_lifetime idle test cleans up from the start and never si…
lawrencecchen Oct 15, 2026
e4e9b8d
Merge remote-tracking branch 'origin/feat-cmux-next' into hqec-watchloop
lawrencecchen Oct 15, 2026
bf5875d
cmux-tui: move the build identity into a leaf crate so an edit no lon…
lawrencecchen Oct 15, 2026
5bda8fb
Merge origin/feat-cmux-next (8f6a640155d6) into feat-cmux-next
lawrencecchen Oct 15, 2026
a49002b
test: warm the dev server in the Claude reasoning default browser tes…
teamleaderleo Oct 15, 2026
7b1e6a6
safe-push train: merge 74b11d14cfdc (feat-cmux-next-hqec-parity)
Oct 15, 2026
306a92a
safe-push train: merge 5bda8fb920ab (land-pr20872-nightly-recovery)
Oct 15, 2026
ec82ecf
cmux-next: frame-strip report as an NSWindow method, not a namespace …
teamleaderleo Oct 15, 2026
331a2be
Merge origin/feat-cmux-next (ec82ecfe04d0) into feat-cmux-next
lawrencecchen Oct 15, 2026
1a446cf
Merge origin/feat-cmux-next (331a2be7bfad) into feat-cmux-next
lawrencecchen Oct 15, 2026
0664bd9
Merge origin/feat-cmux-next (1a446cf490db) into feat-cmux-next
lawrencecchen Oct 15, 2026
2ba32a5
Merge feat-cmux-next into leo-acpmux-auto-inherit
teamleaderleo Oct 15, 2026
7f2b6a3
chore(next): PR autofix at 2ba32a51f39a
Oct 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 3 additions & 2 deletions .github/workflows/app-ffi-release.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Builds the app's ONE Rust static library, CCmuxAppFFI.xcframework
# (cmux-tui/crates/cmux-app-ffi: the remote desktop core and the sidebar layout
# reducer C ABIs over one Rust runtime, universal macOS arm64 + x86_64; see
# (cmux-tui/crates/cmux-app-ffi: the remote desktop core, the sidebar layout
# reducer and the cmux-motion C ABIs over one Rust runtime, universal macOS arm64 + x86_64; see
# scripts/cmux-next/build-app-ffi.sh), and publishes it as a prerelease in this
# repository, tagged cmux-app-ffi-<full commit sha>.
# Packages/macOS/CmuxNext/Package.swift pins one release by URL and SwiftPM
Expand Down Expand Up @@ -42,6 +42,7 @@ on:
- "cmux-tui/crates/cmux-layout-reducer/**"
- "cmux-tui/crates/cmux-layout-reducer-ffi/**"
- "cmux-tui/crates/cmux-palette-ranker/**"
- "cmux-tui/crates/cmux-motion/**"
- "cmux-tui/crates/cmux-rd-core/**"
- "cmux-tui/crates/cmux-rd-proto/**"
- "cmux-tui/crates/cmux-rd-ffi/**"
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/cloud-vm-image-contract.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ on:
- web/scripts/verify-devbox-image.ts
- web/scripts/devbox-agent-launch.*
- web/tests/devbox-agent-launch-test.py
- web/scripts/devbox-codex-hook-trust.py
- web/tests/devbox-codex-hook-trust-test.py
- web/scripts/check-devbox-agent-pins.ts
- web/services/vms/images/manifest.json
- web/services/vms/images/sizes.ts
Expand All @@ -33,6 +35,8 @@ on:
- web/scripts/verify-devbox-image.ts
- web/scripts/devbox-agent-launch.*
- web/tests/devbox-agent-launch-test.py
- web/scripts/devbox-codex-hook-trust.py
- web/tests/devbox-codex-hook-trust-test.py
- web/scripts/check-devbox-agent-pins.ts
- web/services/vms/images/manifest.json
- web/services/vms/images/sizes.ts
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/cmux-next-batch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -293,7 +293,8 @@ jobs:
names=()
# Formatting first: the bundles are then built from formatted sources.
if [[ " $KINDS " == *" format "* ]]; then
(cd webviews && bun install --frozen-lockfile && bun run check:fix) \
(cd webviews && bun install --frozen-lockfile) || fail "bun install"
(cd webviews && bun run check:fix) \
|| echo "check:fix left issues it cannot fix; keeping what it fixed"
names+=("webviews formatting")
fi
Expand Down
18 changes: 17 additions & 1 deletion .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3181,6 +3181,14 @@ jobs:
with:
persist-credentials: false

# notarize-nightly-dmg.sh runs the bundle notice check after Apple
# accepts, and that check reads ghostty-next/build.zig.zon. Without the
# submodule, run 38669958906 skipped five accepted builds.
- name: Initialize cmux-next notices submodule
if: github.ref_name == 'nightly-next'
shell: bash
run: bash scripts/ci/init-submodule.sh ghostty-next

- name: Select Xcode
run: ./scripts/select-ci-xcode.sh

Expand Down Expand Up @@ -3224,7 +3232,7 @@ jobs:
: > "$pending"
if ! CMUX_CHANNEL="$SIGN_CHANNEL" CMUX_NOTARY_CONTINUE_STATE="$dir/$STATE_NAME" GITHUB_OUTPUT="$pending" \
./scripts/ci/notarize-nightly-dmg.sh "$dir/$APP_NAME" "$dir/$DMG_NAME" "recovered/$IMMUTABLE_NAME"; then
echo "::notice::run $run_id: Apple did not accept submission $SUBMISSION_ID; skipping"
echo "::notice::run $run_id: submission $SUBMISSION_ID was not accepted, or a check after acceptance failed (see the log above); skipping"
echo "::endgroup::"; continue
fi
if grep -Fxq "submission_pending=true" "$pending"; then
Expand Down Expand Up @@ -3949,6 +3957,14 @@ jobs:
echo "skip=false" >> "$GITHUB_OUTPUT"
fi

# The DMG notarization below runs the bundle notice check, which reads
# ghostty-next/build.zig.zon. Without it, run 38669958906 retired an
# accepted submission.
- name: Initialize cmux-next notices submodule
if: steps.order.outputs.skip != 'true'
shell: bash
run: bash scripts/ci/init-submodule.sh ghostty-next

- name: Select Xcode
if: steps.order.outputs.skip != 'true'
run: ./scripts/select-ci-xcode.sh
Expand Down
73 changes: 70 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,69 @@

All notable changes to cmux are documented here.

## [0.65.2] - 2026-10-14

### Changed
- The one-time Cloud welcome also shows on 0.65.2 for anyone who has not seen it yet, and only once ([#20057](https://github.com/manaflow-ai/cmux/pull/20057), [#20243](https://github.com/manaflow-ai/cmux/pull/20243))
- Cloud upgrade offers the next plan tier and no longer asks Max subscribers to buy Pro ([#20603](https://github.com/manaflow-ai/cmux/pull/20603))

### Fixed
- A new Cloud split shows its terminal sooner ([#20016](https://github.com/manaflow-ai/cmux/pull/20016))
- Cloud machine actions answer within the app's request budget and keep running in the background ([#19982](https://github.com/manaflow-ai/cmux/pull/19982))
- Fixes a Cloud workspace layout that kept rebuilding the pane it had just reused ([#20198](https://github.com/manaflow-ai/cmux/pull/20198))
- Fn-Left and Fn-Right send Home and End in the terminal ([#18671](https://github.com/manaflow-ai/cmux/pull/18671)) -- thanks @theoklitosBam7 for the report!
- The terminal reports its real color scheme to CSI 996 queries ([#20024](https://github.com/manaflow-ai/cmux/pull/20024)) -- thanks @teamleaderleo, and thanks @sebushi113 for the report!
- Fixes invisible terminal text on light themes when `minimum-contrast` is set ([#19921](https://github.com/manaflow-ai/cmux/pull/19921)) -- thanks @teamleaderleo, and thanks @travisp for the report!
- Canvas mode shows the translucent window backdrop when `background-opacity` is below 1 ([#17548](https://github.com/manaflow-ai/cmux/pull/17548)) -- thanks @csyio, and thanks @CinnamonRolls1 for the report!
- The Cloud CLI bridge keeps its owner across remote reconnects ([#16213](https://github.com/manaflow-ai/cmux/pull/16213)) -- thanks @teamleaderleo!
- `cmux browser` rejects invalid automation arguments instead of running them ([#18838](https://github.com/manaflow-ai/cmux/pull/18838)) -- thanks @soyeladice-svg, and thanks @teamleaderleo for the report!
- Sign-in refreshes its token only when it is close to expiring, retries when the sign-in service is busy instead of failing, and shows the error details when sign-in fails ([#20237](https://github.com/manaflow-ai/cmux/pull/20237), [#20270](https://github.com/manaflow-ai/cmux/pull/20270))
- Cmd-N and the controls that share it run a custom `ui.newWorkspace.action` again ([#20287](https://github.com/manaflow-ai/cmux/pull/20287)) -- thanks @nebullii, and thanks @clain23 for the report!
- Restored `cmux ssh` workspaces keep connecting instead of showing SSH errors, and cmux's private route marker no longer leaks into `scp` and `ssh` ([#20586](https://github.com/manaflow-ai/cmux/pull/20586), [#20279](https://github.com/manaflow-ai/cmux/pull/20279)) -- thanks @nebullii, and thanks @dericknwq for the report!
- Agent Running/Idle status stays accurate when a Stop hook never arrives, and Claude stays idle after a helper's PreToolUse follows Stop ([#20564](https://github.com/manaflow-ai/cmux/pull/20564), [#20262](https://github.com/manaflow-ai/cmux/pull/20262)) -- thanks @BMeyendriesch for the report!
- Acknowledged agent notifications stay dismissed ([#20547](https://github.com/manaflow-ai/cmux/pull/20547))
- Agent sessions restore more reliably after a relaunch: Codex lock contention is retried, a Claude session that never wrote a transcript is not restored, Claude Code resumes in the right directory, and agy and OpenCode auto-resume ([#20246](https://github.com/manaflow-ai/cmux/pull/20246), [#20499](https://github.com/manaflow-ai/cmux/pull/20499), [#20498](https://github.com/manaflow-ai/cmux/pull/20498), [#20249](https://github.com/manaflow-ai/cmux/pull/20249), [#20226](https://github.com/manaflow-ai/cmux/pull/20226), [#20441](https://github.com/manaflow-ai/cmux/pull/20441))
- OpenCode lifecycle notifications work again ([#20444](https://github.com/manaflow-ai/cmux/pull/20444))
- Codex no longer asks to review cmux's own hooks, locally or on Cloud machines ([#20482](https://github.com/manaflow-ai/cmux/pull/20482), [#20524](https://github.com/manaflow-ai/cmux/pull/20524))
- Backspace no longer drops text an input method commits on the same keypress ([#20466](https://github.com/manaflow-ai/cmux/pull/20466)) -- thanks @vjintageboy!
- Return reaches forms in browser panes ([#20449](https://github.com/manaflow-ai/cmux/pull/20449))
- Windows stay on their own Space after a display reconnects ([#20428](https://github.com/manaflow-ai/cmux/pull/20428)) -- thanks @MinsehKim for the report!
- Remote tmux split shortcuts go to the projected panes ([#18333](https://github.com/manaflow-ai/cmux/pull/18333)) -- thanks @Mirksen, and thanks @dev-fennek for the report!
- Surfaces created through the control API no longer replay inherited startup work ([#20312](https://github.com/manaflow-ai/cmux/pull/20312)) -- thanks @SeanPedersen for the report!
- A custom upload command gets the right remote paths ([#20260](https://github.com/manaflow-ai/cmux/pull/20260))
- Fixes hangs from per-render tab-strip work ([#20238](https://github.com/manaflow-ai/cmux/pull/20238))
- Shared team members can enable Cloud, a failed team or plan fetch is no longer read as no team or the free plan, a full Cloud resource pool is explained instead of reported as a missing plan, and the first upgrade click opens checkout ([#20425](https://github.com/manaflow-ai/cmux/pull/20425), [#20056](https://github.com/manaflow-ai/cmux/pull/20056), [#20066](https://github.com/manaflow-ai/cmux/pull/20066), [#20252](https://github.com/manaflow-ai/cmux/pull/20252))
- Cloud machines recover when frozen, machine stats and pause no longer hang on an unresponsive machine, wedged terminal links recover, and `cmux vm restart` prints OK like pause and resume ([#20361](https://github.com/manaflow-ai/cmux/pull/20361), [#20345](https://github.com/manaflow-ai/cmux/pull/20345), [#20376](https://github.com/manaflow-ai/cmux/pull/20376), [#20526](https://github.com/manaflow-ai/cmux/pull/20526))

### Removed
- Claude Code and Codex terminals no longer draw the agent turn rail or the restoring-session banner, so their text lines up with plain terminals again after a relaunch; the Previous/Next Agent Turn shortcuts (Cmd-Shift-Up/Down) and their command palette entries are gone with it ([#20060](https://github.com/manaflow-ai/cmux/pull/20060))
- Terminal panes no longer show a Jump to Bottom button ([#20180](https://github.com/manaflow-ai/cmux/pull/20180))

### Thanks to 18 contributors!

- [@austinywang](https://github.com/austinywang)
- [@BMeyendriesch](https://github.com/BMeyendriesch)
- [@CinnamonRolls1](https://github.com/CinnamonRolls1)
- [@clain23](https://github.com/clain23)
- [@csyio](https://github.com/csyio)
- [@dericknwq](https://github.com/dericknwq)
- [@dev-fennek](https://github.com/dev-fennek)
- [@lawrencecchen](https://github.com/lawrencecchen)
- [@MinsehKim](https://github.com/MinsehKim)
- [@Mirksen](https://github.com/Mirksen)
- [@nebullii](https://github.com/nebullii)
- [@SeanPedersen](https://github.com/SeanPedersen)
- [@sebushi113](https://github.com/sebushi113)
- [@soyeladice-svg](https://github.com/soyeladice-svg)
- [@teamleaderleo](https://github.com/teamleaderleo)
- [@theoklitosBam7](https://github.com/theoklitosBam7)
- [@travisp](https://github.com/travisp)
- [@vjintageboy](https://github.com/vjintageboy)

## [0.65.1] - 2026-10-12

### Added
- Ctrl-Tab and Cmd-Shift-] / Cmd-Shift-[ move between sidebar workspaces from any pane, Ctrl-Cmd-E focuses the workspace sidebar, and Ctrl-Cmd-1…9 focuses a pane by number; all are rebindable ([#19795](https://github.com/manaflow-ai/cmux/pull/19795), [#19324](https://github.com/manaflow-ai/cmux/pull/19324), [#19263](https://github.com/manaflow-ai/cmux/pull/19263))
- Ctrl-Cmd-E focuses the workspace sidebar, and Ctrl-Cmd-1…9 focuses a pane by number; all are rebindable ([#19324](https://github.com/manaflow-ai/cmux/pull/19324), [#19263](https://github.com/manaflow-ai/cmux/pull/19263))
- Cmd-Shift-B jumps back to the pane where you last sent a prompt ([#18951](https://github.com/manaflow-ai/cmux/pull/18951)) -- thanks @lucasr1b!
- Cmd-Option-F global search finds open Claude Code and Codex sessions by what was said in them ([#18962](https://github.com/manaflow-ai/cmux/pull/18962)) -- thanks @lucasr1b!
- Programs can report idle, working, blocked, done, or error status with OSC 7501, shown in the workspace sidebar and published as `program_status.changed` on the `cmux-events` stream ([#18742](https://github.com/manaflow-ai/cmux/pull/18742), [#19091](https://github.com/manaflow-ai/cmux/pull/19091))
Expand All @@ -26,7 +85,6 @@ All notable changes to cmux are documented here.

### Changed
- Cmd-N always creates a local workspace, Cmd-Y creates a Cloud workspace, and Cmd-Shift-Y opens New Cloud Machine ([#18895](https://github.com/manaflow-ai/cmux/pull/18895))
- Previous and Next tab shortcuts move between workspaces when the focused pane has only one tab ([#18939](https://github.com/manaflow-ai/cmux/pull/18939))
- Cmd-click on a path opens relative paths as files, opens folders in Finder, opens `notes.md:12` in the Markdown viewer, and does nothing for missing paths; Cmd-hover underlines only paths that exist ([#19376](https://github.com/manaflow-ai/cmux/pull/19376), [#19397](https://github.com/manaflow-ai/cmux/pull/19397), [#19443](https://github.com/manaflow-ai/cmux/pull/19443), [#19452](https://github.com/manaflow-ai/cmux/pull/19452))
- cmux downloads are smaller: stable ships thin arm64 and x86_64 builds in an LZMA-compressed DMG with a one-hop update path, and the app drops duplicate binaries and unused libraries ([#19255](https://github.com/manaflow-ai/cmux/pull/19255), [#19211](https://github.com/manaflow-ai/cmux/pull/19211), [#19386](https://github.com/manaflow-ai/cmux/pull/19386), [#19356](https://github.com/manaflow-ai/cmux/pull/19356), [#19428](https://github.com/manaflow-ai/cmux/pull/19428), [#19379](https://github.com/manaflow-ai/cmux/pull/19379), [#19355](https://github.com/manaflow-ai/cmux/pull/19355))
- SSH helper payloads for Linux and macOS hosts download on demand instead of shipping inside the app ([#19305](https://github.com/manaflow-ai/cmux/pull/19305), [#19361](https://github.com/manaflow-ai/cmux/pull/19361))
Expand All @@ -40,6 +98,14 @@ All notable changes to cmux are documented here.
- cmux Cloud (beta): Cloud machine create and resize options follow your plan's limits, and the Cloud sidebar gets hover, copy, refresh, empty-row, and tab-switch polish ([#18481](https://github.com/manaflow-ai/cmux/pull/18481), [#18303](https://github.com/manaflow-ai/cmux/pull/18303), [#18693](https://github.com/manaflow-ai/cmux/pull/18693), [#19085](https://github.com/manaflow-ai/cmux/pull/19085)) -- thanks @lucasr1b, @azooz2003-bit!

### Fixed
- The Cloud VM limit header names the machines it counts and no longer counts paused ones ([#19968](https://github.com/manaflow-ai/cmux/pull/19968))
- Fixes dragging a sidebar workspace to reorder it, and a crash when the drag ends ([#20015](https://github.com/manaflow-ai/cmux/pull/20015), [#20018](https://github.com/manaflow-ai/cmux/pull/20018))
- Cloud connects on the first try, re-enrolls a dead tunnel instead of timing out on every machine, and scopes sign-out to its own build ([#19961](https://github.com/manaflow-ai/cmux/pull/19961), [#19977](https://github.com/manaflow-ai/cmux/pull/19977))
- Account-owned Macs stay in My Devices across team switches ([#18518](https://github.com/manaflow-ai/cmux/pull/18518)) -- thanks @azooz2003-bit!
- Fixes the terminal mode reset after a hibernated agent is reaped ([#19806](https://github.com/manaflow-ai/cmux/pull/19806)) -- thanks @russell7 for the report!
- Agent status is reported in `cmux ssh-tmux` mirrors ([#19104](https://github.com/manaflow-ai/cmux/pull/19104))
- Cloud workspaces are selected in the window that owns them, and a window closed during Cloud workspace creation is released ([#19970](https://github.com/manaflow-ai/cmux/pull/19970), [#20001](https://github.com/manaflow-ai/cmux/pull/20001))
- New Machine is created in process ([#18700](https://github.com/manaflow-ai/cmux/pull/18700))
- Fixes a startup exception crash in CmuxMain ([#18452](https://github.com/manaflow-ai/cmux/pull/18452))
- Fixes a crash from a stack overflow while the Settings window is built ([#18457](https://github.com/manaflow-ai/cmux/pull/18457))
- Fixes a crash on Edit > Undo after a text editor was closed ([#18467](https://github.com/manaflow-ai/cmux/pull/18467))
Expand Down Expand Up @@ -117,7 +183,7 @@ All notable changes to cmux are documented here.
- Remote tmux (beta): New Workspace can be routed to the host, origin colors and host suffixes are repaired, and detach no longer adds a second replacement terminal ([#19112](https://github.com/manaflow-ai/cmux/pull/19112), [#19096](https://github.com/manaflow-ai/cmux/pull/19096), [#19148](https://github.com/manaflow-ai/cmux/pull/19148))
- Custom sidebars (beta) autofocus only after a user gesture, and `clipboard.write` is gesture-gated and write-only ([#19372](https://github.com/manaflow-ai/cmux/pull/19372), [#19333](https://github.com/manaflow-ai/cmux/pull/19333))

### Thanks to 67 contributors!
### Thanks to 68 contributors!

- [@AdamDureyAtWillship](https://github.com/AdamDureyAtWillship)
- [@aidaodedjl](https://github.com/aidaodedjl)
Expand Down Expand Up @@ -173,6 +239,7 @@ All notable changes to cmux are documented here.
- [@pipitmart](https://github.com/pipitmart)
- [@roypadina](https://github.com/roypadina)
- [@RuslanTar](https://github.com/RuslanTar)
- [@russell7](https://github.com/russell7)
- [@s4ff0x](https://github.com/s4ff0x)
- [@samuelpatro](https://github.com/samuelpatro)
- [@scs0209](https://github.com/scs0209)
Expand Down
13 changes: 13 additions & 0 deletions Native/OptChat/optchat-chief/src/host.rs
Original file line number Diff line number Diff line change
Expand Up @@ -449,6 +449,12 @@ pub fn conversation_source(flags: &Flags) -> Result<Source, String> {
}
}

/// The build-session kill switch, the test of acpmux launch_policy.rs.
fn agent_launch_disabled() -> bool {
env("ACPMUX_AGENT_LAUNCH").is_some_and(|v| v.trim().eq_ignore_ascii_case("deny"))
|| env("CMUX_AGENTS_DISABLED").is_some_and(|v| v.trim() == "1")
}

/// Runs the host; returns the exit code.
pub fn run(flags: &Flags, started_ms: u64) -> i32 {
// SIGTERM, SIGINT and SIGHUP stop the host and what it started (E20).
Expand Down Expand Up @@ -478,6 +484,13 @@ pub fn run(flags: &Flags, started_ms: u64) -> i32 {
log(format!("creating {}: {e}", paths.root.display()));
return 1;
}
// cx-tgf4h: agents are off in this build session (acpmux refuses every
// launch), so no turn could start; the host would only hold messages.
if agent_launch_disabled() {
log("not starting: agents are disabled in this build session \
(ACPMUX_AGENT_LAUNCH=deny or CMUX_AGENTS_DISABLED=1)");
return 0;
}
let _lock = match HostLock::take(&paths.host_lock, started_ms) {
Ok(lock) => {
// A stop mark an earlier host of this home left says nothing now.
Expand Down
4 changes: 2 additions & 2 deletions Packages/macOS/CmuxNext/Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,8 @@ let daemonSwiftSettings: [SwiftSetting] = [
/// when the FFI sources differ from the pinned source sha.
let appFFI: Target = .binaryTarget(
name: "CCmuxAppFFI",
url: "https://github.com/manaflow-ai/cmux/releases/download/cmux-app-ffi-579db042d5b697448d83dc7b7e973776cb235183/CCmuxAppFFI.xcframework.zip",
checksum: "2d23efb8b5e47b37295acaa112bcf14b62fce4fdc9fc3c1c5b21441fbd912be4"
url: "https://github.com/manaflow-ai/cmux/releases/download/cmux-app-ffi-4f33baa5d8670ef9066883ed9ae7fa891a7651b7/CCmuxAppFFI.xcframework.zip",
checksum: "42ae442948b6e4944f2c66de523b98f618dcce39e9244e6e8aaa45136d739227"
)

let package = Package(
Expand Down
Loading
Loading