前言¶
DeepSeek Harness (DSH) 依託插件系統擴展功能。在開發或日常使用中,針對特定場景(如定期數據檢查、自動報告生成)的重複性操作,手動執行效率低下。dsh-knj-scheduler 插件解決了這個問題,它允許用戶通過 Cron 表達式或其他觸發方式,自動啓動提示詞會話或 KNJ 工作流任務。
插件簡介¶
dsh-knj-scheduler 是一個定時任務調度器插件。它解決了自動化執行的需求,支持按計劃啓動會話或工作流任務。該插件由 yangdongzhen590 維護,開源協議爲 MIT。
核心功能¶
- 自動觸發:支持按 Cron 表達式、指定時間(一次性)或間隔分鐘數自動啓動提示詞會話或 KNJ 工作流任務。
- 面板入口:左側欄提供「更多 → 調度器」入口(依賴
dsh-knj-menu插件)。 - 雙頁籤與分頁:面板包含「任務列表」與「執行記錄」雙頁籤,均支持 10/25/50/100 條/頁的分頁顯示。
- 工作目錄配置:支持配置工作目錄,提示詞會話可指定工作區,工作流任務必須指定。
- 集成 KNJ 工作流:可選集成
dsh-knj-workflow,支持文件入參按路徑引用。 - 狀態與歷史:記錄執行狀態(成功/失敗/跳過)及耗時。執行歷史保留上限 500 條。
- 持久化:任務定義持久化於 profile 目錄,重啓後自動恢復。
安裝與啓用¶
安裝該插件需要同時安裝 dsh-scheduler 核心包及 dsh-knj-menu 依賴。
dsh plugin --profile web add dsh-scheduler dsh-knj-menu
典型用法¶
- 打開面板:在左側欄底部點擊「更多 → 調度器」。
- 創建任務:
- 點擊「新建任務」。
- 選擇任務類型:「提示詞會話」或「KNJ 工作流」。
- 填寫相關字段:提示詞、工作流、標題、工作目錄及文件入參路徑(工作流模式下必填)。
- 調度執行:保存任務後,系統將按計劃自動調度;提示詞模式創建會話,工作流模式通過
dsh-knj-workflow啓動流程任務。 - 任務管理:對任務行進行編輯、啓停、立即執行、查看歷史或刪除操作。
- 查看詳情:
- 在「執行記錄」中,提示詞任務點擊「打開會話」。
- 工作流任務點擊「查看流程任務」直達流程運行詳情。
注意事項¶
- 安全校驗:寫操作僅接受同源 POST/PUT/DELETE(Origin 與 Host 校驗),任務定義寫前需校驗各項參數,採用原子寫入。
- 文件入參:文件入參只校驗形狀,不校驗路徑存在性(由
dsh-knj-workflow啓動前校驗)。 - 歷史記錄:執行歷史僅記錄狀態/耗時/會話 ID 或工作流任務 ID,不記錄提示詞原文與會話內容。
- 併發控制:任務執行消耗模型額度,默認不併發執行(防重入),若上一次未結束,本次觸發將自動跳過。
- 數據位置:
- 任務定義:
$DSH_HOME/profiles/<profile>/dsh-scheduler/tasks.json - 執行歷史:
$DSH_HOME/profiles/<profile>/dsh-scheduler/history.l
- 任務定義:
結語¶
dsh-knj-scheduler 通過 Cron 調度與持久化配置,爲 DSH 提供了自動化執行能力。開發者可通過配置工作流和會話,實現後臺任務的自動化。更多細節可查閱 GitHub 倉庫。