前言¶
在使用 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 进程权限运行,安装前应检查源码与许可证。