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。

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

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

小夜