鱼皮AI导航
鱼皮AI导航
  • 主页
  • 社区
  • AI工具
  • AI知识库
  • AI提示词
  • MCP
  • Skills
  • AI学习资源
  • AI资讯
  • GitHub开源
登录/注册

dsh-task-effort

根据任务自动调整模型推理档位(off/low/high/max):任务分类判定、[effort=...] 显式标记、轮内出错升级、DeepSeek 高峰计价时段自动限档省钱并显示切换倒计时、GUI 手动选择优先。

开发运行时
访问 GitHub
文档README

dsh-task-effort — 根据任务自动调整模型 effort

DSH 插件:每次 LLM 调用前,根据当前任务自动决定模型的推理强度 reasoningEffort(DeepSeek 支持 off / high / max),不再全局固定一个档位。

工作原理

DSH 的 agent 循环在每次模型调用前会走 agent/request waterfall(dsh-agent-loop 的 buildRequest),插件在瀑布的最外层改写 reasoningEffort,因此最终生效, 优先级高于模型选择器/设置里的默认 effort。

判定时机:agent/pre-step(每步执行前)读取本轮最新用户消息并分类,判定结果 缓存到当轮结束;agent/request 时应用到请求配置。中途转向(steer / 追加消息) 会触发重新判定。

判定规则(优先级从高到低)

  1. 显式标记:消息里带 [effort=off|high|max](也支持 【effort:…】、 {effort:…}、effort=…;low→off,medium→high)→ 直接采用
  2. 复杂任务关键词(maxKeywords:重构/架构/分析/refactor/design/debug…)→ max
  3. 继续类指令(continuationKeywords:继续/接着/next/continue…)→ 沿用上一轮
  4. 闲聊(offKeywords,先剥离 politenessPrefixes 如“好的/收到”)→ off
  5. 长指令(≥ longThreshold 字符)→ max
  6. 过短无信号(≤ shortThreshold 字符)→ 沿用上一轮
  7. 默认(defaultEffort)→ high

额外机制:

  • 轮内出错自动升级(escalateOnError):本轮工具调用报错后,剩余步骤强制 max
  • 子代理(subagents: "auto"):子代理按自己的提示词(委托指令)判定, 通常较长 → max;可设 "off" 完全不干预
  • 能力收敛:只会把 effort 设置到目标 provider+model 实际支持的档位 (查 ctx.llm.resolveModelInfo 并缓存),不会把 max 强加给不支持推理的模型 (如 qwen 视觉子代理)
  • 变化通知(notify):effort 相对上一轮变化时,向模型注入一行 <system-reminder> 说明,便于观察与调试

安装

方式一:npm / GitHub 包(推荐)

▼
sh
复制代码
dsh plugin --profile web add dsh-task-effort # 或从 GitHub:dsh plugin --profile web add github:zhangzhenwen1/dsh-task-effort

安装后重启 dsh web。可通过 profile 的 cordis.patch.yml 覆盖配置。

方式二:本地 patch(开发用)

在 ~/.dsh/profiles/web/cordis.patch.yml 的 insert 列表追加:

▼
yaml
复制代码
- id: task-effort name: 'file:///home/zhang/文档/DSH/plugins/task-effort/index.js' config: providers: - deepseek-official defaultEffort: high

保存后 user patch 层热更新;若未生效,重启 dsh web。

配置项

键默认说明
enabledtrue总开关
providers["deepseek-official"]只调整这些 provider 的请求
defaultEffort"high"无信号时的默认档位
maxKeywords见源码复杂任务关键词(命中→max)
offKeywords见源码闲聊关键词(命中→off)
politenessPrefixes见源码判定前剥离的礼貌前缀
continuationKeywords见源码继续类指令(沿用上一轮)
longThreshold200消息长度超过即 max
shortThreshold4短于此且无信号则沿用上一轮
escalateOnErrortrue轮内工具报错后升级到 max
costAwaretrue时段感知:高峰时段(北京时间工作日 09-12/14-18)价格更高,自动压档省钱
peakCap"high"高峰时段的 effort 上限(max 被压到该档;可设 "low"/"off",null 关闭限档)
periodOverridenull测试用:强制时段 "peak" / "offpeak"(演示限档效果)
subagents"auto"子代理策略:auto / off
notifytrueeffort 变化时注入说明(含时段与距下一时段倒计时)
logtrue打印判定日志(task-effort: agent=… effort=… reason=…)

