DSH 插件 dsh-task-control:为 DSH Web 增加任务暂停、恢复和取消

前言

在 DSH Web 中跑一个较长任务时,直接取消通常会结束当前回合。如果只是想临时停住、稍后再从当前位置继续,就需要任务暂停、恢复和取消这类更细的控制。

dsh-task-control 为 DSH Web 增加任务暂停、恢复和取消能力。它支持安全暂停与强制暂停,恢复时从暂停点继续,不重复已完成的工作。

这是什么

dsh-task-control 是一个 DSH 插件,仓库地址为 p2coder/dsh-task-control

它面向 DSH Web 的会话任务,主要提供三件事:

  • 暂停当前任务
  • 从暂停点恢复
  • 取消当前回合

当前适配 DSH v0.1.1-rc.2(最新版本)。许可证为 MIT。

核心功能

输入框旁按钮

任务运行时,输入框旁会显示暂停、恢复、取消按钮。

这三个按钮用于控制当前回合:暂停用于临时停住任务,恢复用于从暂停点继续,取消用于终止当前回合。

暂停模式

插件提供三种暂停模式:

  • safe wait:默认模式,等待推理和工具自然完成后暂停。
  • safe stop:工具完成后暂停;可中断当前推理。
  • force:立即中断推理及在途工具。

可在「设置 → 任务控制」中修改默认模式。

斜杠命令

常用斜杠命令如下:

/pause
/pause force
/pause safe wait
/pause safe stop
/resume
/resume confirm rerun
/resume confirm skip
/cancel

其中,/pause 按设置中的默认模式暂停;/pause force 用于强制暂停;/resume confirm rerun 会重新执行被中断或未派发的工具后恢复;/resume confirm skip 会跳过该工具后恢复;/cancel 用于取消当前回合。

供其他插件调用

其他插件可以通过 ctx.get("taskControl") 获取服务,然后调用以下方法:

pause(sessionId, options?)
resume(sessionId, options?)
cancel(sessionId)
state(sessionId)

state(sessionId) 用于查询 idlerunningoffline 状态及暂停信息。

状态保存

暂停状态保存在:

~/.dsh/task-control/

重启后不会丢失。

测试时可用 DSH_TASK_CONTROL_STATE_DIR 修改存储目录。

安装与启用

先安装插件:

dsh plugin --profile web add github:p2coder/dsh-task-control

安装后完整重启 dsh web,然后刷新浏览器页面。

修改插件后也需要重启 dsh web

典型用法

1、任务运行时,点击输入框旁的暂停、恢复、取消按钮。

2、如果想按默认模式暂停,使用:

/pause

3、如果希望立即停止,使用:

/pause force

4、恢复时如果遇到被中断或未派发的工具,可以根据需要选择:

/resume confirm rerun

这会重新执行该工具后恢复。

如果需要跳过该工具后恢复,使用:

/resume confirm skip

5、在「设置 → 任务控制」中修改默认暂停模式。

6、其他插件中可通过 ctx.get("taskControl") 获取任务控制服务,再调用 pauseresumecancelstate

适用场景与注意

适合以下情况:

  • 长任务、迁移、测试中需要临时暂停。
  • 希望更快暂停,而不是等待所有工具自然完成。
  • 需要紧急停止任务。
  • 希望从暂停点继续,而不是重新执行已完成的工作。
  • 其他插件需要查询或控制当前任务状态。

注意以下事项:

  • 插件以当前 dsh 进程权限运行。安装前应检查源码与许可证。
  • 强制暂停时,工具可能已产生部分副作用;恢复前可选择重新执行、跳过或保持暂停。
  • safe wait 的未派发工具,在恢复时需要选择重新执行或跳过。
  • 暂停期间发送新消息会开启新回合;暂停只控制当前回合。
  • dsh-schedule 定时提醒到期后仍会唤醒。
  • 已派发的子代理不会被父任务暂停。
  • 浏览器每 2 秒轮询一次;修改插件后需重启 dsh web

结尾

dsh-task-control 的价值,是把 DSH Web 中“暂停一下、继续执行、取消当前回合”的操作落到按钮、斜杠命令和插件 API 上。安装前,建议先检查仓库源码与 MIT 许可证,再决定是否启用。

仓库地址:

  • GitHub:https://github.com/p2coder/dsh-task-control
  • 目录页:本次已核实资料未给出可用 URL;可搜索 dsh-task-control 查看对应社区目录。

DSH 的插件生态强调“一切皆插件”。社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系,不应视为官方应用商店。

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

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

小夜