Repository navigation
Releases
Releases · bamboostrip/dsh-llm-capabilities
v0.1.5
- Vision handed back to the official UI: llm-pi-ai now declares
inputmodalities itself, so the panel drops the three-state vision editor and saving no longer writes or deletesinput— existing values (including ones set by the official UI) are preserved untouched. Detection still parses vision signals in the shared lib, but the panel neither surfaces nor stores them. - Settings page rework:
- Single, always-reachable save: the toolbar keeps only provider selection + re-detect; one “Save changes” button lives in a sticky frosted-glass bar pinned to the bottom of the list (with the model count), so it follows scrolling and never requires scrolling back to the top. The bar is an opaque field-fill card with backdrop blur, fixing the old sticky footer whose background resolved to transparent inside the settings dialog and let content bleed through. Saving flips the button to “Saved ✓” for a moment.
- Auto-detect on provider selection, once per route; manual edits survive provider switching. “Detect” becomes “Re-detect” once results exist.
- Thinking-level editor rebuilt: switch toggle + level pills. A selected level shows only its name plus a pencil icon — the wire-spelling override input stays hidden until the pencil is clicked (default selections stay clean, no dashed-underline clutter), and a per-model “Reset” action restores defaults.
- Fix the
offlevel: checking it now storesoff: null(its legal wire value); the old editor treatednullas “remove the level”, sooffcould be unchecked but never re-checked. - Re-detect echoes existing configuration: models already saved with
reasoningEffortsshow that exact state (switch on, their own levels and wire spellings) after auto/manual re-detection, even when the endpoint and catalog are silent — previously they flipped to “unknown” and the switch looked off, as if thinking was never configured. Configured levels also win over detection defaults, so custom wire spellings survive re-detection; the endpoint/catalog can still upgrade an explicitreasoningEfforts: falseto “supported”. - Unprovable providers degrade to an echo, not an error: routes with neither a reachable
baseURLnor a shipped catalog (e.g. gateway routes likeocg-c) madediscoverModelsthrow a red banner on every page entry once auto-detect landed. Now the saved configuration is echoed and the entry stays quiet; a manual re-detect shows a soft notice explaining there is nothing to probe. - Cards, badges and status colors aligned to the DSW alias tokens (soft-tinted pills instead of outlined text); “model not present in the endpoint listing” no longer leaks a hardcoded English string.
- Removed the redundant “Pre-fill from catalog” button — endpoint detection already merges catalog knowledge.
v0.1.2 — dsh 0.1.2-rc.1 compat
Compat with dsh 0.1.2-rc.1 breaking change: @deepseek-ai/dsh-client-runtime removed, connection.api gone (new handle only has isLoopback/generation/state/rpc/reconnect/registerGenerationSource/start). Fixes Settings wire unavailable.
- Add createApiClient(remote) adapter in the client half: ApiClient surface and panel code unchanged, new {ok, value/error} remotes wrapped to the old {result: ...} envelope.
- settings.describe({}) -> remote.settings.describe()
- settings.mutate({ns, ops, rev}) -> remote.settings.mutate(ns, ops, rev)
- llm.discoverModels({settingsNs, ...}) -> remote.llm.discoverModels(settingsNs, {...}) (array -> {models} normalized)
- llm.models({}) -> remote.session.modelCatalog()
- Client inject: [connection, slots, locale] -> [slots, locale, remote, remote.llm, remote.session, remote.settings]; drop deleted @deepseek-ai/dsh-client-runtime from dsh.client.inject.
- Verified: typecheck/build/test pass; new catalog has no vision/inputModalities, covered by existing endpoint-detection fallback.