dsh-timer-agent:DSH 定時任務與 Agent 會話插件

前言

在 DSH 的插件化使用方式中,定時任務通常有兩個具體需求:一是希望按 cron 週期自動執行一段寫好的 prompt,而不是每次從頁面手動觸發;二是執行過程最好落在真實 agent 會話裏,保留會話或項目上下文。

dsh-timer-agent 是一個 DSH Web GUI 插件,提供 host 常駐定時任務引擎:dsh web 服務啓動即生效,瀏覽器 GUI 關閉也照常觸發。下面介紹它的功能、安裝方式和需要注意的限制。

這是什麼

dsh-timer-agent 由 LouisHaoL 維護,許可證爲 MIT。它把 5 段 cron 調度、真實 agent 會話執行、模型工具 timer_agent 和 Web GUI 任務面板放在同一個插件裏,用於完成“到點自動執行 prompt,也能到點直接運行命令”的無人值守任務。

核心功能

定時調度

  • 支持 5 段 cron:分、時、日、月、周。
  • 支持 *、*/n、a-b、逗號列表。
  • 提供 cron 預設下拉:每天 09:00、每小時、每 10 分鐘、每週一 09:00。

任務目標

  • 指定已有會話:每次觸發繼續該對話,選中會話即釘住該對話。
  • 指定項目 workdir:在該項目內新建會話運行。
  • 兩者都留空:在默認工作空間新建會話發起新對話。
  • 目標樹選擇器按項目分組,可摺疊,可選已有會話或新增會話。

管理入口

  • Web GUI 側邊欄出現「定時任務」入口,任務面板提供列表、搜索過濾、詳情頁。
  • 詳情頁支持 cron 編輯、執行歷史、跳轉會話 transcript、立即執行、重置、刪除。
  • 對話中可通過 timer_agent 模型工具管理任務,動作包括 create / list / update / pause / resume / archive / restart / remove / run。
  • 插件會註冊 plugin:timer-agent 播報段,向 agent 告知本插件能力與協作方式。

普通命令任務

除 AI Agent 任務外,還支持普通任務(命令):到點直接 spawn 命令+參數,可選工作目錄、超時,不經過 AI、不消耗額度。stdout / stderr 尾部(≤16k 字符)與退出碼隨執行記錄入賬。

安裝與啓用

先獲取插件目錄,再使用本機絕對路徑安裝:

dsh plugin --profile web add link:<本目錄絕對路徑>

安裝後重啓 dsh web。側邊欄出現「定時任務」入口即生效。

典型用法

創建 AI Agent 定時任務

1、在 DSH 對話中調用 timer_agent 工具,使用 create 動作創建任務。

2、填寫 5 段 cron,例如:

0 9 * * *

prompt 必須自包含,不能依賴現場提問。

3、選擇目標:已有會話、項目 workdir,或兩者都留空使用默認工作空間。

4、保存後等待到點觸發,也可以在任務詳情頁使用“立即執行”。

創建普通命令定時任務

1、使用 timer_agent 或 Web GUI 新建普通任務(命令)。

2、填寫命令+參數,必要時指定工作目錄和超時。

3、到點觸發後,執行記錄會保留 stdout / stderr 尾部(≤16k 字符)和退出碼。

適用場景與注意

dsh-timer-agent 適合在受控的本機或私有環境中使用。它適合把自包含的 prompt 定時交給 agent 會話執行,也適合定時運行自己審查過的腳本。

使用前請檢查源碼與許可證。該插件中普通任務會在你的機器上以當前用戶權限執行任意命令,沒有任何沙箱或白名單。API 路由僅迴環 + 同源可訪問,但仍需要注意以下限制:

  • 任何能新建/編輯任務的人、能調用 timer_agent 工具的 agent 會話、能訪問迴環 API 的本機進程,都可能讓任意程序定時運行。
  • 任務臺賬 ~/.dsh/timer-agent/jobs.json 可被篡改即等價於本機任意代碼執行;謹慎使用。
  • 不要把該插件暴露給不可信環境。
  • 定時執行依賴 dsh web 服務進程存活;服務停了不觸發,重啓後只跑已順延到期的任務,錯過即跳過。
  • 任務運行中到點跳過本次,等下一個 cron 匹配點。
  • AI Agent 任務執行消耗 API 額度;定時執行無人在場,prompt 必須自包含、不可提問。

結尾

dsh-timer-agent 的價值在於把 DSH 的定時執行從頁面操作變成 host 常駐引擎,並讓 agent 能在對話中直接創建和管理同一批任務。許可證爲 MIT。

GitHub 倉庫:https://github.com/LouisHaoL/dsh-timer-agent

社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係;本文不附未覈實的目錄頁 URL。

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

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

小夜