dsh-yet-another-slider-thingy:在 Composer 模型位上接推理強度滑條

前言

在 DeepSeek Harness(DSH)裏寫對話時,模型選擇與「思考強度 / reasoning effort」往往拆在不同入口:換模型走原生模型位,調檔位又要另找路徑。若你希望在 Composer 輸入區一眼看到「當前模型 + 當前檔」,並在同一塊面板裏連續微調強度,官方默認的 conversation.input.model 條目本身不會替你拼出這套 UI。

Traveritas 維護的 dsh-yet-another-slider-thingy 屬於 DSH 社區插件(SkillHub 分類爲「模型推理」),用更高優先級條目覆蓋 Composer 的模型槽位:保留原生模型下鑽與同一套模型目錄,在其下增加離散的思考強度滑條,並可選外觀、配色與軌道特效。下文按安裝、設置與行爲說明可覈對的事實;插件以當前 DSH 進程權限運行,安裝前請自行查看倉庫源碼與 MIT 許可證。

這是什麼

dsh-yet-another-slider-thingy 接管 DSH Composer 的模型位(Cordis 槽位 conversation.input.model,priority -1 覆蓋官方 priority 0 條目)。觸發按鈕仍對齊原生規格(28px 行高、13px 字號、「模型名 · 檔名」、pending 時用 StateDot);面板材質使用宿主原生的 MenuSurface,檔位、分組、pending 與 select 提交路徑與宿主模型目錄一致。

卸載插件、在設置裏關閉開關,或渲染失敗被退役時,Composer 會立刻回到官方模型位。Subagent 會話在目錄標記 available === false 時整座不渲染。

同系列插件索引見維護者倉庫 AveritA 的 DSH 插件目錄。

核心功能

模型行 + 離散滑條

滑條檔位來自適配器公佈的 reasoning.efforts(不同模型可能是 3 檔或 4 檔,名稱原樣顯示)。拖動過程中只更新視覺;鬆手、點擊刻度,或鍵盤操作停手約 200ms 後才提交;提交後面板不自動關閉,便於連續微調。

換模型時:相同 effort id 儘量保留;目標模型沒有該檔則按序號就近鉗制;目標模型沒有推理元數據時不附帶 reasoningEffort,走目錄默認。提交失敗時滑條回滾到已提交檔,並在 Composer 卡片上用原生 Toast 報錯。

三套外觀與拇指

在 設置 → 思考強度 → 外觀 切換,只改形狀與材質,不改檔位與提交邏輯:

設置顯示 存儲值 要點
緊湊 compact 細軌;默認可點檔位名
塊面 claude 啞光塊面;默認刻度爲兩端 Faster / Smarter
膠囊 codex 膠囊軌;默認 4px 刻度點

緊湊與膠囊的拇指可在 圓角方 / 圓 間切換(塊面固定圓角方);三套外觀共用 標準 / 大 兩檔拇指大小(存儲 md / lg),只縮放拇指與內邊距,軌道高度不變。

拖動方式:逐檔與平滑

設置 → 思考強度 裏可切換:

  • 逐檔(默認,localStorage 鍵 dsh-yet-another-slider-thingy:smooth = step):指針每動一下取整到刻度,讀數與高亮跟隨指針;跨檔時拇指與填充用該外觀緩動滑動。
  • 平滑(smooth):拇指與填充連續跟手;讀數、刻度高亮與無障礙狀態停在已提交檔,鬆手吸附最近檔再提交。宿主契約仍只接受離散 reasoningEffort,不會產生中間強度值。

特效與刻度

特效選項(含「跟隨外觀」「關」)包括:流光場、密度粒子、心跳、字符點陣、漸變;強度隨檔位變化(CSS 變量 --dts-power)。「跟隨外觀」時僅膠囊默認帶密度粒子;緊湊細軌會自動降級部分粒子類效果。漸變可在設置裏填寫色標(留空則跟隨當前配色)。

底部刻度可設爲:跟隨外觀、每檔可點名字、Faster / Smarter 兩端字,或隱藏整行。

配色

內置多套可編輯配色(package.json 描述中含 Claude 風 / Codex 風 / 苔原 / 海鹽 / 晝霧 / 冷晨 / 暮玫瑰 / 暮紫等);選中某套時七個顏色槽可寫固定色,不依賴宿主主題令牌。也可新增自定義配色;選「自動」時不覆蓋主題變量。

