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
羽毛球分组比赛记分
小程序二维码

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

小夜