在 DeepSeek Harness (DSH) 環境中,記錄會話相對容易,但梳理一天的工作軌跡並生成總結卻缺乏標準工具。dayreel 旨在解決這一問題,它將一天流經 DSH 的對話記錄轉化爲一份設計感的日報,並進一步渲染爲帶旁白的總結視頻。
插件簡介¶
dayreel 是一個社區插件,由 peikuo 維護,採用 MIT 許可證。它全棧基於 TypeScript/Node.js,無 Python 依賴。其核心價值在於自動化生成工作內容文檔與視頻摘要,幫助用戶直觀回顧當日工作。
核心能力¶
dayreel 通過兩個 runtime skill 和一組工具實現上述功能:
- 兩個 runtime skill:
dayreel-content:負責收集事實、編寫內容文檔(包含工作主線 IR 和當日元數據),並確定性渲染出 HTML/Markdown 格式的日報。dayreel-render:將內容文檔投影爲 typed 場景,渲染成 MP4 視頻,並持續播報進度。
- 核心工具:
fetch_today_recap:獲取跨會話的當日摘要,包含按各會話實際模型的費用估算。fetch_session_detail:按需鑽取單會話的詳細日誌。dayreel_report:生成日報(HTML/MD),支持force參數強制修訂重生成。dayreel_render:異步啓動視頻渲染。dayreel_status:輪詢渲染進度,完成後返回可播放 URL。
- 內嵌播放器:客戶端半區註冊了
<video>播放器卡片。渲染完成後,視頻可直接在工具調用行中出現,無需複製 URL。
安裝¶
使用官方安裝命令添加插件:
dsh plugin add github:peikuo/dayreel
使用流程¶
在 DSH 的 Web UI 中,只需對模型說「生成今天的總結視頻」,流程即自動啓動:
- 內容生成:模型加載
dayreel-contentskill,調用fetch_today_recap獲取跨會話當日摘要(自動排除當前對話),必要時調用fetch_session_detail獲取細節,最終通過dayreel_report輸出日報。 - 視頻渲染:模型加載
dayreel-renderskill,調用dayreel_render啓動視頻渲染。 - 進度監控:模型循環調用
dayreel_status,通過旁白播報進度條(i/n -> Remotion %),直到完成。 - 獲取結果:完成後,模型返回可播放 URL (
http://127.0.0.1:<port>/dayreel/<日期>/<序號>/recap.mp4) 及本地路徑。
成本優化與模型選路¶
日報撰寫與視頻渲染不需要使用旗艦模型。插件通過 dayreel_author 工具進行模型選路,不依賴模型的自覺性。
- 選路邏輯:菜單即環境裏配置的 LLM 目錄。用戶點名(
agent參數)直接路由;有記憶偏好直接使用;目錄僅一個時直接使用;否則彈窗詢問。 - 配置項:
fork:可選,設爲true時子代理繼承當前對話的完整歷史(截至上一個完整 turn);默認爲spawn。defaultModel:可選,兜底模型 ID,無交互時使用。
- 記憶機制:偏好保存在插件輸出目錄的
preferences.json中。 - 限制:外部 CLI 子代理(如 codex)無法調用這些工具。
依賴與限制¶
- 依賴:
msedge-tts:用於旁白(純 Node,使用微軟 Edge 語音)。Remotion + ffmpeg:用於視頻渲染(需在 PATH 中配置 ffmpeg)。
- 數據範圍:會話摘要僅覆蓋今天與昨天。更早的日期屬於 Tier 2 功能(未實現),請求更早日期會被工具拒絕。
- 資產版權:背景音樂由 AI 生成(Gemini),項目持有使用與分發權利。
配置項¶
在插件配置中,開發者可以調整以下選項:
- id: dayreel
name: dayreel
config:
fork: true # 是否繼承當前對話上下文
defaultModel: deepseek-v4-flash # 默認模型,無交互時兜底
結語¶
dayreel 通過標準化的工作流,將 DSH 的工作記錄轉化爲可讀的日報和可觀看的視頻,降低了回顧工作的門檻。更多細節與源碼,請訪問 GitHub 倉庫。