Skip to content

redesign(ai): name-only Cloud model picker — drop the per-row debug detail - #46

Merged
ndemianc merged 1 commit into
developfrom
redesign/model-picker-minimal
Jul 25, 2026
Merged

redesign(ai): name-only Cloud model picker — drop the per-row debug detail#46
ndemianc merged 1 commit into
developfrom
redesign/model-picker-minimal

Conversation

@ndemianc

Copy link
Copy Markdown
Contributor

Why

A client just wants to pick "the latest shining Opus 5" — but every row in the Cloud model picker carried three technical fields: the raw id (anthropic/claude-opus-5), the context size, and a N× credits · NK ctx · ≈N turns left second line. Useful for debugging, noise for choosing. The two-line rows also made the list dense and the model name small.

After

Each model is a single, name-forward line — like the Cursor / Claude Code pickers the request pointed at.

Before                                          After
──────────────────────────────────────────     ────────────────────────────
✨ Auto  auto                                    ✨ Auto
   Routes each turn to the best-value engine
✓ Opus 5  anthropic/claude-opus-5               ✓ Opus 5
   6.67× credits · 1000K ctx · ≈103 turns left
   Kimi K2.7 Code  moonshotai/kimi-k2.7-code       Kimi K2.7 Code
   1× credits · 262K ctx · ≈687 turns left
🔒 Sonnet 5  anthropic/claude-sonnet-5          🔒 Sonnet 5   coming soon
   4× credits · 200K ctx · coming soon

The plan + remaining credits stay in the placeholder (LevelCode Cloud model · Plan: Max · $52.77 credits left), so the one number that actually matters isn't lost — only the per-row debug detail is gone.

What changed

  • Dropped per-model description = id, the ctx / multiplier / turns detail line, and fmtTurns (now unused).
  • matchOnDescription: false — typing filters by the model name only (no hidden id matching), so "opus" narrows to the Opus rows.
  • Staged rows keep the one meaningful hint, coming soon, and carry _name — the "coming soon" toast used to read the model name out of description, which is now literally the string "coming soon".
  • Net −13 lines.

On "increase the font size"

It's a native VS Code QuickPick, so its font follows the app's UI font and can't be set per-picker by the extension (same for the command palette). The single-line, name-forward rows are what deliver the big/clean read. A literally larger font would mean replacing the native picker with a custom webview (re-implementing filtering + keyboard nav + theming) — happy to do that as a separate change if the redesign here isn't enough.

Scope

Cloud picker only (pickCloudModel). The BYOK picker (pickModel) has the same id+detail pattern but a different audience — power users who often want the exact model id — so I left it. Say the word and I'll mirror this there too.

🤖 Generated with Claude Code

…etail

The gateway model picker showed three technical fields per model: the raw id
(anthropic/claude-opus-5), the context size, and a "N× credits · NK ctx · ≈N turns
left" second line. For someone who just wants to pick Opus 5 that buried the name in
noise and made every row a tall two-line block.

Each row is now a single, name-forward line: the friendly name + the active check, and
a lock + "coming soon" on staged models. The plan and remaining credits still live in
the picker's placeholder, so the one number that matters isn't lost. Reads like the
Cursor / Claude Code pickers.

- dropped: description=id, the ctx/multiplier/turns detail line, and fmtTurns (now
  unused). matchOnDescription is off, so typing filters by model name only.
- staged rows carry _name — the "coming soon" toast used to read the model name out of
  description, which is now literally the string "coming soon".

It's a native QuickPick, so the font follows the app UI font (can't be set per-picker);
the single-line rows are what make the name read large and clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 25, 2026 23:33

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR simplifies the LevelCode Cloud (gateway) model QuickPick UI to be name-forward, removing per-row debug metadata (model id/context/multiplier/≈turns) while keeping plan + remaining credits in the picker placeholder.

Changes:

  • Removed the per-model secondary detail line and the now-unused fmtTurns helper; Cloud model rows are now label-only.
  • Updated staged (“🔒”) rows to show a visible coming soon description and preserved the model name for the info toast via _name.
  • Switched Cloud picker filtering to matchOnDescription: false so searching matches only what’s visible in the row label (the model name).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ndemianc
ndemianc merged commit c1f778d into develop Jul 25, 2026
2 checks passed
@ndemianc
ndemianc deleted the redesign/model-picker-minimal branch July 25, 2026 23:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants