dsh-report-studio:把 DSH 會話變成可校驗的工作報告

前言

在 DeepSeek Harness(DSH)裏做智能體開發時,一個會話結束後常常需要把結果整理成日報、週報、交接文檔或文章草稿。如果只靠模型在對話裏重新描述,產出往往缺少可覈查依據。

ciceroyang/dsh-report-studio 針對這個問題:它從持久會話事件日誌提取會話事實,生成報告,並在保存時附加可驗證憑據塊。下面介紹它的定位、安裝方式、典型用法和注意事項。

這是什麼

ciceroyang/dsh-report-studio 是一個 DSH 工作流插件。它把一次 DeepSeek Harness 會話整理成可交付報告,支持以下模板類型:

daily
weekly
handoff
article

插件由 ciceroyang 維護,當前狀態爲:

0.1.0, usable

許可證爲:

MIT

插件跟隨 Harness developer preview,接口可能變化。

它是純 ESM,無構建步驟,可通過 dsh plugin 安裝,或使用 --patch overlay 加載。

模板與數據提取

插件提供 4 個內置模板:

daily
weekly
handoff
article

報告數據不是讓模型重新回憶,而是從持久會話事件日誌確定性提取。可提取內容包括:

用戶請求
todo 快照
turn/step 統計
token ledger
工具調用
生成文件
shell 命令
錯誤與 blocks

插件不讀取模型記憶。

如果不想使用內置模板,可以指定自定義模板目錄來覆蓋內置模板,配置項爲:

templatesDirs

憑據與校驗

保存報告時,插件會追加可驗證憑據塊。憑據塊包含:

會話
工作區
生成時間
報告 SHA-256
產物 SHA-256

保存後,可以使用獨立校驗工具:

report_verify

report_verify 會重新計算報告 SHA-256 和產物哈希,並逐項報告匹配、缺失情況。它支持單文件校驗,也支持目錄批量校驗。

保存

報告保存使用:

report_save

它會把報告寫入文件,並自動追加憑據塊。

保存時可以選擇輸出格式:

md
html

html 輸出可獨立轉發,並會嵌入原始 Markdown 源塊,以便後續繼續使用:

report_verify

進行校驗。

默認保存位置爲會話工作區內的:

reports/<kind>-<date>.md

目標路徑被限制在會話工作區,拒絕絕對路徑逃逸和 .. traversal。

發佈

報告發布使用:

report_publish

發佈目標包括:

feishu
notion
dry

其中:

dry

用於預覽 payload,不發送真實消息。

真實發布需要配置 Feishu 或 Notion 憑據。Feishu 可使用插件配置項:

publish.feishuWebhook

或環境變量:

FEISHU_WEBHOOK

Notion 可使用插件配置項:

publish.notionToken
publish.notionParentPageId

或環境變量:

NOTION_TOKEN
NOTION_PARENT_PAGE_ID

缺少真實發布憑據時會明確失敗;dry 模式始終可用。

週報聚合

週報聚合使用:

report_week

它可以聚合當前工作區歷史持久會話與 live session,生成周報草稿。

讀取歷史會話日誌需要:

Node >= 22.15

原因是歷史日誌讀取依賴內置 zstd。舊版 Node 會降級爲僅當前會話。

安裝與啓用

安裝前確認環境滿足:

Node.js >= 18
DeepSeek Harness

使用插件安裝方式時需要 pnpm。安裝命令如下:

dsh plugin --profile web add github:ciceroyang/dsh-report-studio

該命令把插件加入 web profile 對應的 DSH 插件環境。

如果不想引入 pnpm,可以使用本地源碼 --patch overlay 加載。這種方式不需要 pnpm。

典型用法

先讓 agent 生成日報草稿。可以直接對 agent 說:

Write today's work report.

也可以讓它生成交接文檔:

Turn this session into a handoff document for the next person.

如果只想快速得到草稿預覽,可以使用斜槓命令:

/report daily

其他類型也可以使用:

/report weekly
/report handoff
/report article

生成並保存報告時,通常先使用:

report_generate

生成報告草稿,再使用:

report_save

寫入文件並自動追加憑據塊。

保存時可以使用:

format=md
format=html

也可以指定路徑。默認保存位置是:

reports/<kind>-<date>.md

保存後,可以使用:

report_verify

校驗報告憑據。支持按文件校驗,也支持按目錄批量校驗。

發佈到外部渠道時,使用:

report_publish

並指定:

target=feishu
target=notion
target=dry

定時週報

定時週報有兩條路徑。

第一條是使用 Harness 內的調度能力。掛載 dsh-schedule 後,可以使用:

dsh-schedule/schedule_create

然後對 agent 說:

generate my weekly report every Friday 18:00

第二條是直接運行腳本生成周報草稿:

node scripts/auto-weekly.mjs <workspace> --out reports/weekly-auto.md

該腳本會聚合本週會話並生成帶待寫槽位的週報草稿。

適用場景與注意

這個插件適合需要把 DSH 會話結果整理成日報、週報、交接文檔或文章草稿的團隊和個人。

使用前注意以下事項:

  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
  • 插件持久化使用 Node fs 直接寫入,位於 Harness fs 策略層之外;路徑逃逸保護在插件內部。
  • 報告工具要求 agent-bound session,web 和 headless 均可。
  • report_week 讀取歷史會話日誌需要 Node >= 22.15;舊版 Node 會降級爲僅當前會話。
  • 插件狀態是 0.1.0, usable,跟隨 Harness developer preview,接口可能變化。
  • 保存目標路徑被限制在會話工作區,拒絕絕對路徑逃逸和 .. traversal。

鏈接

目錄頁:ciceroyang/dsh-report-studio

GitHub:ciceroyang/dsh-report-studio

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

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

小夜