dsh-effort-slider:將 DSH Web 推理等級選擇器替換爲帶阻尼動效的緊湊滑塊

前言

DeepSeek Harness(DSH)的 Web 客戶端在模型選擇菜單中集成了推理等級控制。默認的檔位選擇器在界面中佔據固定空間,交互方式較爲傳統。dsh-effort-slider 插件針對這一模塊進行了重構,在保留官方菜單結構的前提下,將檔位選擇替換爲緊湊的滑塊組件。

核心功能

該插件主要實現了以下交互與視覺改進:

  1. 菜單結構復刻:保持官方模型選擇菜單的原有佈局,菜單內仍顯示“模型”與“推理等級”兩行選項。
  2. 摺疊式子面板:點擊“推理等級”後,展開子面板,內部呈現滑塊控件。該面板摺疊在主菜單內,不會佔用輸入框周圍的空間。
  3. 阻尼動效:拖動滑塊時,彩色填充與滑塊頭呈現平滑的緩動效果;鬆手後,滑塊會自動吸附到最近的擋位。
  4. 樂觀更新:提交選擇時採用樂觀更新策略,在等待 RPC 響應期間不會出現擋位閃回舊值的情況。
  5. 自適應擋位:滑塊支持的擋位數量(如 off/high/max、low/high/xhigh/max 等)由配置決定,支持任意數量。
  6. 視覺反饋:滑塊根據擋位位置改變光效與色彩。越靠右色彩越強、光效越亮。最右側擋位通常進入彩虹動態特效;最左側擋位整體呈現灰暗無光狀態。

安裝與啓用

使用官方插件命令進行安裝:

dsh plugin --profile web add @qqqw114/dsh-effort-slider

安裝完成後,重啓 dsh web 進程,並在瀏覽器中執行 Ctrl+F5 強制刷新頁面以加載新組件。

實現原理

插件通過覆蓋 DSH 的渲染槽位來實現替換效果。

  • 槽位註冊:插件註冊到 conversation.input.model 單槽,設置 priority: -100。由於 DSH 採用優先級渲染機制(數值越低越優先),此設置確保了插件組件在官方模型選擇組件之前渲染,從而接管該區域的輸出。
  • 數據流:儘管渲染組件被替換,數據讀寫仍通過官方的 modelDirectories 服務完成。選擇推理等級時,同樣調用官方的 selectModel RPC。
  • 菜單結構:插件復刻了官方的兩層導航結構(根菜單 → 模型 / 推理等級),僅在“推理等級”的子面板內容上替換爲自定義的阻尼滑塊。

生態與鏈接

該插件遵循 MIT 許可證,由用戶 QQQW114 維護。

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

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

小夜