Repository navigation
Thread cards: show the model icon (or harness icon + model badge) for multi-model harnesses #31274
RicardoNid
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Problem
Thread cards (sidebar rows) render only the harness mark. For a multi-model harness such as OpenCode this means every thread shows the identical OpenCode glyph, whether the thread runs
deepseek/deepseek-flash,moonshotai-cn/kimi-k3.1-pro, a Qwen model oropenai/gpt-5. The icon therefore carries no information about which model a thread is on, and a sidebar with a dozen OpenCode threads is impossible to triage at a glance. The same applies to the compact provider glyph in the thread details header.Where it comes from (from reading the shipped bundle in 0.1.7)
The card icon is resolved from the provider entry's
driverKind— roughlyproviderEntryByInstanceId.get(thread) → rB({ driverKind })— and each driver's glyph is hardcoded in the provider registry entry, e.g.kZ({ driverKind: 'opencode', label: 'OpenCode', icon: { ... } }). Model selection never reaches the icon component, and neithercustomModels({ slug, name, capabilities }) nor the provider settings schema (binaryPath/serverUrl/serverPassword) has an icon field. There is also no client setting for icon mode today —environmentIdentificationModecontrols the Dev/Nightly artwork, not this.Proposed solution
Either of these, ideally behind a setting:
badgeClassName: right-[-0.125rem] bottom-[-0.125rem]), so a 3–4 character model monogram or a brand mark in that slot seems like a small change to an existing component.A per-thread/per-app display setting —
harness only(today's behavior) /model only/both— would keep everyone happy and default to no visual change.Additional context
acpRegistryIconUrl, which suggests the rendering layer can accept an icon resolved per provider entry — user-defined models would need the same hook (an optionalicononcustomModels, or an icon URL field).Environment
T3 Code 0.1.7, Linux desktop,
opencodeprovider drivingdeepseek/deepseek-flash.All reactions