dsh-effort-slider-universal
Manifest validReasoning-effort slider in the model menu for DeepSeek Harness that also appears for providers and models with no declared effort metadata. Based on Microqian2th/dsh-codex-effort-slider — uninstall th
dsh-effort-slider-universal
全模型推理滑条 / Universal reasoning-effort slider for DeepSeek Harness (DSH).
把官方模型菜单里的「推理等级」那一行,改成一条可拖动的连续滑条 —— 而且任何 provider、任何模型都会出现,不再只有 DeepSeek 能拖。
基于 Microqian2th/dsh-codex-effort-slider 1.1.4(MIT)改造。 视觉、动画手感、设置面板全部沿用上游;本仓库只解决「换模型就消失」这一个问题。
为什么需要它(上游的一个真实缺口 / Why)
官方菜单的渲染是有条件的(@deepseek-ai/dsh-client-ui-model-selection):
pane === "root" && <>
<button role="menuitem"> 模型 … </button>
{reasoning !== void 0 && <button role="menuitem"> 推理等级 … </button>} // 没有 reasoning 元数据就不画
</>
模型条目没有 reasoning.efforts 时,根面板只有一行。上游插件的定位逻辑是:
if (items.length !== 2) return null; // 恰好两个 menuitem 才动手,否则直接放弃
于是只有「目录里声明了档位」的模型能用:
| 当前模型 | 目录里的 reasoning.efforts | 根面板行数 | 上游 1.1.4 |
|---|---|---|---|
| DeepSeek 官方 | 有(off/low/high/max) | 2 | ✅ |
| kimi-k3.1-pro(订阅类 provider) | 常为空 | 1 | ❌ 整块消失 |
| glm / qwen / 其它未识别 provider | 常为空 | 1 | ❌ 整块消失 |
改了什么(Changes)
- 没有官方那一行就自己补一行。 根面板只剩模型行时,按官方结构造一个
role="menuitem"的行(同 class 形状、label + value 两个 span、不带 chevron —— 它不导航到任何官方 pane)。关菜单 / 卸载时自己带走;重复扫描也不会插出第二行。 - 没有官方档位就给合成档位。 官方
efforts优先;为空时按 provider 前缀给档位 (deepseek / codex / claude / gemini / grok / kimi / glm / qwen … 兜底三档), 模型名命中thinking|reasoning|o3|o4|gpt-5|opus|k2|k3|max时补一档max。 目录还没就绪(拿不到 provider/model)时仍然不合成,保留上游的 fail-open。 - 写回先试、被拒说清楚、不刷屏。 合成档位第一次拖动照样调官方
directory.select();被UNSUPPORTED_REASONING_EFFORT拒了就明示原因并记住这个模型, 之后不再反复打宿主。用户还没选过时行内显示「默认」,不把显示锚点伪装成已生效。
没有变的:动画三档(快速 / 简洁 / 完整)、右键设置面板、诊断、颜色与粒子曲线、
directory.select() 这一个唯一写入口、以及「不改官方文字与 chevron」这条纪律。
装法(Install)
DSH Desktop:设置 → 插件 → 添加插件,填包名或仓库地址:
dsh-effort-slider-universal
github:AkiNoYo-desu/dsh-effort-slider-universal
装完完全退出并重开 DSH Desktop(只关窗口不够,宿主在启动时把插件读进内存)。
⚠️ 如果你还装着上游
dsh-codex-effort-slider,请先卸载它再装这个: 两者都往同一行注入,同时存在会互相抢那一条滑条。
验证(Verify)
node test/client.test.mjs # 470 项,全部通过
覆盖:只剩模型行 → 自建并注入;无档位 → 合成注入;syntheticLevelsFor 的 provider
推断;重复扫描幂等;写回被拒时给出可见提示且不重复写回。
边界(Honest limits)
- 合成档位保证的是滑条无处不在、能拖、能读。某个 provider 到底收不收
reasoningEffort,取决于它自己的适配器;不收的话你会看到滑条下方那行提示, 而不是请求被悄悄塞了无效参数搞成 400。 - 要让「真支持但目录没声明」的 provider 真生效,得让它适配器的
resolveModel返回reasoning.efforts。那是第三方插件的事,本仓库不动它。
License
MIT。原作品 © 2026 dsh-codex-effort-slider contributors(Microqian2th), 改造部分 © 2026 dsh-effort-slider-universal contributors。见 LICENSE。
Comments
Loading…
From the same category
by anywhere-labs
为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。
★ 34.4k
↓ 175/wk
MIT
TypeScript
Nov 2, 2026
dsh plugin --profile web add dsh-plugin-desktopby zhu1090093659
DeepSeek Harness (DSH) Web Plugin Aggregation Ecosystem · Everything is a plugin, distributed via the Creative Workshop
★ 9.9k
↓ 225/wk
Apache-2.0
TypeScript
Nov 2, 2026
dsh plugin --profile web add dsh-webA collection of independent Web UI plugins and skins, including task boards, Git graphs, mobile access, and live token stats.
★ 8.6k
↓ 225/wk
Apache-2.0
TypeScript
dsh plugin --profile web add dsh-webby PC2005-cloud
DSH 桌面宠物:一行命令装好即用的透明动画小桌宠,支持多开、大小位置随心配置;还内置 DIY 素材链,能用 AI 视频自造专属宠物
★ 5.2k
↓ 224.8k/wk
MIT
TypeScript
Nov 2, 2026
dsh plugin --profile web add dsh-petby omdsh-dev
开放的侧边栏底座,支持三方拓展注册新侧边栏页面。内置文件渲染编辑/终端/侧边对话/Git/子代理页面 | Open sidebar foundation, supports third-party extensions to register new sidebar pages. Built-in file rendering/editing, terminal, side chat, Git,
★ 4.8k
↓ 99.3k/wk
MIT
TypeScript
Oct 30, 2026
dsh plugin --profile web add dsh-better-sidebarby bowenliang123
The best DeepSeek Harness plugin for context insight and management, with context dashboard / browser / sidebar and context command, for context statistics, composition, breakdown, evolution details,
★ 4k
↓ 139k/wk
Apache-2.0
TypeScript
Nov 2, 2026
dsh plugin --profile web add dsh-context