前言¶
在使用 DeepSeek Harness (DSH) 開發 Agent 時,復盤任務執行情況是調試的關鍵。dsh-agent-log 是一個 DSH 插件,它從本機的 DSH 會話日誌裏只讀還原一次任務做了什麼,輸出一份《本次 Agent 工作報告》。報告包含工具調用、命令執行、文件讀寫、測試結果、失敗原因和 Token 消耗。插件完全離線,不需要 API Key,也不修改會話數據。
核心功能¶
插件提供以下能力:
* 從 DSH 會話日誌只讀還原任務
* 生成包含工具調用、命令執行、文件讀寫、測試結果、失敗原因、Token 消耗的詳細報告
* 完全離線,無需 API Key,不修改會話數據
* 提供 CLI 工具用於批量生成日報/週報
* 提供 HTTP 路由接口
* 提供右側邊欄面板查看報告
安裝與啓用¶
命令行 (dsh web)¶
dsh plugin --profile web add github:Neo65536-engineer/dsh-agent-log
--profile 需填入實際使用的 profile(如 web)。安裝後幾秒生效。
桌面版 (DSH Desktop)¶
- 側邊欄打開「插件」,點「添加插件」
- 填入
github:Neo65536-engineer/dsh-agent-log - 點「安裝」
- 裝完點「立即啓用」
- 等幾秒,刷新頁面 (F5)
驗證安裝¶
新開一個對話,讓模型執行:
work_report({})
能出報告即安裝成功。
典型用法¶
1. Agent 工具調用¶
work_report({}) // 復盤當前會話
work_report({ turns: 3 }) // 只看最近 3 輪
work_report({ format: "json" }) // 返回結構化數據
work_report({ out: "reports/task.md" }) // 同時寫入文件
2. 右側邊欄面板¶
右側邊欄「+」→「Agent 工作報告」。提供 7 個頁籤(總覽、工具、命令、文件、測試、失敗、輪次)。支持刷新、下載 HTML/Markdown。
3. 離線 CLI (不裝插件也能用)¶
在倉庫目錄下執行:
node bin/worklog.mjs --list # 列出所有會話
node bin/worklog.mjs --latest # 最近一個會話的報告
node bin/worklog.mjs --period --since today # 生成今日日報
node bin/worklog.mjs <sessionId> --out r.md # 寫入文件
4. HTTP 路由¶
GET /plugins/dsh-agent-log/report?format=json
GET /plugins/dsh-agent-log/report?format=markdown
權限與限制¶
權限¶
- 讀取:
$DSH_HOME/sessions、$DSH_HOME/storages/session_projcache - 寫入:只有顯式傳
out時才寫入指定文件 - 網絡/憑據:不使用,不需要
依賴與兼容性¶
- Node 版本:>= 20
- 運行時依賴:無。不需要
npm install,不需要構建 - DSH 版本:0.1.5-rc.3、0.1.7-rc.1、0.1.7-rc.2
展示限制¶
- 明細表最多列 80 行,JSON 模式可獲取全量
- Windows 上某些管道命令可能因 broken pipe 被計入疑似失敗
注意事項¶
- 桌面版啓用:桌面版安裝後必須點「立即啓用」,否則插件不會加載。
- 數據完整性:明細表默認截斷,完整數據建議使用
format: "json"或查看側邊欄面板。 - 權限檢查:插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。