Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
529 commits
Select commit Hold shift + click to select a range
04ce3d1
vendor/bonsplit: follow main's pointer
lawrencecchen Sep 30, 2026
aa820ae
test: a reason all other plan cards share shows once
lawrencecchen Sep 30, 2026
74d2419
billing: say a reason all other plans share once, and no price for a …
lawrencecchen Sep 30, 2026
e53826c
fix: ignore SwiftPM warning text in package lane (#15975)
teamleaderleo Sep 30, 2026
5fbbc0c
[codex] Improve setup errors for missing Xcode and GhosttyKit cache l…
archit-goyal Sep 30, 2026
258cd09
test: the settings subnav lists teams from the team catalog
lawrencecchen Sep 30, 2026
d3a63a6
settings: list the subnav's teams from the team catalog
lawrencecchen Sep 30, 2026
eaec3f0
fix: resolve registry guard base ref at runtime (#15990)
teamleaderleo Sep 30, 2026
167d1a3
test: every plan card shows its price in one shape
lawrencecchen Sep 30, 2026
3fc0c8d
billing: one price shape on every plan card; clearer Cloud empty text
lawrencecchen Sep 30, 2026
8cfe728
fix(sidebar): finish popover closes whose didClose never arrives (#14…
teamleaderleo Sep 30, 2026
1c2d14c
Merge remote-tracking branch 'origin/main' into feat-dashboard-settin…
lawrencecchen Sep 30, 2026
5e88c1a
Add forward-only submodule CI guard (#15943)
teamleaderleo Sep 30, 2026
76d5bab
test: pay macOS's first-run check before timing wrapper fixtures (#15…
austinywang Sep 30, 2026
857d2b3
ci: treat a reused app-host receipt PID as a stale receipt, not a cle…
austinywang Sep 30, 2026
f81376a
ci: type-check agent-chat with pinned TypeScript (#16008)
teamleaderleo Sep 30, 2026
304d346
ci: bound each cmux-tui client download so a stalled stream can't han…
austinywang Sep 30, 2026
aed397a
fix(ios): expect memory token store for a missing app identity (#16024)
teamleaderleo Sep 30, 2026
3b29735
test(ci): cover per-run iOS E2E backend scripts and make the lane dis…
teamleaderleo Sep 30, 2026
bfdd953
fix(agent-chat): avoid duplicate Claude child close (#15909)
teamleaderleo Sep 30, 2026
388ce45
fix(ios): keep terminal composer input literal (#15991)
soyeladice-svg Sep 30, 2026
d1ec789
Deduplicate Cloud terminal recovery requests (#15906)
teamleaderleo Sep 30, 2026
a0dfa29
design(cloud): give the machine name and the team name their width ba…
teamleaderleo Sep 30, 2026
6d5645c
fix: materialize .xcstrings merge conflicts (#15858)
teamleaderleo Sep 30, 2026
b36a9b3
Add built-in copy actions for working directory, project root, and sc…
teamleaderleo Sep 30, 2026
aff066b
ci: coalesce pull request media tours (#16047)
teamleaderleo Sep 30, 2026
ac5842e
cloud: received-invitation reads wait for the teams client bootstrap
lawrencecchen Sep 30, 2026
f69e0f8
fix(ssh): reconcile agent status on projector startup (#15831)
teamleaderleo Sep 30, 2026
263a610
fix(input): preserve SOS terminal replies (#15849)
teamleaderleo Sep 30, 2026
d78434a
fix(flags): report feature flag review dates before they break CI (#1…
teamleaderleo Sep 30, 2026
8da92cb
ci: remove automated PR catch-up (#15959)
teamleaderleo Sep 30, 2026
e2d08b4
test: remove three fixture races from intermittently failing app-host…
austinywang Sep 30, 2026
e60c2b9
test: wait for the retired tunnel start's cleanup before checking it …
austinywang Sep 30, 2026
c876218
ci: avoid waiting on unavailable product roots (#16051)
teamleaderleo Sep 30, 2026
8e71daa
fix(shortcuts): ignore Caps Lock in legacy Ctrl+Tab matching (#15981)
soyeladice-svg Sep 30, 2026
77c068a
ci: re-trigger pull request checks
lawrencecchen Sep 30, 2026
3162d24
fix(ci): pin the disk condition the seed prune tests assume. (#15995)
teamleaderleo Sep 30, 2026
c67efdc
Keep Agent Chat command discovery scoped to the current project (#16055)
teamleaderleo Sep 30, 2026
7d17754
Fix black box beside Claude Code's logo in Cloud terminals (#15884)
lawrencecchen Sep 30, 2026
267ea74
Surface transcript terminal RPC failures (#15899)
teamleaderleo Sep 30, 2026
8e8839c
Merge origin/main into feat-team-invites-app
lawrencecchen Sep 30, 2026
f627d1f
fix(cli): reject extra send-key operands (#15980)
soyeladice-svg Sep 30, 2026
e948007
Liquid Glass Cmd-hold hint pills on macOS 26 (#15821)
lawrencecchen Sep 30, 2026
7b7a1b2
test(ci): assert the registry guard's exit code, and handle merge_gro…
teamleaderleo Sep 30, 2026
573f998
Resolve a dogfood menu path against the direct children of each open …
teamleaderleo Sep 30, 2026
233bd6d
Restore terminal attention when transcript chat reconnects (#15891)
teamleaderleo Sep 30, 2026
5150a9b
Keep unsent cloud prompts recoverable (#15902)
teamleaderleo Sep 30, 2026
b8ab767
test: isolate feature flag defaults between runs (#15587)
teamleaderleo Sep 30, 2026
f6a0163
Keep terminal approval notices from moving the composer (#15886)
teamleaderleo Sep 30, 2026
a803f36
fix: surface simulator process output reader failures (#15880)
teamleaderleo Sep 30, 2026
7ef6d3a
Resume Cloud Codex chats after app-server restart (#15915)
teamleaderleo Sep 30, 2026
4443dc1
cloud: header keeps only the team row and Invite after main's layout …
lawrencecchen Sep 30, 2026
3bba04e
Say which app-host result file could not be read (#15997)
teamleaderleo Sep 30, 2026
b3a1ca1
Document the 32 CLI verbs the contract table was missing, and guard i…
teamleaderleo Sep 30, 2026
f5c3567
Add a Focus TextBox Input item to the View menu (#15730)
teamleaderleo Sep 30, 2026
3ed1d77
Reap failed ACP startups and temporary catalog probes (#15979)
teamleaderleo Sep 30, 2026
e0da0a6
feat(acp): cmux as a read-only ACP host, phase 1 (#15976)
teamleaderleo Sep 30, 2026
31fb228
Promote devbox images with cmux-tui 7d17754 (VT replay blank-cell fix…
lawrencecchen Sep 30, 2026
ab20b79
ci: cut cmux-tui Testbox warmup hold time (#15557)
teamleaderleo Sep 30, 2026
faf4c8f
docs: define agent fan-out and reusable Cloud work environments (#15836)
teamleaderleo Sep 30, 2026
890cd1e
fix(sidebar): expose workspace close button to accessibility (#15965)
soyeladice-svg Sep 30, 2026
86d1cfc
Reap failed Codex app-server startups before retrying (#15977)
teamleaderleo Sep 30, 2026
a24a1b5
Make GitHub references in the agent chat transcript clickable (#15916)
teamleaderleo Sep 30, 2026
30bd116
test: cover invalid unquoted Xcode extension paths (#16054)
teamleaderleo Sep 30, 2026
272d069
fix(agent-chat): let Stop cancel a queued or starting ACP turn (#15925)
teamleaderleo Sep 30, 2026
3dcf462
Recover terminal chat when transcript files are replaced (#16045)
teamleaderleo Sep 30, 2026
15996b0
ci: sweep side lanes instead of rescuing workflow runs (#16076)
teamleaderleo Sep 30, 2026
e2e0b61
ci: disable unstable UI test dispatch lane (#16075)
teamleaderleo Sep 30, 2026
e0d5c5e
test: pay the Pi fixtures' first exec before timing them (#16028)
austinywang Sep 30, 2026
d13dde3
Diff viewer: viewed state, file filter, generated and large diffs col…
lawrencecchen Sep 30, 2026
e709b69
fix(cloud): stop reconciling panes a Cloud workspace already shows (#…
austinywang Sep 30, 2026
d664799
test: an unreachable shared-account service is its own state
lawrencecchen Sep 30, 2026
0183942
Settle the session status when Stop cancels ACP startup (#16081)
teamleaderleo Sep 30, 2026
ef01450
coderouter: name an unreachable shared-account service and log accoun…
lawrencecchen Sep 30, 2026
aae7dae
test: keep the hosted client's real exports in the coderouter procedu…
lawrencecchen Sep 30, 2026
87c78fe
ci: do not wait on a busy producer root for tests (#16077)
teamleaderleo Sep 30, 2026
7e39c92
fix(ios): fall back to memory when the simulator support directory is…
teamleaderleo Sep 30, 2026
5ae227e
test: a stale welcome link must not hide the upgrade prompt
lawrencecchen Sep 30, 2026
fe2dd0e
Preserve Cloud chat row measurements when appending turns (#16011)
teamleaderleo Sep 30, 2026
2eb9bee
ci: simplify macOS pool picker (#15988)
teamleaderleo Sep 30, 2026
b76ad61
billing: show the upgrade welcome only once the plan confirms it
lawrencecchen Sep 30, 2026
56b06d1
dashboard: capitalize remaining labels, buttons, and the LLM/CLI acro…
lawrencecchen Sep 30, 2026
0fcbc54
ci: make E2E rescue and video capture fail soft (#16027)
teamleaderleo Sep 30, 2026
7b51cc9
test: an unreachable shared-account service must not show the empty s…
lawrencecchen Sep 30, 2026
6844b12
coderouter: no empty state while shared accounts are unreachable
lawrencecchen Sep 30, 2026
d916e5c
Merge pull request #16006 from manaflow-ai/feat-dashboard-settings-hu…
lawrencecchen Sep 30, 2026
4df2a40
fix(agent-chat): keep ACP Stop off live turns and quiet cancelled sta…
teamleaderleo Sep 30, 2026
2dbe472
Bound Iroh release gate phases (#16084)
teamleaderleo Sep 30, 2026
8793407
Keep Cloud terminal prompts intact when resizing (#15924)
lawrencecchen Sep 30, 2026
ec42b7e
fix(cloud): keep the link client's last stderr lines in its exit erro…
austinywang Sep 30, 2026
a302b3a
fix(cloud): replay placement only for new daemon tabs and display vie…
austinywang Sep 30, 2026
5a2ebbf
fix(cloud): make CLI sign-in handoffs work (#16059)
teamleaderleo Sep 30, 2026
2ce1ae5
Retry stalled Agent Chat connections after 15 seconds (#15982)
teamleaderleo Sep 30, 2026
cc30253
fix(ci): keep swift-package-tests off the owned minis under a Release…
teamleaderleo Sep 30, 2026
086f637
test: compare Cloud tree title columns on the backing-pixel grid (#16…
austinywang Sep 30, 2026
d93814a
docs: add cmuxterm-hq team pointer (#16120)
teamleaderleo Sep 30, 2026
b3d644b
Add guarded Close Tab UX (#15613)
teamleaderleo Sep 30, 2026
8820a31
Reconnect Cloud Agent Chat after socket errors (#16078)
teamleaderleo Sep 30, 2026
6118a61
Clear unread notifications on visible panes (#16044)
teamleaderleo Sep 30, 2026
8bfc9f1
feat: report native Iroh path inventory (#15801)
azooz2003-bit Sep 30, 2026
8928c29
ci: skip desktop compile for iOS package test changes
teamleaderleo Sep 30, 2026
3987351
ci: cancel expensive jobs after early failures (#16096)
teamleaderleo Sep 30, 2026
086c8cb
ci: bound retries for E2E UI app-host runs (#16133)
teamleaderleo Sep 30, 2026
519e0d5
ci: deduplicate fast guard matrix work (#16115)
teamleaderleo Sep 30, 2026
7d7aea1
Fix Codex Stop during delayed turn startup (#16117)
teamleaderleo Sep 30, 2026
00b26cc
fix(ios): use live alias color on Computers screen (#10695)
austinywang Sep 30, 2026
f3c725c
iOS: make the terminal arrow pad discoverable (#10685)
austinywang Sep 30, 2026
e6662a5
ci(ios): fetch routing history blobless so detection fits its timeout…
austinywang Sep 30, 2026
6e81710
docs: list all built-in Vault agents (#16089)
nightcityblade Sep 30, 2026
fd0a123
test: require job-scoped CI fail-fast cancellation
teamleaderleo Sep 30, 2026
053ed11
fix(presence): device revocation uses the canonical endpoint id (#16090)
lawrencecchen Sep 30, 2026
fc3e6e3
fix(ci): exclude untracked generated files from derived-data seeds (#…
teamleaderleo Sep 30, 2026
8fdce6f
ci: route trusted manual dispatches to owned minis (#16111)
teamleaderleo Sep 30, 2026
fa5e632
test: stop tests waiting out real timeouts (#15381)
teamleaderleo Sep 30, 2026
c7b9a41
Fix descriptor-backed artifact thumbnail decoding (#10701)
austinywang Sep 30, 2026
b52eb8e
Keep Cloud surfaces from several teams open and revoke removed member…
lawrencecchen Sep 30, 2026
124e811
Let third-party dictation tools insert into terminals (#15262)
teamleaderleo Sep 30, 2026
eb5d3f0
perf: read listening ports from the kernel instead of spawning lsof (…
hyzyla Sep 30, 2026
6d31487
fix(cloud): keep idle row clicks available (#15996)
teamleaderleo Sep 30, 2026
3e3edb7
Fix workspace group generated anchors (#15892)
teamleaderleo Sep 30, 2026
f20c7d3
ci: cancel useless downstream work
teamleaderleo Sep 30, 2026
57fd5ac
ci: include coverage marker in macOS gate (#16161)
teamleaderleo Sep 30, 2026
a6c098a
ci: report a cancelled run instead of a routing failure (#16150)
teamleaderleo Sep 30, 2026
10e78b5
Add setting actions, setting presets, and cmux config set (#14868)
teamleaderleo Sep 30, 2026
b9529fd
Turn predictive local echo on by default for remote terminals (#15217)
teamleaderleo Sep 30, 2026
55c3817
fix(ci): update-homebrew keeps run metadata out of scripts (#16140)
lawrencecchen Sep 30, 2026
6c6f79d
ci: survive an owned Mac whose Homebrew prefix the runner does not ow…
teamleaderleo Sep 30, 2026
bfe79f1
test: cover CI cancellation process cleanup
teamleaderleo Sep 30, 2026
97395db
Merge origin/main into feat-team-invites-app
lawrencecchen Sep 30, 2026
ea6e02b
fix: keep agent status running while hooks show activity (#15887)
teamleaderleo Sep 30, 2026
0351680
test: bound cancellation cleanup for stubborn CI children
teamleaderleo Sep 30, 2026
d453f3a
Add a cmux-capture skill and a `cmux docs capture` topic (#15409)
teamleaderleo Sep 30, 2026
6606ca2
fix: clear agent notification ring after answer (#15974)
teamleaderleo Sep 30, 2026
34caf67
Keep late Agent Chat startup replies from replacing the current chat …
teamleaderleo Sep 30, 2026
55a1003
ci: reap detached processes on cancellation
teamleaderleo Sep 30, 2026
bd5692e
ci: stop leaking cancelled test processes
teamleaderleo Sep 30, 2026
f512325
Bump Bonsplit and narrow tab sidebar reads (#15942)
teamleaderleo Sep 30, 2026
914128b
Checkpoint terminal scrollback so a crash no longer loses it (#14852)
teamleaderleo Sep 30, 2026
0ca0ca4
Show Cloud chat reconnect state (#15904)
teamleaderleo Sep 30, 2026
ca92cbb
Fix send-key Ctrl-letter input for Kitty keyboard protocol (#15928)
teamleaderleo Sep 30, 2026
d0dd226
Move browser and tmux OSC filter tests into their package test target…
teamleaderleo Sep 30, 2026
ed8129d
Check that a woken agent came back (#15312)
teamleaderleo Sep 30, 2026
ab907de
fix(cloud): durably retry observed destroy cleanup (#15423)
teamleaderleo Sep 30, 2026
7037871
Merge remote-tracking branch 'origin/main' into feat-team-invites-app
lawrencecchen Sep 30, 2026
ef75ca7
feat: add native discovery for configured actions (#13232)
teamleaderleo Sep 30, 2026
83998ac
ci: skip cancelled iOS status rollup
teamleaderleo Sep 30, 2026
3aebe45
feat: optionally isolate native agent scratch files (#15610)
teamleaderleo Sep 30, 2026
2c47268
Merge commit '57fd5ac4df7641c05eb73df76fe3554a2a604264' into ci/failfast
teamleaderleo Sep 30, 2026
279bc35
Start each test process at the default window size (#15985)
lawrencecchen Sep 30, 2026
3b76bb9
test: count only the Ports status row's own labels (#15952)
lawrencecchen Sep 30, 2026
a8ac4a7
test: hold the daemon writer before the attach deadline handler runs …
lawrencecchen Sep 30, 2026
df28c39
Add iOS agent Feed with replies and full-text reading (#10218)
azooz2003-bit Sep 30, 2026
b63122e
fix(ios): keep pinned group members above unpinned rows (#16104)
azooz2003-bit Sep 30, 2026
f221acb
Merge remote-tracking branch 'origin/main' into feat-team-invites-app
lawrencecchen Sep 30, 2026
e1f2d49
docs(coderouter): document the account management a VM token has, and…
lawrencecchen Sep 30, 2026
152174b
docs(cloud): document visible Codex session messaging (#16041)
teamleaderleo Sep 30, 2026
984bf0c
Merge remote-tracking branch 'mf/main' into ci/failfast
teamleaderleo Sep 30, 2026
0bf5223
Merge remote-tracking branch 'origin/main' into feat-team-invites-app
lawrencecchen Sep 30, 2026
ef0d444
Publish Agent Chat catalog updates when cache writes fail (#16134)
teamleaderleo Sep 30, 2026
96914e7
test: bound the footprint check by reads on both sides of the capture…
austinywang Sep 30, 2026
5d7af99
test: update cancellation guard expectations
teamleaderleo Sep 30, 2026
8f342fc
test: bound process tree reaping
teamleaderleo Sep 30, 2026
ef447e2
ci: bound process tree reaping after kill
teamleaderleo Sep 30, 2026
0468e2e
fix(custom-sidebar): build .contextMenu as on-demand NSMenu instead o…
lawrencecchen Sep 30, 2026
b1bc04d
Name and rename Cloud browser and display rows (#15999)
teamleaderleo Sep 30, 2026
a2679ce
test(ci): require bounded artifact fallback transfer
teamleaderleo Sep 30, 2026
610c1ff
fix: compile cmux.json atomic publish under Xcode 26.3 (#16190)
lawrencecchen Sep 30, 2026
21c3f9b
test: use the transaction's json helper in the malformed cleanup fixt…
lawrencecchen Sep 30, 2026
75bb022
Make Codex /goal resume action clickable (#15639)
teamleaderleo Sep 30, 2026
e807f9b
fix(cloud): include attach transports in VM summaries (#15835)
teamleaderleo Sep 30, 2026
976ff88
fix(input): preserve C1 terminal control replies (#15848)
teamleaderleo Sep 30, 2026
bd2beed
Document the French Actions discovery titles as invariant (#16175)
lawrencecchen Sep 30, 2026
e91d51b
fix(ci): bound artifact download fallback
teamleaderleo Sep 30, 2026
6f6618e
fix: ignore duplicate panel IDs during session restore (#16182)
teamleaderleo Sep 30, 2026
e9265ef
Fix Cloud link failure messages for sleeping and unavailable machines…
teamleaderleo Sep 30, 2026
dac3c86
Lock transcript composer while terminal needs input (#15894)
teamleaderleo Sep 30, 2026
150d240
fix(cloud): a zero machine cap is not a fraction (#16012)
teamleaderleo Sep 30, 2026
c1f0509
docs: record overstay evidence and bounded transfers
teamleaderleo Sep 30, 2026
c12e934
ci: restore fleet compiler cache for PR builds
teamleaderleo Sep 30, 2026
8216c54
Refuse cmux send over an agent prompt draft or open dialog (#15302)
teamleaderleo Sep 30, 2026
51eb86b
ci: match manual dispatch coverage before cancellation (#16185)
teamleaderleo Sep 30, 2026
5606649
fix(cloud): keep paused machines asleep while cmux is open (#15934)
teamleaderleo Sep 30, 2026
c801205
test: keep artifact fallback action wired
teamleaderleo Sep 30, 2026
6120003
fix(ci): retain artifact download action
teamleaderleo Sep 30, 2026
8b011ad
feat: add opt-in multi-provider Conversations sidebar (#13322)
teamleaderleo Sep 30, 2026
7cbc73e
test: require caller bounded artifact downloads
teamleaderleo Sep 30, 2026
d42ef34
Draw shared sizing bounds in the divider color; add Connected Devices…
lawrencecchen Sep 30, 2026
723bbe6
fix(ci): bound artifact fallback at workflow call sites
teamleaderleo Sep 30, 2026
3e46661
Match Cloud chat diff replies to their requests (#16014)
teamleaderleo Sep 30, 2026
5161ffb
Put the Cloud sidebar on the right sidebar's chrome columns (#15998)
teamleaderleo Sep 30, 2026
5fc771a
ci: make app-host test file paths root-independent (#16116)
teamleaderleo Sep 30, 2026
89c936c
Read the port scan's process table from the kernel instead of ps (#15…
teamleaderleo Sep 30, 2026
dcebf27
fix(ci): let the homebrew gate accept a dispatched release run (#16197)
teamleaderleo Sep 30, 2026
8870f6e
Stop translating agent product names (#15903)
teamleaderleo Sep 30, 2026
a018381
ci: run process tree regression in guard preflight
teamleaderleo Sep 30, 2026
555d750
Auto-resume agents after retryable upstream failures (#15373)
teamleaderleo Sep 30, 2026
6171d8c
test: give the stale agent-hook checks an explicit empty scan (#16156)
austinywang Sep 30, 2026
6e997e2
Fix narrow pane tab close UX (#15957)
teamleaderleo Sep 30, 2026
a0660ce
test: avoid fixed cancellation delay
teamleaderleo Sep 30, 2026
ef3e658
Preserve valid Claude hook sessions after decode drift (#16196)
teamleaderleo Sep 30, 2026
aaebb18
Fix Cmd+I notifications popover anchor (#14582)
austinywang Sep 30, 2026
2fdf7d0
fix(coderouter): pin the OpenCode provider address per request (#16165)
lawrencecchen Sep 30, 2026
f02bdec
Fix browser state restoration ordering (#16204)
teamleaderleo Sep 30, 2026
3b196d0
Merge pull request #16160 from manaflow-ai/ci/failfast
teamleaderleo Sep 30, 2026
258c2ee
Let remote workspaces use cmux agent message through the SSH relay (#…
teamleaderleo Sep 30, 2026
1831681
fix(web): refuse to publish the Cloud VM daemon port (#16144)
lawrencecchen Sep 30, 2026
75650a8
fix: end CodeRouter sessions on team removal; fresh auth for presence…
lawrencecchen Sep 30, 2026
b3ca418
Serialize Pi Agent Chat startup before prompts (#16121)
teamleaderleo Sep 30, 2026
d01e8ce
fix: list setting actions in Actions discovery so main compiles (#16222)
lawrencecchen Sep 30, 2026
90d2fb9
fix(agent-chat): surface a rejected send on the transcript branch (#1…
teamleaderleo Sep 30, 2026
7bce471
Add cmux agent hibernate and wake (#15308)
teamleaderleo Sep 30, 2026
8aa9b5c
fix(agents): isolate OpenCode workspace auto-naming (#16210)
teamleaderleo Sep 30, 2026
d8f62dc
fix(ci): production-secret jobs run only from protected refs (#16171)
lawrencecchen Sep 30, 2026
e6e6982
Keep Cloud agent chat recoverable when browser storage fails (#15968)
teamleaderleo Sep 30, 2026
7ba9740
Prevent duplicate pool VMs after lost create responses (#15946)
teamleaderleo Sep 30, 2026
b1fd787
Preserve agent Stop completion before session teardown (#16122)
teamleaderleo Sep 30, 2026
3016cf3
Fix browser state helper package convention (#16205)
teamleaderleo Sep 30, 2026
ff131f9
Merge remote-tracking branch 'origin/main' into feat-team-invites-app
lawrencecchen Sep 30, 2026
522ba05
fix(sidebar): replay agent runtime changes for late observers (#15829)
teamleaderleo Sep 30, 2026
5e33b84
Agent messages that never land in a human's draft: cmux agent message…
teamleaderleo Sep 30, 2026
17f370e
fix: pass the action reference for untrusted setting tab-bar buttons …
lawrencecchen Sep 30, 2026
24f1ee0
fix(codex): arm the transcript monitor's watch before it reads (#15913)
lawrencecchen Sep 30, 2026
633852a
Merge remote-tracking branch 'origin/main' into feat-team-invites-app
lawrencecchen Sep 30, 2026
5e83d80
Keep agent mode controls reachable and respect disabled choices (#15971)
teamleaderleo Sep 30, 2026
4b832ea
fix: honor OpenCode XDG and database path overrides (#16229)
teamleaderleo Sep 30, 2026
f14e824
Merge remote-tracking branch 'origin/main' into feat-team-invites-app
lawrencecchen Sep 30, 2026
a4e862d
Keep Codex auto-naming credentials out of argv (#16201)
teamleaderleo Sep 30, 2026
cce8214
Fix blank terminal surface after completion notification (#11954)
austinywang Sep 30, 2026
285dbf7
Add live physical iOS IRX log viewer (#12008)
azooz2003-bit Sep 30, 2026
ad16812
Fix Cloud sidebar parity after individual notification reads (#15933)
teamleaderleo Sep 30, 2026
d1c9a6f
Merge pull request #16219 from manaflow-ai/feat-team-invites-app
lawrencecchen Sep 30, 2026
a4c7eda
Make new windows honor configured sidebar width (#11539)
lawrencecchen Sep 30, 2026
1ad9de2
Fix Cloud reconcile for membership-less previews (#16109)
teamleaderleo Sep 30, 2026
20cd45f
Merge remote-tracking branch 'origin/main' into feat-team-settings-mi…
lawrencecchen Sep 30, 2026
071e912
fix(ios): prevent computer picker status clipping (#15799)
azooz2003-bit Sep 30, 2026
7befdc7
Fix Cloud notification pane attribution (#15972)
teamleaderleo Sep 30, 2026
a62dacc
docs: tell contributors to start after claiming and not wait on app-h…
teamleaderleo Sep 30, 2026
c7d37b6
Merge pull request #15806 from manaflow-ai/feat-team-settings-minimal
lawrencecchen Sep 30, 2026
579a979
Align Cloud machine stale status punctuation (#16228)
teamleaderleo Sep 30, 2026
3121d49
ci: fold Testbox guard checks into fast guard lane (#16247)
teamleaderleo Sep 30, 2026
71bb553
ci: propagate settled fast-guard failures (#16258)
teamleaderleo Sep 30, 2026
02b80fe
ci: cmux-tui artifact publishing runs in its own artifacts environmen…
lawrencecchen Sep 30, 2026
488eaf7
fix(cloud): make Cloud workspace reconciliation always settle (#16158)
austinywang Sep 30, 2026
ca831d4
fix: restore main compile (OpenCodePaths in CLI, Codex auto-naming sc…
lawrencecchen Sep 30, 2026
a66a8bb
Exempt authorized DEV clients from relay rate limits (#12229)
azooz2003-bit Sep 30, 2026
b520727
Make Stop cancel Agent Chat before startup acknowledgement (#16058)
teamleaderleo Sep 30, 2026
4e9d779
ci: notarize Mac builds with the team App Store Connect API key (#16291)
lawrencecchen Oct 1, 2026
95c56b2
Merge upstream cmux main @ 4e9d7798882 into supermux
rajinsyed Oct 1, 2026
732e221
fix(supermux): restore upstream catalog entries the previous merge le…
rajinsyed Oct 1, 2026
4545459
docs(supermux): upgrade notes for the 2026-10-01 upstream merge
rajinsyed Oct 1, 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
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .claude/skills/cmux-capture
16 changes: 13 additions & 3 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,24 @@ Resources/markdown-viewer/webviews-app/** linguist-generated
# Xcode string catalogs are one large JSON object keyed by string id. Two
# branches that each add a different key collide positionally, producing dozens
# of conflict hunks with no semantic disagreement. scripts/merge-xcstrings.py
# merges per key and defers to the default driver whenever both sides changed
# the same key. Register it with scripts/install-git-hooks.sh (run by setup.sh);
# merges per key and writes an ordinary conflict whenever both sides changed the
# same key. Register it with scripts/install-git-hooks.sh (run by setup.sh);
# without that config git silently uses the default driver.
*.xcstrings merge=xcstrings-v2

# A merge can run right after checking out a fork branch, so a driver resolved
# from the working tree would run that branch's code with the maintainer's
# credentials. scripts/install-git-hooks.sh installs reviewed copies into
# $GIT_COMMON_DIR/cmux-merge-drivers and configures absolute paths to those, so
# what git executes is not what a branch can rewrite; it also repoints the
# older checkout-relative merge.xcstrings name at the same trusted copy.
# scripts/ci/catch_up_pr.py pins every driver to false instead, since catch-up
# only needs to know which paths are unmerged.

# The Xcode project file collides the same way, and for a sharper reason: no
# target here is filesystem-synchronized, so adding one source file writes four
# entries, and two branches adding different files append to all four of the
# same regions. scripts/merge-pbxproj.py takes the union of entries each side
# added and defers whenever a hunk is anything else. Same registration.
# added and writes an ordinary conflict whenever a hunk is anything else. Same
# registration.
cmux.xcodeproj/project.pbxproj merge=pbxproj-v1
46 changes: 39 additions & 7 deletions .github/actions/e2e-run-tests/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,16 @@ runs:
if: ${{ inputs.record-video == 'true' }}
shell: bash
run: |
brew install --quiet ffmpeg
# The helper comes from this workflow's revision (checked out into
# .e2e-workflow beside this action) when it is there, since the tested
# revision may predate it.
helper="$GITHUB_WORKSPACE/.e2e-workflow/scripts/ci/brew-ensure.sh"
[ -f "$helper" ] || helper=scripts/ci/brew-ensure.sh
if [ -f "$helper" ]; then
bash "$helper" ffmpeg
else
brew install --quiet ffmpeg
fi
FFMPEG_PATH=$(which ffmpeg)
echo "ffmpeg: $FFMPEG_PATH"
ffmpeg -version | head -1
Expand Down Expand Up @@ -196,10 +205,23 @@ runs:
# The display-churn regression establishes its own display later.
# Keep its existing recorder startup check at that point.

# A runner that cannot capture its display runs the tests without video
# instead of failing them: on 2026-09-25/26, 8 of 45 sampled Blacksmith
# 12vcpu and 2 of 15 6vcpu jobs stopped here with "could not create image
# from display", per machine rather than per pool, and the rescue's
# Blacksmith re-runs land on those pools.
- name: Verify screen capture before dependency setup
id: capture
if: ${{ inputs.record-video == 'true' && inputs.filter != 'DisplayResolutionRegressionUITests' }}
shell: bash
run: python3 scripts/ci/preflight-e2e-screen-capture.py
run: |
if python3 scripts/ci/preflight-e2e-screen-capture.py; then
echo "available=true" >> "$GITHUB_OUTPUT"
else
echo "available=false" >> "$GITHUB_OUTPUT"
echo "::warning::Screen capture is unavailable on $RUNNER_NAME; the tests run without video."
echo "**Recording:** skipped, screen capture is unavailable on runner \`$RUNNER_NAME\`; the tests ran without video." >> "$GITHUB_STEP_SUMMARY"
fi

# A console session that cannot activate apps fails every UI test after
# a one-minute wait each, as "Failed to activate application". Probe it
Expand All @@ -222,7 +244,11 @@ runs:
- name: Install tmux
shell: bash
run: |
if ! command -v tmux >/dev/null 2>&1; then
helper="$GITHUB_WORKSPACE/.e2e-workflow/scripts/ci/brew-ensure.sh"
[ -f "$helper" ] || helper=scripts/ci/brew-ensure.sh
if [ -f "$helper" ]; then
bash "$helper" tmux
elif ! command -v tmux >/dev/null 2>&1; then
brew install --quiet tmux
fi
tmux -V
Expand Down Expand Up @@ -411,7 +437,7 @@ runs:
TEST_SELECTOR_COUNT: ${{ inputs.count }}
NORMALIZED_FILTER: ${{ inputs.filter }}
TEST_TIMEOUT: ${{ inputs.test-timeout }}
RECORD_VIDEO: ${{ inputs.record-video }}
RECORD_VIDEO: ${{ inputs.record-video == 'true' && steps.capture.outputs.available != 'false' && 'true' || 'false' }}
DOGFOOD_SCENARIO_B64: ${{ inputs.dogfood-scenario }}
# App-host crash recovery must not stall on interactive backtraces
# (mirrors ci.yml's tests job hardening).
Expand Down Expand Up @@ -553,7 +579,13 @@ runs:
XCTESTRUN_PATH="$CMUX_UI_XCTESTRUN"
mkdir -p "$RUNNER_TEMP/cmux-app-host-xcresults"
XCODEBUILD_CMD=(
xcodebuild
# UI dispatches used to invoke xcodebuild directly, bypassing the
# per-machine app-host lock and bounded retries already used by
# cmuxTests. Keep UI's existing non-isolated host environment,
# while applying the same runner-communication recovery. The
# wrapper removes a caller-owned result bundle before each retry.
env CMUX_CI_APP_HOST_ISOLATION_REQUIRED=0
scripts/ci/run-app-host-xcodebuild.sh
-xctestrun "$XCTESTRUN_PATH"
-resultBundlePath "$RUNNER_TEMP/cmux-app-host-xcresults/cmuxUITests.xcresult"
-destination "platform=macOS"
Expand Down Expand Up @@ -794,7 +826,7 @@ runs:

- name: Upload recording artifact
id: recording
if: ${{ always() && inputs.record-video == 'true' }}
if: ${{ always() && inputs.record-video == 'true' && steps.capture.outputs.available != 'false' }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: test-recording
Expand Down Expand Up @@ -848,7 +880,7 @@ runs:
COMMIT_SHA: ${{ inputs.source-revision }}
REF_DISPLAY: ${{ inputs.ref-display }}
RUN_ID: ${{ github.run_id }}
RECORD_VIDEO: ${{ inputs.record-video }}
RECORD_VIDEO: ${{ inputs.record-video == 'true' && steps.capture.outputs.available != 'false' && 'true' || 'false' }}
RECORDING_URL: ${{ steps.recording.outputs.artifact-url }}
shell: bash
run: |
Expand Down
1 change: 1 addition & 0 deletions .github/contributor/welcome.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@ A few things that help:

- [Start here](https://github.com/manaflow-ai/cmux/blob/main/docs/start-here.md) covers what reviewers look for, what CI runs for you, and what happens next.
- If the CLA check asks, reply with the sentence it gives you.
- You don't need to run the app-host or UI tests locally. CI runs the ones your diff touches once a maintainer approves the first workflow run.

ghost Oct 1, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This promises CI will run touched UI tests, but the UI-test lane is currently disabled unless CI_UI_TESTS_ENABLED=1, and it does not dispatch tests for fork PRs. Clarify that app-host suites are selected automatically while UI-test coverage depends on the lane being enabled and the PR being eligible.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At .github/contributor/welcome.md, line 9:

<comment>This promises CI will run touched UI tests, but the UI-test lane is currently disabled unless `CI_UI_TESTS_ENABLED=1`, and it does not dispatch tests for fork PRs. Clarify that app-host suites are selected automatically while UI-test coverage depends on the lane being enabled and the PR being eligible.</comment>

<file context>
@@ -6,5 +6,6 @@ A few things that help:
 
 - [Start here](https://github.com/manaflow-ai/cmux/blob/main/docs/start-here.md) covers what reviewers look for, what CI runs for you, and what happens next.
 - If the CLA check asks, reply with the sentence it gives you.
+- You don't need to run the app-host or UI tests locally. CI runs the ones your diff touches once a maintainer approves the first workflow run.
 - The [verification ladder](https://github.com/manaflow-ai/cmux/blob/main/docs/contributor-verification.md) shows which checks fit your change. Say in the description which ones you ran.
 - If we end up fixing the same problem another way, we'll credit you with a `Co-authored-by` trailer and link the fix here.
</file context>
Suggested change
- You don't need to run the app-host or UI tests locally. CI runs the ones your diff touches once a maintainer approves the first workflow run.
- CI selects touched app-host test suites automatically. UI tests run only when the UI-test lane is enabled and the PR is eligible; follow the [verification ladder](https://github.com/manaflow-ai/cmux/blob/main/docs/contributor-verification.md) for UI changes.

- The [verification ladder](https://github.com/manaflow-ai/cmux/blob/main/docs/contributor-verification.md) shows which checks fit your change. Say in the description which ones you ran.
- If we end up fixing the same problem another way, we'll credit you with a `Co-authored-by` trailer and link the fix here.
20 changes: 20 additions & 0 deletions .github/labels.json
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,26 @@
"name": "help wanted",
"color": "008672",
"description": "Nobody on the team is working on this and we would take a patch"
},
{
"name": "difficulty:1",
"color": "5319E7",
"description": "Onboarding: one small, explicit surface"
},
{
"name": "difficulty:2",
"color": "5319E7",
"description": "Focused: one package or feature boundary"
},
{
"name": "difficulty:3",
"color": "5319E7",
"description": "Systems: multiple components or a runtime lifecycle"
},
{
"name": "difficulty:4",
"color": "5319E7",
"description": "Architecture: security, protocol, migration, release, or broad design"
}
]
}
6 changes: 6 additions & 0 deletions .github/workflows/app-host-test-rerun.yml
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,12 @@ jobs:
mkdir -p "$dest"
rsync -aL "$(dirname "$framework_source")/" "$dest/"
done
# Source-backed test fixtures resolve #fileID through this stable
# location, so baseline runs do not need the producer root.
CMUX_CI_RUNTIME_SOURCE_ROOT=/private/tmp/cmux-test-source \
"$GITHUB_WORKSPACE/.rerun-tools/scripts/ci/canonical-build-root.sh" \
--runtime-source "$PWD"
echo "CMUX_CI_RUNTIME_SOURCE_ROOT=/private/tmp/cmux-test-source" >> "$GITHUB_ENV"
receipt="$COMPILE_DERIVED_DATA/Build/Products/cmux-test-products.json"
cat "$receipt"
test "$(python3 -c 'import json,sys; print(json.load(open(sys.argv[1]))["revision"])' "$receipt")" = "$SOURCE_SHA"
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/ci-failure-attribution.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ name: CI failure attribution
# red or cancelled each failed job gets a verdict (machine, code, unknown)
# in the job summary and in one comment on the pull
# request, edited in place; when every failed job of a
# failed attempt 1 is machine, the failed jobs are re-run
# failed attempt 1 or 2 is machine, the failed jobs are
# re-run (attempt 3 goes to Blacksmith, which ends it)
# green that comment, if any, says it passes now
#
# A PR's code never runs here: main's script reads the run's job logs and
Expand Down
Loading