dsh-tick:在 DSH 会话内安排定时任务

前言

在 DeepSeek Harness(DSH)里做长会话或自动化工作流时,常见需求是「过一会儿再让模型做某件事」:例如几分钟后检查构建队列、到固定时刻汇总当天改动、或按间隔反复看一眼部署状态。若每次靠人记时间再手动发消息,容易漏掉,也不利于把节奏交给助手执行。

DSH 生态里还有宿主级的 dsh-schedule 等能力,侧重跨会话、可唤醒冷会话的持久提醒。若你只想在当前会话里到点注入一段提示词、由模型接着干活,且任务状态不串到其他会话,就需要会话内的定时层。dsh-tick 面向的正是这一场景。

这是什么

dsh-tick(维护者 Saretheya)是 DSH 的 Web 侧插件,分类为工作流 / 自动化。到设定时间后,它向当前会话注入你预先写好的提示词,唤醒模型执行;任务数据存在插件自有目录,不会写入 DSH 会话日志的自定义事件,也不会占用官方 dsh-schedule 的定位。

一句话:说一次「什么时候做什么」,到点会话内自动触发,不必另开会话。

核心功能

三种定时模式

模式 典型说法 行为
延迟 「2 分钟后检查构建队列」 倒计时结束后执行一次
固定时刻 「今天 23:00 汇总工作」 到该时刻执行一次
重复 「每 30 分钟看一眼部署」 按间隔反复触发,直到暂停或删除

资料中的约束:延迟最长 30 天(超出会被拒绝,需改用固定时刻);重复周期不设上限。时长写法支持 s / m / h(如 +30m、+2h30m),也支持中文「秒 / 分钟 / 小时」;不支持 d(天),更长等待请用固定时刻或 h(如 +48h)。

三条管理路径

同一批任务可用以下方式管理:

  1. 输入框上方的面板(showDock 默认开启):查看剩余时间,暂停、编辑、删除;
  2. /schedule 命令:在聊天框直接创建与列表;
  3. 模型侧工具:助手可创建、查询、暂停、删除任务(受 allowAiCreate 等配置约束)。

注入消息会标记为插件来源,与会话里用户发言区分;界面语言跟随 DSH 设置,与注入给模型的提示词语言(serverPromptLanguage)相互独立。

计时与生命周期

  • 暂停 / 恢复会冻结剩余时间:暂停时还剩 4 分钟,次日恢复仍等 4 分钟,不会因过夜立刻触发。
  • DSH 关闭时,延迟与重复模式的计时冻结;重开后相关任务多为已暂停,不会在无人值守时突然注入。固定时刻任务若在关闭期间已过点,会标记为已超时,点播放即「立即执行」。
  • 不补跑历史:关闭期间错过的重复轮次不会重开 DSH 后补执行。
  • 侧栏底部可开启跨会话汇总(showSidebarSummary,默认关),显示待执行 / 已超时总数;会话列表行内无官方 slot,插件不提供行内图标(README 有说明)。

安装与启用

需要 DSH 0.1.5-rc.2 及以上(README 标明 0.1.5 与 0.2.0 均已实测)。插件不修改 settings.yaml,卸载随插件目录移除。

在终端执行:

dsh plugin --profile web add dsh-tick

装好后重启 DSH 即可。当前 npm 包版本为 1.0.2,许可证 MIT。

典型用法

/schedule 示例

下面命令来自项目 README,可直接在会话中复现:

/schedule +30m 检查构建队列
/schedule +2h30m 汇总今天的改动
/schedule every 10m 看一眼部署状态
/schedule @2026-09-21T09:00:00+08:00 早会前汇总未完成项
/schedule list

配置文件

配置位于插件自身目录(不写进 DSH 的 settings.yaml),改完即生效,无需重启。默认值偏保守,可按习惯调大:

{
  "serverPromptLanguage": "en",
  "maxTasksPerSession": 50,
  "maxActivePerSession": 10,
  "maxInjectionsPerMinute": 1,
  "heartbeatMs": 15000,
  "graceMs": 60000,
  "showDock": true,
  "showSidebarSummary": false,
  "allowAiCreate": true
}

serverPromptLanguage 可取 "en"(默认)、"zh" 或 "custom"(自定义模板)。默认每分钟最多注入 1 次(maxInjectionsPerMinute),若重复间隔更短会被限流,需相应调大该值。

适用场景与注意

适合谁:需要在单次 DSH 会话内做延迟提醒、定点汇总、周期巡检的开发者;希望用自然语言或 /schedule 建任务,并用面板或模型工具统一管理的场景。

与官方定时的边界:dsh-tick 是会话内任务;官方 dsh-schedule 是宿主级、跨会话提醒。两者可同时安装,但会面对两套系统,使用前建议弄清各自定位。

运行与安全:插件以当前 DSH 进程权限运行,会向会话注入提示词并暴露 Web 管理面与模型工具。安装前应阅读 GitHub 源码 与 MIT 许可证,确认 maxTasksPerSession、allowAiCreate 等「三道闸」是否符合你的信任边界。

已知限制(摘自 README):延迟与重复依赖 DSH 保持运行 才能按真实时间推进;周期任务在 DSH 关闭期间计时会冻结;不支持用 d 表示天数。

结尾

dsh-tick 把「延迟 / 定点 / 周期」三种定时收进当前会话,配合面板、/schedule 与模型工具,适合把「到点再让 AI 做一步」写进工作流而不跨会话串状态。

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

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

Xiaoye