前言¶
DeepSeek Harness(DSH)的理念是「一切皆插件」。在智能体开发中,调试往往面临信息缺失的问题:我们只能看到输入和最终输出,却无法追踪中间的思考过程、工具调用链或报错原因。
dsh-plugin-session-export 是 zhaoxuejie 维护的插件,属于「记忆」分类。它通过旁路监听的方式采集会话事件,不干扰 Agent 的正常运行。在需要复盘、调试或分享工作流时,它可以一键生成结构化的复盘报告。
安装与启用¶
前置条件¶
- DeepSeek Harness(
dsh)已安装并可运行。 - Node.js >= 18。
步骤¶
- 获取插件
git clone https://github.com/zhaoxuejie/dsh-plugin-session-export.git
- 在 dsh profile 中注册
编辑你的 dsh profile 的package.json(通常位于~/.dsh/profiles/<profile-name>/package.json)。
在dependencies中添加本地 link 依赖,并在dsh.profile.bundles中注册:
{
"dependencies": {
"dsh-plugin-session-export": "link:/path/to/dsh-plugin-session-export"
},
"dsh": {
"profile": {
"bundles": ["dsh-plugin-session-export"]
}
}
}
- 安装依赖
cd ~/.dsh/profiles/<profile-name>
pnpm install
- 重启 dsh
dsh web
启动后,右上角导航栏应出现「会话黑匣子」按钮。
核心功能¶
- 全量事件采集:订阅
session/event,按会话隔离维护事件时间线,覆盖轮次起止、用户输入、模型回复、工具调用/返回、请求报错。 - 快照补录:插件加载后自动补录加载前已发生的事件,避免历史对话丢失。
- 双格式导出:支持导出 Markdown 结构化文本和 HTML 自包含单文件。
- 实时统计:统计轮次数、工具调用分布、总耗时、平均轮次耗时、报错/中断数、Token 用量。
- 智能截断:单条文本超过
maxContentLength会自动截断并标注。 - 敏感脱敏:工具入参中的
api_key、token、password等字段会自动掩码。 - Web 面板:右上角导航栏按钮,展示统计卡片与图表,支持一键导出/清空。
- 配置热更新:
settings服务applies: live,改动即时生效。
使用方法¶
自然语言¶
直接对模型说以下指令:
* 「导出当前会话」
* 「生成复盘报告」
* 「会话统计」
* 「清空会话记录」
工具调用¶
export_session(session?, format?)- 参数:
session(会话 ID,缺省最近活跃)、format(markdown/html/both)。 - 作用:导出当前会话复盘报告。
- 参数:
session_stats(session?)- 参数:
session(缺省返回全部会话概览)。 - 作用:获取会话统计数据。
- 参数:
session_clear(session?)- 参数:
session(缺省清空全部)。 - 作用:清空会话记录。
- 参数:
Web 面板¶
点击右上角「会话黑匣子」按钮,面板展示实时统计卡片、工具调用次数分布条形图以及导出/清空按钮。
配置项与报告结构¶
配置项¶
在 dsh 设置面板中可调整以下配置(支持热更新):
enable(boolean, 默认true):插件总开关。autoRecord(boolean, 默认true):自动旁路采集。maxContentLength(number, 默认2000):单条文本导出最大字符数。includeToolArgs(boolean, 默认true):是否保留工具入参。includeReasoning(boolean, 默认true):是否包含模型思考过程。exportFormat(enum, 默认markdown):工具缺省导出格式。htmlTheme(enum, 默认light):HTML 报告配色主题。maxEventsPerSession(number, 默认500):单会话事件上限。
报告结构¶
导出的报告包含以下内容:
1. 会话概览:ID、起止时间、总耗时、轮次、工具调用、报错、Token 用量。
2. 轮次时间轴:横向可视化每轮耗时与状态。
3. 逐轮复盘:用户输入 → 工具调用链 → 模型回复 → 状态与耗时。
4. 工具调用统计:工具名、调用次数、平均耗时、最长耗时。
5. 报错汇总:时间、轮次、类型、错误消息。
6. 原始事件流:完整采集时间线。
适用场景与注意¶
该插件适合需要详细复盘 Agent 行为的开发者。安装方式为本地 link 依赖,需编辑 profile 的 package.json。请务必检查源码与许可证(MIT)后再在生产环境使用。插件以当前 dsh 进程权限运行,敏感信息会自动掩码。
dsh-plugin-session-export¶
- 仓库:https://github.com/zhaoxuejie/dsh-plugin-session-export
- 作者:zhaoxuejie
- 类别:记忆