前言¶
在 DSH(DeepSeek Harness)裏切換模型和推理強度,靠的是會話輸入區的原生模型選擇器。實際用下來有兩個不順手的地方:一是不同供應商對檔位的命名不統一,off、med、extreme、ultracode 這類名字要自己記映射;二是自定義路由(比如 OpenRouter)經常沒有配齊 reasoningEfforts,想調整等級時界面直接不給入口。
DSH 的理念是「一切皆插件」,會話輸入的模型槽位同樣可以由插件接管。本文介紹的 DSH Claude Style Reasoning Slider 做的就是這件事:用 Claude 風格的動畫滑塊替換原生模型選擇器,把推理等級規範成固定六檔。
需要說明:文中引用的社區目錄(skillhub.cn)是獨立站點,與 DeepSeek、幻方沒有官方從屬關係。
這是什麼¶
DSH Claude Style Reasoning Slider 是面向 DeepSeek Harness 的客戶端 UI 插件,作者 MEMZ-JZY,MIT 許可證。npm 包名 dsh-client-ui-effort-slider,版本 0.7.0,package.json 中 client 平臺爲 web,注入 @deepseek-ai/dsh-client-runtime、@deepseek-ai/dsh-client-locale、@deepseek-ai/dsh-cordis-client-runner 三個運行時模塊。
一句話定位:即插即用的模型選擇器,只替換 conversation.input.model 這一個槽位,聊天輸入的其餘部分保持不變,把推理等級面板換成一個動畫滑塊。
核心功能¶
規範化的六檔滑塊¶
滑塊始終顯示 Off | Low | Medium | High | Extra | Max 六檔,不受供應商命名影響。名稱匹配做了寬容處理:off/none/disabled 映射到 Off,ultracode 映射到 Max,med 映射到 Medium,extreme 映射到 Extra,類似顯示名也會歸一到規範檔位。
降級與 Default 行爲¶
- 當前模型不支持的檔位會置灰,但仍可點擊:滑塊停在所選位置,實際應用其下方最近的支持檔位,並用 toast 說明發生了降級。
- 切換模型時儘量保留當前推理等級;保留不了就自動降到下方最近支持檔位,同樣帶 toast。
Default以滑塊下方的膠囊形式提供,提交時不帶reasoningEffort,由供應商默認行爲決定。無法映射到滑塊的供應商專屬強度也會顯示爲可選膠囊。- 模型缺少
reasoning/efforts元數據時,Effort 菜單仍然顯示,內容是「無等級」提示加一個安全的Default膠囊,而不是把思維強度控件整個藏起來。
兩級菜單與觸發芯片¶
點擊會話輸入中的模型/推理等級觸發芯片,彈出兩級菜單:模型列表按供應商分組,旁邊是推理等級面板,包含加載、出錯、重試狀態。觸發芯片上顯示當前模型、等級標籤和六根隨等級填充的上升信號條。
可選彩蛋:Liang Calibrator 與 Big Fat Fish¶
兩個可選項,默認都是關閉的:
- Liang Calibrator(滑動變祖器):軌道下方的開關,開啓後把六檔綁定爲
Off → 小難梁、Low → 牢梁、Medium → 樑子、High → 梁聖、Extra → 梁神、Max → 梁祖。軌道上方出現一個224px的方形畫像,由 31 幀 WebP(frame-00…frame-30)組成,拖動時連續跟手,鬆手後吸附到該檔位首幀。標籤和觸發芯片會帶上Max 梁祖這類後綴。開關狀態持久化在localStorage。 - Big Fat Fish 拇指:把滑塊拇指換成 8 幀奔跑的 Q 版魚精靈,空閒時以
720ms循環,拖動時加速到420ms。在 DSH Settings → General → Big Fat Fish slider 中開啓,立即生效、無需重啓,設置同樣持久化在localStorage。
動畫細節¶
High和Extra檔位顯示稀疏的藍/紫點陣場,帶隨機閃爍和以拇指爲中心的徑向水波紋。Max/Ultracode檔位把滑塊變成動畫紫色像素場,Max標籤變爲流動的多色漸變文字。- 軌道採用玻璃質感:內凹陰影加輕微分形噪點,光斑和玻璃邊緣高光跟隨指針移動,越近越亮;
Max檔位下光效被抑制,保持像素場乾淨。 - 檔位刻度平時若隱若現,懸停附近高亮,當前檔位始終可見。
本地化與無障礙¶
內置英文和簡體中文詞典,跟隨 DSH 的明/暗設計令牌。滑塊可用鍵盤操作(方向鍵、Home/End、PageUp/PageDown),帶 ARIA 標籤和焦點管理。所有動效使用 CSS 過渡/動畫或輕量事件處理,並尊重 prefers-reduced-motion。
安裝與啓用¶
從 Git 倉庫安裝 bundle,然後啓動 web profile:
dsh plugin --profile web add github:MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider
dsh --profile web
也可以使用本地檢出的方式安裝:
dsh plugin --profile web add ./dsh-client-ui-effort-slider
注意:安裝或移除 bundle 之後,都需要重啓 web profile 纔會生效。
典型用法¶
1、點擊會話輸入中的模型/推理等級觸發芯片,彈出兩級菜單。
2、菜單裏選 Model 切換模型,或選 Effort 調整當前模型的推理等級。
3、在 Effort 面板中拖動或點擊滑塊選擇六檔之一。點到不支持的位置時,拇指停在點擊處,實際應用下方最近的支持檔位,toast 會說明情況。
4、點擊 Default 移除 reasoningEffort,交由供應商默認行爲決定;點擊其他膠囊可應用無法映射到滑塊的供應商專屬強度。
5、想啓用 Liang Calibrator,點擊軌道下方的「滑動變祖器」開關,畫像和階段名後綴立即生效,並跨會話記憶。
6、想啓用 Big Fat Fish 拇指,到 DSH Settings → General 打開 Big Fat Fish slider,立即生效、無需重啓。
另外一個常見場景:供應商支持 effort 但沒配置 reasoningEfforts(自定義 OpenRouter 路由裏很常見),此時在 DSH 的 llm-pi-ai 設置中補充等級,就能恢復完整滑塊。
適用場景與注意¶
適合的人羣:日常在 DSH web 端工作、經常切換多個供應商模型或使用自定義路由、希望推理等級直觀可見且可快速調整的用戶。如果你只固定用一個模型和一個等級,這個插件的收益相對有限。
幾點注意:
1、Liang Calibrator 和 Big Fat Fish 拇指默認關閉,相關設置存在 localStorage,不喜歡這類內容可以完全不開啓。
2、插件以當前 dsh 進程的權限運行,安裝前建議先閱讀源碼確認行爲符合預期。許可證爲 MIT,倉庫地址在下文。
3、README 中的 Development 章節在抓取時被截斷,demo 頁等後續內容本文未覆蓋,需要的話直接看倉庫。
結尾¶
這個插件解決的問題很具體:把分散在各個供應商命名體系裏的推理檔位,規範成一個始終可見、可拖動、可降級兜底的六檔滑塊,同時不碰聊天輸入的其餘部分。彩蛋功能全部默認關閉,屬於可關可開的附加項。
項目目錄頁:https://www.skillhub.cn/plugins/MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider
GitHub 倉庫:https://github.com/MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider