dsh-clock:DeepSeek Harness 的日曆與喚醒插件

前言

DeepSeek Harness (DSH) 的調度功能通常僅限於當前對話會話。當會話關閉後,提醒會一直掛起,直到有人重新打開該會話。這導致無法在特定時間點喚醒長流程任務,也無法在非活躍狀態下觸發自動化檢查。

dsh-clock 插件填補了這一空白。它提供日曆和時鐘功能,允許在選定瞬間喚醒指定的對話。無論該對話當前是否處於關閉狀態,系統都會注入準確的系統時間和時間漂移,並在消息中明確標註喚醒是否遲到。

功能概覽

  • 喚醒對話:通過關鍵詞在指定時間喚醒對話,即使對話處於關閉狀態。
  • 時間與漂移注入:在喚醒消息中包含計劃時間、實際時間、時間漂移和遲到警告。
  • Agent 工具與技能:提供 clock 工具供 Agent 調用(set, now, list, cancel),並內置 clock 技能以輔助對話。
  • 多層級定時:結合進程內定時器、Windows 任務計劃程序鏡像以及主機啓動時的追趕重放,確保定時準確。
  • 日曆面板:提供可視化的日曆和時鐘面板,支持直接在日曆上創建提醒。
  • 分支處理:支持對話分支,在創建分支時提示覆制警報以防止遺漏。
  • 漂移容忍度:對於 60 秒以內的遲到,仍標記爲“準時”。

安裝與啓用

在插件目錄下執行以下命令完成安裝與構建:

npm install
npm run build
dsh plugin --profile web add link:<this-directory>

或者直接通過 Git URL 安裝:

dsh plugin --profile web add <git-url>

安裝完成後,重啓 DeepSeek Harness Web 服務,側邊欄底部的“日曆”按鈕將出現,點擊即可打開插件面板。

使用方式

通過 Agent 工具

Agent 可以直接調用 clock 工具來管理提醒。支持的參數包括:

  • 設置延遲提醒:在當前時間後 N 秒喚醒。
  • 設置精確時間提醒:在特定時間點(UTC 或指定時區)喚醒。
  • 查詢與取消:查詢當前時間、列出待辦提醒或取消特定提醒。

示例:

// 設置延遲提醒
{
  "action": "set",
  "afterSeconds": 2700,
  "keyword": "check the build",
  "note": "the release job should be done by now"
}

// 設置精確時間提醒(指定時區)
{
  "action": "set",
  "at": "2026-09-11T09:30:00+08:00",
  "keyword": "standup",
  "sessionId": "session-...",
  "timeZone": "Asia/Shanghai"
}

// 查詢當前時間
{ "action": "now" }

// 列出待辦
{ "action": "list" }

// 取消提醒
{ "action": "cancel", "id": "a-..." }

通過日曆面板

  1. 在側邊欄點擊“日曆”按鈕打開面板。
  2. 點擊具體日期,在日曆視圖上輸入時間、關鍵詞,並選擇目標對話。
  3. 點擊按鈕確認創建。
  4. 面板會自動區分“待處理”和“已觸發”的提醒,支持編輯(僅限待處理)、立即觸發、取消或刪除操作。

技術實現細節

該插件採用三層定時機制來保證喚醒的可靠性:

  1. 進程內定時器:處理常規情況,維護最早待處理提醒。
  2. Windows 任務計劃程序:處理機器睡眠或主機掛起的情況,支持 StartWhenAvailable 和 wakeComputer(需配置)。
  3. 追趕重放:當主機未運行時,在啓動時自動檢查並補發所有遺漏的喚醒消息。

所有觸發均採用 Claim-then-Delivery(聲明後交付)模式,避免重複發送。系統會保留已觸發的提醒 7 天,以便追溯。

注意事項

  • 運行依賴:喚醒功能需要 DeepSeek Harness 主機進程正在運行,這不是推送通知,無法在主機關閉時通過外部方式觸達。
  • 一次性提醒:目前僅支持一次性提醒,暫不支持循環任務。
  • 任務名稱衝突:Windows 任務計劃程序中存在一個名爲 dsh-clock-wake 的共享任務,同一臺機器上的多個 Host 實例會共用該任務名稱。
  • 面板主題:日曆面板爲浮動層,不支持通過 Shell 插槽進行主題化配置。

總結

dsh-clock 通過注入時間信息和漂移計算,解決了 DeepSeek Harness 在會話外無法可靠定時喚醒的問題。結合 Agent 工具與日曆面板,它能夠幫助開發者在長流程任務中實現精準的定時介入。

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

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

小夜