前言¶
在 DeepSeek Harness(DSH)里用 Composer 时,选模型和调推理强度(reasoning effort)往往要分两步:先换模型,再在子菜单里打开 Effort,从 Default、Low、High、Max 里点选。日常调试不同模型、扫一遍强度档位时,这套路径偏长。dsh-effort-menu 由社区维护者 xuanfenglajiao 发布,分类为模型推理;它接管 Composer 自带的模型选择入口,把最近用过的模型、按服务商展开的完整列表,以及可拖动的推理强度滑块放进同一块弹出菜单,并与 DSH 自带的按会话模型目录读写,使原生选择器和 /model 弹窗共享同一状态。
这是什么¶
dsh-effort-menu(npm 包名 dsh-effort-menu,当前资料中的版本为 1.0.1)是一套客户端插件:用「最近模型 + 全量服务商浮层 + 底部推理强度滑块」替换默认的 Composer 模型菜单。实现思路上参考 zcode 的做法,把原先藏在二级列表里的 effort 档位改为滑块上的节点,节点数量随当前模型支持的 reasoning.efforts 变化;选完模型后可以立刻拖动调节,无需再进子菜单。
许可证为 MIT;要求 DSH >=0.2.2-rc.1,且构建中需包含 dsh-client-ui-conversation、dsh-client-ui-model-selection 与 dsh-client-locale 等客户端包。资料记载的开发验证环境为 DeepSeek Harness Desktop 44.7.0(DSH 0.2.2-rc.1)与 Windows 11。
核心功能¶
下面介绍插件在菜单里实际提供的能力,均来自仓库 README 与 package.json 说明。
模型列表与服务商浮层¶
菜单顶部展示最近使用的三个模型。将指针悬停在服务商(provider)一行时,会弹出浮层,列出该服务商下的全部模型,便于在不离开当前菜单的情况下切换远端模型。
推理强度滑块¶
滑块位于菜单底部,每个节点对应当前模型支持的一个 effort 级别。若模型未声明自有默认值,滑块会在最前增加一个 “Default” 节点,表示交由服务商默认策略处理。切换模型时,会尽量保留当前选中的强度;若新模型不支持该档,则落到该模型支持的最高档。
若当前模型没有 reasoning.efforts,菜单会提示该模型不提供强度档位,滑块无从展示。
状态同步与体验细节¶
读写走 DSH 自带的 per-session 模型目录,因此与本机原生模型选择器、/model 弹窗保持一致。模型列表加载失败时,菜单内会提示并提供重试按钮。支持方向键在条目与滑块间移动,Esc 关闭菜单;界面跟随应用的明/暗主题,文案支持英文与中文。
在 subagent 会话中,插件不渲染任何 UI。
安装与启用¶
插件以当前 DSH 进程的权限在本地运行;安装前建议在 GitHub 上查看源码与 MIT 许可证,确认与自身环境匹配。社区插件目录(skillhub.cn)与 DeepSeek / 幻方无官方从属关系,安装命令以 README 原文为准。
Web 配置档¶
在已由 CLI 管理的 web 配置档下,一条命令即可安装,无需额外构建步骤(浏览器侧使用仓库内已提交的 client.js):
dsh plugin --profile web add dsh-effort-menu
安装后重启 dsh web,或刷新页面。
Desktop 配置档¶
desktop 配置档由桌面应用管理。使用 CLI 安装前需完全退出桌面应用;若应用保持运行,可通过应用内的 Plugin Manager 指向插件检出目录完成安装。
# CLI 安装(需先完全退出桌面应用)
dsh plugin --profile desktop add dsh-effort-menu
安装完成后重新启动应用。README 另载明可通过克隆仓库后在 Plugin Manager 中指定目录;若你更倾向不用 CLI,可改动手动维护的 package.json(见下文)。
手动写入 package.json¶
Web。 编辑 ~/.dsh/profiles/web/package.json,在 dependencies 中加入:
"dependencies": {
"dsh-effort-menu": "^1.0.0"
}
并在 dsh.profile.bundles 数组中追加包名:
"bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-effort-menu"]
在该目录执行 pnpm install,然后重启 dsh web。
Desktop。 编辑 ~/.dsh/profiles/desktop/package.json,仅在 dependencies 中加入同上依赖(desktop 配置档不在 bundles 中罗列插件)。执行 pnpm install 后重启应用。
卸载 Web 侧可用:
dsh plugin --profile web remove dsh-effort-menu
Desktop 侧可在 Plugin Manager 中移除。
典型用法¶
安装并重启(或刷新)后,在 Composer 输入区使用模型入口,即可看到替换后的菜单,而非默认二级 Effort 列表。
- 从顶部最近三个模型中点击一项,或悬停 provider 行,在浮层里选择其他模型。
- 若模型支持推理强度,在菜单底部滑块上拖动或按方向键选择档位。
- 需要与命令行一致时,仍可使用
/model弹窗;二者共享同一套会话模型状态。
切换模型时留意强度是否会因新模型能力而被抬到最高支持档,这在 README 中作为预期行为说明。
适用场景与注意¶
适合谁: 经常在同一 Composer 会话里切换模型、对比不同 reasoning effort 的开发者;希望减少「选模型 → 再开 Effort 子菜单」步数的 DSH 用户。
兼容性: 仅支持 DSH 0.2.2-rc.1 及更新版本;更早版本不受支持。当前模型必须暴露 reasoning.efforts,滑块才有内容。
与其它插件的关系:
- 插件以优先级
-1占用conversation.input.model插槽,会遮蔽自带的模型选择器。同一插槽只能有一个替换型插件,不宜与另一个「整段替换模型菜单」的插件并存;仅在外围改样式的插件未必作用于本菜单。 conversation.input.model.label子插槽不可重复声明;本插件自行渲染模型名称,其他插件为该子插槽提供的标签不会出现在此菜单中。
质量与测试: README 标明尚无自动化测试,变更依赖在运行中的应用中手工验证。
结尾¶
dsh-effort-menu 把「选模型」和「调推理强度」收到同一块 Composer 模型菜单里,并与 DSH 原生模型状态对齐。若你在使用 DSH 0.2.2-rc.1 及以上版本,且主要工作在 Composer 而非 subagent 会话,可按上述命令安装后直接使用。
- 社区目录页:https://www.skillhub.cn/plugins/xuanfenglajiao/dsh-effort-menu
- 源码与安装说明:https://github.com/xuanfenglajiao/dsh-effort-menu