Repository navigation
Composer model menu: the Account switcher is back (Cmux under a Provider heading) - #28020
Conversation
Leo, 2026-10-29: "Why the fuck did you remove the fucking account switcher?" #27151 renamed the composer model menu's Account row to Provider. Agent-Session: https://cmux.com/deeplink/agent?id=aid-fb75b7af9902231028aa Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Leo, 2026-10-29: "Why the fuck did you remove the fucking account switcher?" #27151 renamed the Account row to Provider. The row is Account again; Cmux routers stay inside it under a Provider heading. Agent-Session: https://cmux.com/deeplink/agent?id=aid-fb75b7af9902231028aa Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Gallery before/after for
States
Pick other states with a Unclear: CI failed on
Failures:
Matched log linesNot re-run automatically: Written by red: cmux-next checks (god files, concurrency, crash safety, l10n); NEW: |
|
Found 9 test failures on Blacksmith runners: Failures
|
…e Account row Independent review of #28020 found both plays still focused /^Provider/. Agent-Session: https://cmux.com/deeplink/agent?id=aid-fb75b7af9902231028aa Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Review (codex gpt-6-astra high, next-review): SHIP at 4914802 No blocking findings. |
One conflict in ModelPicker.gallery.tsx with #28020 (the Account row is back): kept this PR's removal of the canonical-harnesses states (#26969's, reverted here) and base's Account wording. Agent-Session: https://cmux.com/deeplink/agent?id=aid-3cf6bed67d0bb92a21bd
|
Shipped in:
|
…rtcuts, folder profiles and fallback The compact menu's web version (QuickModelMenuFallback) is base's QuickModelMenu as it stands, and the native menu carries base's changes since: each model's effort as a side dropdown (#27948), the Chief's own-model menu, the Account switcher with Cmux under Provider (#28020), Add harness in the harness strip (#26503) and No models for an empty tab (#26962). Review fixes (Sol BLOCK at 124eada): - A digit on an empty search, or on the list, lands its numbered row instead of typeahead. - The full picker lists this folder's profiles natively. - An opening the native host refuses to show falls back to the web popup instead of closing. - Keys start on the list, not the rail, so Return in the search lands the first match. - Edits and picks made at an earlier revision of the open popup still land. - Native rail clicks during a search leave it (Astra BLOCK at 8f4777b). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-766f2935b39ba914eb08
… snapshot for the popup validator Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-766f2935b39ba914eb08
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo, 2026-10-29: "Why the f*** did you remove the f***ing account switcher?"
What happened
#27151 ("Picker: choose Cmux as a provider, not an agent harness") renamed the composer model menu's Account row to Provider. Its order was "user should pick harness, and change provider to cmux"; nothing asked for the Account row to go. The account choices were still inside, but the row the composer had called Account (CLI login, Work Max, …) no longer said Account, so the switcher read as gone. Leo's later relayed ask (ask-067e9aa217) still wanted "accounts and variants inside" each harness.
Takes back #27151: only its renaming of the composer's Account row to Provider (and the gallery/test selectors that followed it), because Leo asked for the account switcher back; #27151's Cmux-as-provider choice stays, under a Provider heading inside Account.
What changed
picker.account, already translated in all 21 locales), in the submenu and inline layouts.cmux-router,local-coderouter) stay in that submenu, now under a Provider heading by default, so "change provider to cmux" still reads as a provider choice. Nothing is removed: the same rows, the same route callback, refusal handling and the model-offer Provider row (providers: "row") are unchanged.Test
webviews/test/model-menu-compact.test.tsx: new test "the composer keeps its Account switcher, with Cmux routers under a Provider heading", and the existing route tests open the Account row again.fb83d868da8with base's menu:bun test test/model-menu-compact.test.tsx33 pass, 8 fail (every Account-row test, including the new one: no row starts with "Account").0e42761fbb5: 41 pass, 0 fail.src/agent-session/acpmux/QuickModelMenu.test.tsx29 pass.vp fmt --checkandvp lintclean on the changed files.Risk
Low: a label and default grouping in one web menu. Any selector that looks for
/^Provider/on this row would miss; the repo's gallery plays and tests are updated.Gallery: agent-pane.model-picker/started-chat-accounts, agent-pane.model-picker/quick-menu-many-profiles, new-tab.quick-model-menu/provider-submenu
Changelog
Fixed: the composer's model menu shows its Account switcher again; Cmux providers sit under a Provider heading inside it.
Agent session: agent session
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Restores the composer model menu's Account switcher, which was unintentionally hidden when #27151 renamed the Account row to Provider.
picker.accountlabel.Written for commit 4914802. Summary will update on new commits.