Releases: NOirBRight/dsh-model-switch
Release list
NOirBRight/dsh-model-switch v0.4.4
正式版本 v0.4.4,包含 alpha.1 解耦重构与已验证的发布资产。安装请参阅 README 的 Latest 与固定版本命令。
v0.4.3
Keep a Host-accepted composer selection visible while its durable Session projection catches up, then return authority to newer projected selections.
v0.4.2
LLM Providers drag-reorder; chat picker follows llm-providers.order (dsh-llm-providers-ui).
Model Switch v0.3.11
Release: v0.3.11 · stable · published 2026-08-27 · tag commit d7070014003a3065c28a522a3d33513d77cf3954
Highlights: Fast + 1M composition contract
Model Switch 0.3.11 locks the real composer UI path for selecting Context → 1M and then Fast → On without losing either dimension.
When the provider directory publishes all four family members—base, *-fast, *-1m, and *-1m-fast—the picker preserves Context and Fast together and submits the exact combined model id, for example gpt-5.6-sol-1m-fast.
Behavior / technical boundary
This release does not synthesize provider models. Separate *-1m and *-fast catalog rows cannot represent both dimensions simultaneously; the provider must publish a real combined *-1m-fast row. If that row is missing, the picker's existing fallback selects only an available catalog member and may clear the other dimension; the new regression proves the combined-row path, not provider synthesis.
What changed
- Adds a component-level regression harness with base, Fast, 1M, and combined rows.
- Opens the real capsule picker, selects Context 1M, then Fast On, and asserts the final model is exactly
gpt-5.6-sol-1m-fast. - Updates version, changelog, and installation documentation.
- Makes no production picker-source or routing-policy change relative to v0.3.10; this patch records and protects the existing contract.
Install / upgrade / compatibility
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-model-switch#v0.3.11Keep only one composer seat, preserve fetchProvider, ensure the selected provider release publishes combined variants, and restart the profile.
Validation / package contents
The v0.3.11 tagged diff is limited to the exact UI regression test/coverage, package version, changelog, and README pin. The repository's declared release gate remains build, Vitest, and pack verification. Runtime package contents otherwise match v0.3.10; source/tests/scripts are excluded from the published package allowlist.
Model Switch v0.3.10
Release: v0.3.10 · stable · published 2026-08-27 · tag commit 7f4d07089fc5785ed519a931218446df29da2fd7
Highlights: Composer and Plan Review move into Model Switch
Model Switch 0.3.10 rolls the v0.3.0–v0.3.10 tag sequence into one release. It keeps Main/Subagent/Search/Image routing and adds ownership of the composer model seat and Plan Review execution picker.
Composer picker
- Replaces the standalone
dsh-composer-pickerpackage; keep only Model Switch installed so there is one composer model seat. - Groups provider catalog rows into Model / Effort / Context / Fast / Thinking dimensions while still submitting through official
session.selectModel. - Shows family name and distinct effort/Fast/context bits in the trigger.
- Preserves a routable current model even when it is absent from the advisory catalog.
- Renders and wraps triggers, headings, model names, catalog descriptions, and values instead of truncating them.
Plan Review
- Takes over the official
plan-reviewcomposer surface with a one-row footer: execution-model capsule plus Discuss / Keep planning / Approve. - Commits the selected execution model before sending approval.
- Keeps the footer usable on narrow screens by shrinking controls and wrapping labels inside buttons.
- Keeps composer/Plan picker failures mounted as localized, retryable diagnostics rather than silently falling back to another seat.
Mobile interaction fixes
- Gives the custom seat an unambiguous winning priority and declares its Sessions/model-directory service gate.
- Makes a mobile tap idempotent across pointer and synthetic-click delivery: first tap opens, second tap closes and stays closed.
- Preserves the preferred 320px menu width when the viewport permits, hides horizontal overflow, retains internal vertical scrolling, and keeps content readable.
- Extracts popup activation/positioning/dismissal into an internal surface module and consolidates each snapshot with its directory operations.
Behavior / technical boundary
- Optional mobile operations use Cordis typed public non-strict lookup; absence degrades gracefully.
- Picker state follows official directory status/routability, and unsupported/missing routes continue to fail explicitly without fallback.
Settings
- Retains the existing Default Main, Subagent, Search, and Image Settings cards.
- Refreshes the Settings nav glyph after shell redraws and aligns route cards with the shared LLM Providers chrome.
web_fetch, Vision/read_image, ordinary attachments, AgentPresets, and provider-specific image tools remain unchanged.- The Settings icon is still a label-matched DOM swap because rc.2 exposes no icon field.
- Plan Review uses priority
-7because rc.2 exposes no public Plan handoff seam; theexternal-agents.plan-review.continue-in-dshadapter remains for dual-install compatibility.
Install / upgrade / compatibility
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-model-switch#v0.3.10
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-llm-codex#v0.3.0
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-llm-grok#v0.3.0Remove a standalone dsh-composer-picker dependency, preserve the profile's fetchProvider, configure routes, and restart the profile. Requires Node 22.19+ and the DSH 0.1.1-rc.2 peer set.
Validation / package contents
The release includes compiled Host/client bundles, declarations, Cordis patch metadata, and product documentation. The tagged code adds picker-family, Plan transaction, popup dismissal, seat ownership, mobile pointer, style/geometry, routability, retry-boundary, and responsive-layout coverage. The existing declared package-consumer release gate is pnpm run check (build, Vitest, and reproducible pack verification).
Model Switch v0.2.0
Release: v0.2.0 · stable · published 2026-08-26 · tag commit d337ddb96a40d7f8aa30b0eb771145ba25f49125
Highlights
Model Switch 0.2.0 extends explicit routing to Search and image generation while preserving official tool ownership.
- Keeps the official
web_searchtool and registers a thinWebSearchProvidernamedmodel-switch. - Selects the configured Search adapter/model at execution time; the initial adapter is Codex Search.
- Adds stable
generate_imagerouting through optional Codex and Grok adapters. - Regenerates the image tool schema after route changes so provider-incompatible parameters are not advertised.
- Adds independent Search and Image cards to Model Switch Settings.
- Introduces explicit failures for missing adapters, unsupported models, incompatible fields, and partial routes—no silent fallback.
Behavior / technical boundary
web_fetchand its configured fetch provider remain unchanged.- Vision/
read_image, ordinary chat attachments, and provider-specific image tools stay on their existing paths. - Default Main and Subagent routing from 0.1.x remain intact.
Install / upgrade / compatibility
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-model-switch#v0.2.0
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-llm-codex#v0.3.0
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-llm-grok#v0.3.0Pin the profile's existing web row to searchProvider: model-switch while preserving fetchProvider. Codex/Grok are optional adapter integrations, but the corresponding provider package is required when that route is selected. Configure routes in Settings, then restart the profile.
Validation / package contents
The tag includes compiled Host/client bundles and declarations. The tagged repository includes adapter-registry, Search-provider pass-through, provider-specific image-schema, image-result validation, host integration, settings UI, package-export, and reproducible-pack checks.
Model Switch v0.1.1
Release: v0.1.1 · stable · published 2026-08-26 · tag commit d4977d7d4b910a2812c0c6e49f33a80971a4b135
Highlights / packaging hotfix
Model Switch 0.1.1 fixes the missing compiled-artifact/bootability issue in v0.1.0.
- Commits compiled Host and client bundles under
lib/. - Includes generated declarations for every exported module and client surface.
- Updates package/build metadata so
github:NOirBRight/dsh-model-switch#v0.1.1includes the generated targets required by its manifest. - Removes the build's destructive pre-clean step.
- Keeps the routing behavior and deliberate exclusions of v0.1.0 unchanged.
Behavior / technical boundary
This is an artifact/installability correction, not a routing feature or compatibility expansion.
Install / upgrade / compatibility
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-model-switch#v0.1.1Restart the selected profile. Anyone using the v0.1.0 GitHub tag should upgrade.
Validation / package contents
The tag physically contains lib/index.js, lib/client.js, routing/settings runtime modules, and matching TypeScript declarations. This is an artifact/installability correction, not a runtime routing change.
Model Switch v0.1.0
Release: v0.1.0 · stable · published 2026-08-26 · tag commit c2d413ebc84288e9015ff0ca0e3dfe5d73e978c9
Highlights
Model Switch 0.1.0 is the first plugin-only release for explicit model routing on DeepSeek Harness 0.1.1-rc.2.
- Adds a Default Main provider/model/effort setting. It is copied only into newly created sessions; existing sessions are not migrated.
- Adds Subagent routing with follow-main and fixed-route modes, workflow overrides, and cold restore.
- Resolves follow-main from the active parent request before stale session options.
- Preserves inherited provider/model when rc.2 cannot carry reasoning effort.
- Adds localized Model Switch settings with revision-aware writes and clean lifecycle disposal.
Behavior / technical boundary
This release does not replace Search, Vision, read_image, ordinary chat attachments, image generation, or other official/provider paths. It edits no DSH Core files and relies only on released plugin seams.
Install / upgrade / compatibility
DSH_HOME=~/.dsh dsh plugin --profile web add github:NOirBRight/dsh-model-switch#v0.1.0Restart the selected profile after installation. Requires Node 22.19+ and the DSH 0.1.1-rc.2 peer set.
Validation / package contents
The repository tag contains Host/client source, localized settings, routing policy/runtime tests, integration coverage, and a pack-consumer gate; source/tests/scripts are not part of the package files allowlist. Known packaging issue: the manifest points to lib/, but this tag does not contain compiled lib/ output. GitHub-tag installs may fail to boot; use v0.1.1 or newer for production.