前言¶
在 DeepSeek Harness(DSH)里,会话输入区通常有一个模型选择座位,用来切换模型以及当前模型支持的思考强度档位。默认控件偏功能向;若你希望在 web profile 下用同一套宿主契约(选中档位仍写回会话的模型选择),但把交互换成带 canvas 动画的滑块,社区插件 dsh-effort-dial 针对的就是这一位置。下面介绍它是什么、能做什么,以及如何安装与使用时需要注意的顺序问题。
这是什么¶
dsh-effort-dial 是由维护者 WONGIII 发布的 DSH 客户端插件(GitHub:WONGIII/dsh-effort-dial,目录页:SkillHub 插件页)。它接管输入框的 conversation.input.model 座位,在模型选择区域放入一个带动画的思考强度控件,并把用户选中的档位写回会话模型选择,与宿主自带座位使用同一套契约。弹窗里的模型列表仍按宿主设计令牌朴素渲染,插件只改滑块一侧的视觉与交互。
当前 package 版本为 0.1.1,许可证 MIT。插件面向 web profile;从 git 安装时仓库已提交构建产物 lib/,无需本地编译。
核心功能¶
安装并启用后,你会得到如下能力(均来自项目 README 说明):
- 强度滑块 —— 当前模型提供的档位成为轨道上的站点;滑块为纯白圆形 thumb,背景效果画在 canvas 上。
- 档位与「场」的视觉语言 —— 低档对应缓慢、稀疏的粒子漂移;最高档更密集、更快,并带有持续的冲击波环、弧光裂纹和膨胀核心(README 描述为 violet particle field,并含 meteor 等元素)。
- 落点爆发 —— 滑块到达最高档时亮度与速度同时冲顶(峰值约为该档静止态的约 8 倍),随后用约两秒柔和回落;同时有一层光从滑块位置向整条轨道扫出。
- 磁吸锚点 —— 经过各档位时 thumb 会被轻微拖住,档位之间再释放;拖拽速度有界(约为手指的 0.5x–1.5x),避免卡死或窜位。
- 缓动位移 —— 点击、按压和键盘步进沿三次贝塞尔曲线滑向目标;拖拽直接跟手,残余滑动偏移会在手指下自行溶解。
- 模型列表不变样 —— 仅替换滑块与座位行为,不改造宿主模型选择列表的外观。
场动画的实现要点(便于理解效果而非必改代码):滑块持续发射「波前」脉冲,亮纹来自更早发射、已跑得更远的波前,而非滚动纹理上的驻波;波前剖面不对称,前沿陡、拖尾长,以维持轨道上的连续覆盖感。动画逻辑在 src/fx.js 的 FieldRenderer 中,每个滑块一个实例。
安装与启用¶
在 DSH 中直接从该仓库安装(命令以 README 原文为准):
dsh plugin --profile web add github:WONGIII/dsh-effort-dial
若已在本地检出同一目录,也可:
dsh plugin --profile web add ./dsh-effort-dial
安装完成后重启 DSH 或刷新页面。README 说明:构建产物 lib/ 已提交,包内没有 prepare 脚本,因此从 git 安装时无需编译,pnpm 也无需为构建脚本额外放行。
安装顺序上的注意事项¶
conversation.input.model 是 single 槽位:只渲染一个条目,且最后注册的插件获胜。宿主也会向该座位注册 ModelSelect。作为 bundle 安装时,本插件在 profile 的 cordis.patch.yml 之前组合,宿主座位可能更晚注册;插件会在启动后最初几秒内查看槽位 entries() 并重新注册,直到座位归自己。
只应通过 bundle 方式挂一次。 dsh plugin add 会写入依赖和 dsh.profile.bundles,一般足够。不要再在 profile 的 cordis.patch.yml 里手动 insert 同 id 的条目;同一 id 出现两行会导致插件页无法唯一定位该行(dsh-plugin-manager 以 candidates.length > 1 判为不可寻址,readOnlyReason: "unaddressable"),界面上开关无法关闭且状态不会写入磁盘。
典型用法¶
日常使用中无需额外配置文件:启用插件后,在会话输入区的模型/思考强度区域使用滑块即可。操作方式包括:
- 拖拽 thumb 在档位间移动(磁吸与速度限制如上);
- 点击、按压或键盘步进切换档位(缓动到目标);
- 通过原有模型选择弹窗查看列表(列表样式仍为宿主默认)。
选中的思考强度档位会通过与宿主相同的机制写回当前会话的模型选择,与未装插件时使用同一契约。
适用场景与注意¶
适合谁: 使用 DSH web profile、希望在输入框用可视化滑块调节 reasoning effort、且接受 canvas 动画占位的开发者或日常用户。
环境与权限: 插件在当前 DSH 进程权限下运行;安装前建议自行查看 GitHub 仓库 源码与 MIT 许可证。从源码开发或改 src/ 需要 Node 18+;仅从 git 安装插件则不需要构建。
生态说明: DSH 采用「一切皆插件」的扩展方式;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系,本文不以「官方应用商店」表述。
给其他插件作者的提示(README 摘录): 座位回调需在 inject 中声明会间接访问的服务(例如读会话地址需 remote.session);single 槽位会忽略你传入的 priority,真正生效的是注册顺序;本地验证脚本不应重写正在检查的 bundle 文件,以免触发 client-HMR 导致插件看似随机消失。
结尾¶
dsh-effort-dial 把 DSH 输入框的思考强度选择做成带 violet 粒子场、磁吸档位与缓动 thumb 的客户端座位替换方案,安装命令明确、bundle 一次即可,但务必避免在 profile 里重复 insert 同 id。进一步了解可访问目录页 https://www.skillhub.cn/plugins/WONGIII/dsh-effort-dial 与仓库 https://github.com/WONGIII/dsh-effort-dial。