dsh-reminder:在 DSH 会话里一句话设定时提醒与重复任务

前言

写 DSH(DeepSeek Harness)应用时经常碰到这类需求:对话进行到一半,想让它在 25 分钟后提醒用户喝水;或者每天早上 9 点拉一次站会、每周一 10 点生成周报。DSH 本身没有内置这类调度能力,常见的做法是自己起一个 cron,或者切出去用别的工具记一笔——会话和提醒是割裂的。

dsh-reminder 要解决的就是这个问题:在 DSH 会话内一句话设提醒,后台调度器到点自动触发,不需要离开对话。下面介绍它的功能、安装和用法。

这是什么

dsh-reminder 是一个 DSH 插件(Cordis Bundle),源码在 GitHub 仓库 Komorebi3x3/dsh-reminder,许可证为 MIT,插件自身版本 0.1.0,peer 依赖 @deepseek-ai/dsh-tools

一句话定位:在 DSH(DeepSeek Harness)里创建定时提醒与重复任务,会话内一句话设提醒,后台调度器到点自动触发。

核心功能

1、一句话设提醒。支持相对时间、每天、工作日、每周几、今天/明天、绝对时间等 when 格式,例如 in 25 minutesevery day 21:00every weekday 9:30every monday 10:00tomorrow 9:00today 14:302026-09-01 10:00

2、后台调度器。每 15 秒检查一次,到点把提醒写入到期队列并记录到控制台。

3、重复任务。每天 / 每个工作日 / 每周某天的提醒会自动滚动到下一次。

4、完整管理。支持列出、取消、推迟(snooze)、查看已到期提醒。

5、本地持久化。数据存于 $DSH_HOME/scheduler,重启不丢,全程不上传任何数据。

插件对外提供五个工具:set_reminderlist_reminderscancel_remindersnooze_reminderget_due_reminders

安装与启用

通过 DSH Launcher 的「插件市场」搜索 dsh-reminder,或使用 CLI 从市场安装:

dsh plugin --profile web add dsh-reminder

也可以从源码仓库安装(把 你的用户名 换成你自己的 GitHub 用户名,main 换成对应分支):

dsh plugin --profile web add "github:你的用户名/dsh-reminder#main"

安装后需重启 web 并刷新页面,插件才会生效:

dsh web

用下面两条命令验证插件是否挂载成功:

dsh --profile web --dump-config   # 应能看到 dsh-reminder 这一层
dsh plugin --profile web list

典型用法

在对话中直接说,DSH 会自动调用对应工具:

  • “25 分钟后提醒我喝水” → set_reminder(when:"in 25 minutes", message:"喝水")
  • “每天早上 9 点提醒我站会” → set_reminder(when:"every day 9:00", message:"站会")
  • “每周一 10 点生成周报” → set_reminder(when:"every monday 10:00", message:"生成周报")
  • “列出我的提醒” → list_reminders
  • “我有什么到期的提醒” → get_due_reminders

各工具的职责如下:

工具 说明
set_reminder 创建提醒,返回 id 与下次触发时间
list_reminders 列出所有未完成提醒
cancel_reminder 按 id 取消
snooze_reminder 推迟 N 分钟(推迟后变为一次性)
get_due_reminders 取已到期未确认提醒(clear=true 清空)

注意一点:snooze 推迟之后,提醒会变为一次性,不再按原周期滚动。

实现与兼容性

插件基于 @deepseek-ai/dsh-toolsdefineTool 与 Cordis 的 ctx.tools / ctx.effect API 实现,已在 0.1.0-rc 系列宿主版本验证。时间解析是纯函数,可以单独测试:

node test-time.mjs

本地开发时,README 建议用独立 profile,避免影响 web 生产会话:

git clone <repo> && cd dsh-reminder
dsh plugin --profile plugin-dev add ./dsh-reminder
dsh --profile plugin-dev --dump-config
dsh --profile plugin-dev

需要提醒的是:DeepSeek Harness 处于开发者预览期,迭代极快。升级宿主版本后要重新验证插件;若宿主 API 发生变动,以官方文档为准。建议在你自己的插件文档里固定住验证过的 DSH 版本号。

适用场景与注意

适合的使用者:在 DSH 会话内需要轻量定时提醒和周期任务的人,比如站会提醒、阶段性提醒、每周固定时间触发的例行事项。数据全部落在本地 $DSH_HOME/scheduler,不上传。

两点注意:

1、插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。dsh-reminder 是 MIT 许可,源码公开,安装前可以先读一遍 index.jstime.js 确认行为符合预期。

2、宿主处于预览期,版本升级后插件可能需要重新验证,别默认它在所有宿主版本上都可用。

小结

dsh-reminder 把定时提醒和重复任务收进了 DSH 会话:一句话设定,后台调度器到点触发,管理动作齐全,数据本地留存。对需要在对话流里加轻量调度的场景,是个可以直接装上试的插件。

  • 社区插件目录页:https://www.skillhub.cn/plugins/Komorebi3x3/dsh-reminder
  • GitHub 仓库:https://github.com/Komorebi3x3/dsh-reminder
羽毛球分组比赛记分
小程序二维码

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

小夜