前言¶
在 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) 用于查询 idle、running 或 offline 状态及暂停信息。
状态保存¶
暂停状态保存在:
~/.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") 获取任务控制服务,再调用 pause、resume、cancel、state。
适用场景与注意¶
适合以下情况:
- 长任务、迁移、测试中需要临时暂停。
- 希望更快暂停,而不是等待所有工具自然完成。
- 需要紧急停止任务。
- 希望从暂停点继续,而不是重新执行已完成的工作。
- 其他插件需要查询或控制当前任务状态。
注意以下事项:
- 插件以当前 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 / 幻方无官方从属关系,不应视为官方应用商店。