手动控制

  • GUI 模型选择器:你在界面里手动选过档位后,插件检测到选择偏离会自动尊重手动选择并暂停自动判定(界面显示的档位 = 实际请求档位,完全一致)。
  • 恢复自动模式:手动选择记录在运行进程内(Web 的 selectModel 状态),新建会话或重启 dsh web 后自动恢复。注:DeepSeek 模型有默认档位(如 high),所以选择器菜单里没有 "Provider default" 选项。
  • 单条消息指定档位:[effort=off]、[effort=max] 等(优先级最高,仅当轮生效;手动模式下同样生效)
  • 临时关闭:把配置里 enabled 改为 false,或移除 patch 条目

界面可见性

  • 每次 effort 切换,会话里会注入一行 <system-reminder> 说明(判定原因 + 档位 + 当前时段 + 距下一时段倒计时)
  • 插件应用档位后会自动通知界面刷新(llm/adapters-updated → 模型选择器重新拉取), 输入框旁的模型胶囊会显示实际生效的档位(Off / Low / High / Max)
  • 会话轨迹(request/header 事件)记录每次实际档位变化

已知限制

  • 判定是启发式的,误判时用 [effort=…] 标记兜底,并欢迎调整关键词表。
开发运行时

快捷安装

复制到终端去安装插件

dshplugin--profilewebaddgithub:zhangzhenwen1/dsh-task-effort

温馨提示

装插件等于在本机跑第三方代码,权限与你相同,能读文件、用凭据、访问网络,工具审批管不到。请只装可信来源,并尽量锁定 commit。

站长:程序员鱼皮 老鱼简历 商务合作 增值电信业务经营许可证
2026 鱼皮AI导航 | 沪ICP备19026706号-6
站长:程序员鱼皮 老鱼简历 商务合作 增值电信业务经营许可证
2026 鱼皮AI导航 | 沪ICP备19026706号-6
🔥热门工具
朱雀AI检测朱雀AI检测
朱雀AI检测助手朱雀AI检测助手
LovartLovart
老鱼简历老鱼简历
WritePass官网WritePass官网
面多多面多多
CursorCursor
星月写作星月写作
零感AI零感AI
墨得问题墨得问题
dsh 插件推荐
dsh-simplify
提供 /simplify 命令,让 Agent 在选定的 Git 变更范围内简化代码,支持暂存变更、提交及未跟踪文件。
pi2dsh
Pi Host ABI 兼容引擎:装一次之后,npm 上的 Pi 扩展原包经 `dsh plugin add <pi-package>` 直接作为 DSH 原生插件挂载。已在官方 DSH 上端到端验证 pi-mcp-adapter(完整 MCP 管理面:OAuth、resources、prompts、MCP Apps、elicitation、sampling)、@tintinweb/pi-subagents、pi-code、pi-hermes-memory、pi-background-tasks;`pi2dsh inspect` 在安装前报告一个包的兼容情况。
fn-os-apps#dsh-fnos-plugin
把 DeepSeek Harness 接进飞牛 fnOS:DSH 界面跑在 fnOS 应用框架里时通过 fnOS 浏览器 SDK 工作——DSH 设为跟随系统时读取并跟随 NAS 主题,在设置里列出和取消已授权的 NAS 目录,把文件与链接交给对应的 fnOS 应用打开,并把 DSH 页面标题同步到 fnOS 应用窗口。npm 安装:`dsh plugin --profile web add @tnnevol/dsh-fnos`。
my-dsh-plugins#dsh-my-guardian
插件治理:新装/更新插件先进候选区,启动完成后热挂载——成功自动转正,失败自动禁用,连续失败冻结,一键安全模式,侧边栏诊断面板(npm: `dsh-my-guardian`)。
dsh-ballute
已装插件的崩溃防护:崩溃卡片一键停用、静态预检、黑匣子遥测,以及救援损坏 UI 的安全模式 profile。