dsh-daily-digest:自動沉澱 AI 工作流的日報/週報插件

前言

DeepSeek Harness(DSH)採用插件化架構,擴展功能通常需要編寫獨立的模塊。在日常使用中,記錄會話內容、任務完成情況以及請求錯誤比較繁瑣,容易造成數據遺漏。dsh-daily-digest 插件通過自動記賬與接口封裝,解決了這個問題。

插件簡介

該插件由用戶 zhaoxuejie 維護,採用 MIT 許可證。

核心定位:
自動把「今天和 AI 幹了什麼」沉澱成日報/週報的 DSH 插件。

解決的問題:
- 自動記錄任務(完成/失敗)、會話(標題、輪數、工具、結束狀態)及請求錯誤。
- 避免手動整理工作日誌,通過接口直接獲取 Markdown 或 JSON 格式的報告。

核心功能

  1. 自動記賬
    - 任務:在 DSH 後臺任務系統(jobs)中,當 job 結束(成功或失敗)時記一筆;普通對話回合不計入任務。
    - 會話:新開會話記 startup,打開舊會話續接記 resume(次數);會話明細按 session.id 追蹤。
    - 錯誤:記錄請求錯誤。

  2. 數據落盤
    - 數據按天落盤,存儲路徑在 profile 的 data 目錄下(如 ~/.dsh/profiles/web/data/daily-digest/digest.json),重啓進程不會丟失。

  3. Web 懸浮卡片
    - 重啓 Web 服務後,右下角會出現「📋 今日摘要」懸浮卡片。
    - 卡片提供實時統計、近 7 天趨勢條以及一鍵複製日報/週報的功能。

  4. 接口支持
    - 全部接口返回 JSON 或 Markdown,不依賴前端界面,便於腳本調用。

安裝與啓用

使用前需要確保已安裝 DeepSeek Harness(Node.js 18+)。

  1. 執行安裝命令:
dsh plugin --profile web add dsh-daily-digest
  1. 啓動 Web 服務:
dsh web
  1. 重啓服務後,刷新瀏覽器頁面,右下角應出現「📋 今日摘要」卡片。

更新插件:
當有新版發佈時,重新執行一次 add(或先 remove 再 add)命令,然後重啓 web。

典型用法

  1. 查看實時摘要
    重啓 web 後,直接在網頁右下角查看懸浮卡片。

  2. 調用接口獲取報告
    插件提供了多個 HTTP 接口:
    - GET /daily-digest/today:獲取今日彙總 JSON(含會話明細 sessions.list)。
    - GET /daily-digest/report?date=YYYY-MM-DD:獲取指定日期的 Markdown 日報(缺省今天)。
    - GET /daily-digest/weekly?from=&to=:獲取週報 Markdown(缺省最近 7 天含今天)。
    - GET /daily-digest/week:獲取近 7 天趨勢 JSON(用於卡片柱狀圖)。
    - GET /daily-digest/range?from=&to=:獲取區間聚合 JSON。

  3. 配置參數
    在 ~/.dsh/settings.yaml 中進行配置,支持熱更新:

   dsh-daily-digest:
     enabled: true
     keepDays: 30        # 數據保留天數(1~365)
     recordTools: true   # 隱私開關:是否記錄工具名
     recordLabels: true  # 隱私開關:是否記錄任務名(計數仍保留)

開發與維護

文件結構:
- lib/index.mjs:Node half(記賬、落盤、接口)。
- lib/client.js:Web half(懸浮卡片)。
- assets/:界面預覽截圖資源。

開發提示:
- 修改 Node half 代碼後,需要重啓 web。
- 修改 client half 代碼後,刷新瀏覽器即可。
- 如果安裝形態涉及拷貝(nodeLinker: hoisted),修改代碼後需要 remove + add 重新安裝再重啓。

結語

該插件通過接口暴露數據,方便開發者將其集成到更復雜的工作流中。如需查看插件詳情或提交反饋,請訪問 GitHub 倉庫 或 社區目錄。

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

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

小夜