前言¶
寫 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 minutes、every day 21:00、every weekday 9:30、every monday 10:00、tomorrow 9:00、today 14:30、2026-09-01 10:00。
2、後臺調度器。每 15 秒檢查一次,到點把提醒寫入到期隊列並記錄到控制檯。
3、重複任務。每天 / 每個工作日 / 每週某天的提醒會自動滾動到下一次。
4、完整管理。支持列出、取消、推遲(snooze)、查看已到期提醒。
5、本地持久化。數據存於 $DSH_HOME/scheduler,重啓不丟,全程不上傳任何數據。
插件對外提供五個工具:set_reminder、list_reminders、cancel_reminder、snooze_reminder、get_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-tools 的 defineTool 與 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.js 和 time.js 確認行爲符合預期。
2、宿主處於預覽期,版本升級後插件可能需要重新驗證,別默認它在所有宿主版本上都可用。
小結¶
dsh-reminder 把定時提醒和重複任務收進了 DSH 會話:一句話設定,後臺調度器到點觸發,管理動作齊全,數據本地留存。對需要在對話流里加輕量調度的場景,是個可以直接裝上試的插件。
- 社區插件目錄頁:https://www.skillhub.cn/plugins/Komorebi3x3/dsh-reminder
- GitHub 倉庫:https://github.com/Komorebi3x3/dsh-reminder