鍵盤與無障礙

滑條軌道 role="slider":← / →(及 ↑ / ↓)逐檔,PageUp / PageDown 逐檔,Home / End 到兩端;Esc 退出子面板或關閉;Shift+Tab 關閉。

安裝與啓用

官方 README 的安裝方式是克隆倉庫後在插件管理器裏 link 本地絕對路徑(不是 dsh plugin add github:owner/repo 這類 spec)。示例命令如下(路徑請換成你自己的目錄):

git clone --depth 1 https://github.com/Traveritas/dsh-yet-another-slider-thingy.git D:\dsh\dsh-yet-another-slider-thingy

接着在 DSH 設置 → 插件 → 添加插件,spec 填克隆目錄的絕對路徑(已 clone 過的可在管理器裏直接選該目錄)。管理器會 pnpm link 進 profile 並寫入 dsh.profile.bundles;若返回 application: applied 即生效,若爲 restart-required 需完全退出桌面端再打開。

桌面端的 desktop profile 由 Electron 獨佔,不能使用 dsh plugin --profile desktop ...;桌面端只走應用內插件管理器。其它 profile 可使用:

dsh plugin --profile <名字> add "link:<絕對路徑>"

路徑含空格時需加引號。

插件在 DSH 0.2.1-rc.5 上實跑通過;依賴 Cordis 服務 modelDirectories、sessions,以及爲冷啓動競態聲明注入的 remote / remote.session,並依賴 @deepseek-ai/dsh-client-ui-primitives 等宿主 UI 基線。任一依賴不滿足時不會註冊座位,設置頁會顯示「未接管」及原因。

裝好後在 設置 → 思考強度 打開總開關,並按「滑條 / 特效 / 配色」分組調整選項。桌面端無 HMR 時需完整重啓才見改動;有 HMR 時保存後約二十秒熱加載。

卸載:在同一插件管理器移除即可;移除或關閉開關後 Composer 立即恢復官方模型位。

典型用法

1、安裝並 link 插件,確認設置頁未提示「未接管」。

2、打開 設置 → 思考強度,將 localStorage["dsh-yet-another-slider-thingy:enabled"] 對應開關設爲啓用(界面操作即可,無需手改存儲)。

3、在 Composer 點擊模型位:上方行進入原生模型列表;下方滑條拖動或點刻度調整 reasoning effort,鬆手後等待提交。

4、按需切換外觀(緊湊 / 塊面 / 膠囊)、拇指形狀與大小、逐檔或平滑拖動、特效與刻度樣式、配色預設。

5、若與舊版 dsh-theme-averita 0.7.0 內聯的同類座位衝突,插件會檢測到已有 priority: -1 條目並拒絕註冊;需先升級主題到不再內聯的版本。

適用場景與注意

適合誰: 經常在 Composer 裏切換模型並微調思考強度、希望模型名與檔位同屏展示、且接受自定義 UI 覆蓋官方模型位的 DSH 用戶。

務必知曉的限制(來自 README):

  • 替換整座模型位後,無法轉發 conversation.input.model.label 子槽位;模型名直出目錄名,類似 dsh-client-ui-deepseek-model-label-1017 的徽章在座位上不顯示(/model 彈窗不受影響)。
  • 不接管 /model 彈窗;從彈窗換模型仍用該模型默認檔。
  • ctx.modelDirectories 與 store 快照屬半公開契約,DSH 大版本升級後需複覈。
  • 插件以當前 DSH 進程權限運行;安裝前請閱讀 GitHub 倉庫 源碼與 MIT 許可證,勿在未審閱的情況下加載不可信路徑。

當前 package 版本爲 0.7.0(以倉庫 package.json 爲準)。

結尾

dsh-yet-another-slider-thingy 把 Composer 模型位收成「原生模型目錄 + 離散思考強度滑條」,並在 appearance、配色、特效與拖動手感上提供可配置層,同時保持與宿主 select 和失敗回滾一致。社區目錄頁:SkillHub · Traveritas/dsh-yet-another-slider-thingy;源碼與完整行爲說明:GitHub · Traveritas/dsh-yet-another-slider-thingy。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