前言¶
DeepSeek Harness (DSH) 强调插件化架构,开发者需要通过插件扩展核心能力。在开发与调试智能体时,获取可审计、可复现的会话证据是常见需求。官方 /export 命令通常仅提供原始日志下载,格式单一且缺乏可读性。dsh-session-export 作为一个插件,直接读取 ctx.sessionQuery,绕过了传统录音机式的数据采集方式,为 DSH 提供了确定性的会话证据层。
插件定位¶
dsh-session-export 是一个会话证据层插件,由开发者 kittimzhe 维护,采用 MIT 许可证。
它不承担记忆优化或上下文压缩的任务,而是专注于三个方向:
* 审计性:记录发生了什么、按何种顺序、伴随何种失败。
* 可复现性:生成稳定的输出文件(HTML/Markdown/JSON)和便携的报告。
* 操作性:支持批量归档、主机路径持久化以及终端实时统计。
核心功能¶
该插件不依赖驻留内存或额外的记录器,避免了数据漂移风险,支持读取 canonical session log。
- 会话导出
通过ctx.sessionQuery读取会话。支持导出为单文件 HTML、Markdown 或 JSON。HTML 报告包含 KPI 卡片、回合时间轴、工具调用排名、错误高亮及深色/浅色主题。 - 终端统计
提供/stats命令,在终端打印统计卡片,包含消息数、回合数、耗时、Token 消耗、成本估算及工具排名。 - 会话归档
提供/archive命令,将当前会话(含子代理)打包为 ZIP 文件。 - 差异对比
提供/diff <id1> <id2>命令,对比两个会话的差异(共同前缀、独特尾部、统计增量)。 - 审查打包
提供/bundle命令,生成包含转写报告、原始归档和证据清单的 ZIP 包,便于审计流程。 - 全历史记录
支持导出安装该插件之前的会话历史。
安装与启用¶
通过 npm 安装该插件包:
npm install dsh-session-export
安装后,需在 DSH 的插件配置中启用该模块,使其作为 ctx.commands 暴露命令。
典型用法¶
插件提供了四个核心命令,均在人类指令层运行,不会进入模型历史,也不消耗 Token。
- 导出当前会话
默认导出 Markdown 文本:
/transcript
生成 HTML 样式报告(支持打印 PDF、深色模式):
/transcript --html
- 查看统计
在终端打印会话统计卡片:
/stats
- 归档会话
将当前会话打包为 ZIP:
/archive
- 对比会话
对比两个会话的差异:
/diff <id1> <id2>
- 生成审查包
生成包含脱敏信息和证据清单的打包文件:
/bundle --mask --manifest
适用场景与注意¶
- 适用场景:需要深度审查对话质量、排查工具调用失败原因、生成合规审计报告或进行对话回溯的开发者。
- 技术注意:插件以当前 DSH 进程权限运行,不支持模型直接写入文件(除非开启工具暴露模式)。安装前建议检查源码与许可证(MIT)。