dsh-plugin-session-export:DeepSeek Harness 会话黑匣子插件

前言

DeepSeek Harness(DSH)的理念是「一切皆插件」。在智能体开发中,调试往往面临信息缺失的问题:我们只能看到输入和最终输出,却无法追踪中间的思考过程、工具调用链或报错原因。

dsh-plugin-session-export 是 zhaoxuejie 维护的插件,属于「记忆」分类。它通过旁路监听的方式采集会话事件,不干扰 Agent 的正常运行。在需要复盘、调试或分享工作流时,它可以一键生成结构化的复盘报告。

安装与启用

前置条件

  • DeepSeek Harness(dsh)已安装并可运行。
  • Node.js >= 18。

步骤

  1. 获取插件
    git clone https://github.com/zhaoxuejie/dsh-plugin-session-export.git
  1. 在 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"]
        }
      }
    }
  1. 安装依赖
    cd ~/.dsh/profiles/<profile-name>
    pnpm install
  1. 重启 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

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

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

小夜