前言¶
DeepSeek Harness(DSH)通过 llm-pi-ai 适配器,本身支持为每个模型声明 reasoningEfforts(思考强度)和 input(输入模态)。官方「模型」页的编辑卡却刻意不暴露这两个字段。结果是:第三方模型在 Composer 里往往没有思考档位选择器,手工添加的模型容易被当成纯文本;想补全能力只能去改 settings.yaml。
dsh-better-reasoning-effort-fish 是社区插件 dsh-better-reasoning-effort(原作者 HaoyueQin,上游基线 v0.5.2)的个人 Fork,维护者为 Fish-under-sea。它在官方模型编辑卡内注入 UI,并带一键自动适配。相对上游,本 Fork 让出官方模型能力面板的 settings.models.provider-card 席位,以便与 dsh-web 的模型能力插件共存。
这是什么¶
npm 包名:dsh-better-reasoning-effort-fish(当前资料中版本 0.5.8)。许可证 MIT(版权归原作者,本仓库 LICENSE 未改)。分类属于 DSH 生态中的模型推理方向。
插件类型为 client + host(Web 客户端注入 + host 侧自动填充等逻辑)。它不改变 DSH 核心,只在官方「模型」页 DOM 上锚定注入,并与卡片自身的保存/取消行为对齐。
核心功能¶
下面介绍资料中已明确列出的能力。
官方页内编辑¶
展开某条模型行后,在官方容量字段下方会出现「选项」编辑块,包括:
- 思考强度:勾选档位(off / minimal / low / medium / high / xhigh / max),并可填写线上取值(例如 Composer 选 High 时网关收到自定义字符串)。
- 输入模态:勾选图片输入等,声明模型接受的模态。
- 端点兼容(协议兼容时出现):在
openai-completions上配置思考预算字段 / vLLM 优先级;在openai-responses上配置max_output_tokens的处理方式。
改动进入待写入状态,点卡片 保存 一并落盘;取消 或刷新则与卡片其他字段一起丢弃。
三种勾选意图:
- 全不勾 + 保存 → 取消声明(回到继承)。
- 只勾 off + 保存 → 禁用推理。
- 勾选具体档位 → 写入声明。
自动适配与自动填充¶
- 自动适配:一键填入推荐档位、线上取值与模态;内置知识库(资料写明 15 家厂商 65 个条目)、线协议推断、同源
/models探测,建议带置信度标注。 - 自动填充:启动时补齐未声明模型的推荐声明;会话中新增模型也会补写。可通过配置关闭(见下文
autofill、modalityAutofill)。
Composer 与默认值¶
- 官方模型菜单弹出体可替换为上游风格的思考强度滑块(拖动 / 键盘,乐观提交、被拒回滚),右下角触发钮保持原样。
- 模型行上可设默认思考强度,写入设置文档,新会话打开该模型即使用。
请求头与 User-Agent¶
在提供商卡片内可编辑官方 headers 字段(掩码显示、路径合并),并按 origin 精确接管 fetch 层的 user-agent;同源 /models 探测一并覆盖。
防御式注入¶
注入锚定官方「模型」页 DOM。官方升级改变结构时,注入会暂停,官方页本身不受影响。
本 Fork 相对上游的改动¶
上游在提供商卡片上占用 settings.models.provider-card 席位注册请求头编辑器。该席位为 keyed slot:同一 (key, priority) 只能有一个条目。@linxin666/dsh-client-ui-model-capabilities(dsh-web 模型能力面板)与上游使用相同的 llm-pi-ai key 与默认优先级,并存时会导致模型能力面板静默消失。
本 Fork 将请求头编辑器改挂到卡片自身的编辑器容器,不再注册该席位,模型能力面板可正常显示;请求头编辑仍在卡片内。插件 id、host 路由前缀与包名已与上游分开,理论上可同 profile 并存,但资料建议只装一个,避免两套 UI 同时改同一份设置。
安装与启用¶
环境要求(来自 README badge 与 package 说明):
- DeepSeek Harness
>= 0.1.5-alpha.1(资料写明当前对照0.2.0-rc.2编译与门禁)。 - Node
^22.19.0 || >=24。
从 npm 安装(推荐):
# 桌面版
dsh plugin --profile desktop add dsh-better-reasoning-effort-fish
# Web 版
dsh plugin --profile web add dsh-better-reasoning-effort-fish
DSH 内置 pnpm 的 minimum-release-age 为 24 小时:版本发布一天内的安装可能解析到「足够旧的最新版」。若要立刻安装指定版本,可写包名加版本,例如:
dsh plugin --profile web add dsh-better-reasoning-effort-fish@0.5.8
也可从 GitHub Release 的 tarball 安装(跳过 registry 与发布冷静期,升级时替换 URL 中的版本号):
dsh plugin --profile web add \
https://github.com/Fish-under-sea/dsh-better-reasoning-effort-fish/releases/download/v<version>/dsh-better-reasoning-effort-fish-<version>.tgz
安装后重启 DSH 并强制刷新浏览器。
若曾使用 HanaAyane 的 dsh-reasoning-effort,资料建议先移除,避免 Composer 同一席位出现两个档位控件:
dsh plugin --profile web remove dsh-reasoning-effort
典型用法¶
经过上面的安装步骤后,可按下面流程配置第三方模型。
- 在官方「模型」页配置第三方供应商(API Key 等)。
- 展开目标模型行,在注入的编辑块中:
- 勾选思考档位并填写线上取值(如需要);
- 在「输入模态」区勾选图片输入等;
- 需要时可点「自动适配」参考推荐值,再按需微调官方输入框;
- 点卡片 保存 落盘。 - 需要自定义网关行为时,查看「端点兼容」分区并按协议类型开关相应项。
- 展开提供商卡片,在请求头区域编辑
user-agent等(随卡片保存)。
声明完成后,该模型在 Composer 中应出现思考强度选择;声明了图片输入的模型可按 DSH 能力传附件。
可选配置¶
在 settings.yaml 的插件 config 块中可写:
| 配置键 | 默认值 | 说明 |
|---|---|---|
autofill |
true |
启动时自动填充未声明模型的推荐声明 |
modalityAutofill |
true |
自动填充是否连带输入模态 |
probeTimeoutMs |
15000 |
/models 探测超时(毫秒) |
bootRetryDelaysMs |
[1000, 2000, 4000, 8000, 16000, 30000] |
启动自动填充失败后的重试延迟 |
defaultGuard |
true |
无档位调用落厂商默认档,而非发送 thinking: disabled |
示例:
- insert:
- id: dsh-better-reasoning-effort-fish
name: dsh-better-reasoning-effort-fish
config:
autofill: true
modalityAutofill: true
probeTimeoutMs: 15000
bootRetryDelaysMs: [1000, 2000, 4000, 8000, 16000, 30000]
defaultGuard: true
适用场景与注意¶
适合谁:在 DSH 里大量使用第三方 OpenAI 兼容网关或自建中转,需要在 UI 里声明思考档位与视觉模态,又不想长期手写 YAML 的开发者。
权限与安全:插件以当前 DSH 进程权限运行,会读写设置文档;安装前应阅读仓库源码与 MIT 许可证。资料明确:headers 中的凭据在磁盘上不脱敏(只读视图掩码,设置文件仍明文),请与 API Key 同等对待。
已知限制(摘要):
- 注入依赖官方「模型」页 DOM,官方大改后需等待插件适配。
- 自动适配探测仅应答回环与 IP 字面量 host,不跟随重定向。
reasoningEfforts为声明性建议,端点实际行为以提供商文档为准。- 模态词汇跟随 pi-ai 核心(当前
text/image)。 - 请求头区域依赖官方卡片编辑器容器结构;本 Fork 为共存让出席位,官方若改结构,请求头区域可能暂时不出现,但不破坏官方页。
- 同一时间只应有一个
user-agent改写器;插件会提示已知同类冲突。
社区插件目录(SkillHub)与 DeepSeek / 幻方无官方从属关系;星标等统计以目录页为准(线索中为 0)。
链接¶
- 社区目录:https://www.skillhub.cn/plugins/Fish-under-sea/dsh-better-reasoning-effort-fish
- GitHub:https://github.com/Fish-under-sea/dsh-better-reasoning-effort-fish
- 上游原项目:https://github.com/HaoyueQin/dsh-better-reasoning-effort
本插件把 reasoningEfforts 与 input 从 YAML 搬回官方模型编辑卡,并针对 dsh-web 生态做了席位冲突修复;若你的 profile 里同时装模型能力类插件,优先评估本 Fork 是否更符合共存需求。