DSH / PLUGIN / SESSIONS

dsh-session-log-export

v0.1.0-rc.5deepseek-ai / deepseek-harness47f943859b

DSH 已内置插件会话与上下文内置源码Web UI
运行时构成
HOSTCLIENTUITOOLDATAFLOW

概览

dsh-session-log-export

Web Session 日志下载控制,使用 dsh-host-apiproxy 拥有的 Host 流式 ZIP 端点。Host 半包注册 /export;浏览器半包在 Session Header 中提供 111×32 的 Session log 操作,以及一个供该按钮与斜杠命令共用的下载控制器和弹窗。ZIP 生成、原始 JSONL/zstd 读取、子 Session、附件、背压和 HTTP 错误语义仍由 ApiProxy 下载实现负责。
BUILT-IN / ATOMIC
已随 DSH 提供,无需单独安装

这是 Harness 已内置的原子模块,不是可独立激活的 Profile 层。

能力

它贡献了什么

HostCordis loadableZero-config
Client / UIWeb UI0 contributions
Model tools0None declared
Profile stateenabledweb

README / ZH

插件文档

@deepseek-ai/dsh-session-log-export

English | 中文

Web Session 日志下载控制,使用 dsh-host-apiproxy 拥有的 Host 流式 ZIP 端点。Host 半包注册 /export;浏览器半包在 Session Header 中提供 111×32 的 Session log 操作,以及一个供该按钮与斜杠命令共用的下载控制器和弹窗。ZIP 生成、原始 JSONL/zstd 读取、子 Session、附件、背压和 HTTP 错误语义仍由 ApiProxy 下载实现负责。

命令约定

输入 结果
/export 记录一组用户命令生命周期;提交命令的浏览器收到本地执行确认后,下载 GET /api/session.export?sessionId=<id>&includeDescendants=true
/export <path> 返回错误。浏览器下载通过浏览器的普通下载行为选择目标位置。

该命令只由 Web bundle 挂载。只有 /export 返回成功时,本地 command/executed 确认才会在提交命令的浏览器中触发斜杠下载;其他标签页仍会渲染持久命令行,但不会重复执行浏览器副作用。Header 按钮直接调用同一个控制器。两种入口都会先发出 HEAD 预检,再把 GET URL 交给浏览器下载管理器,JavaScript 不会缓冲 ZIP;它们共用并发折叠、插件释放时取消预检、准备阶段错误处理、浏览器保存行为和同一个 Modal。

Host 下载端点会在 readRaw 前 flush 活动的根 Session,因此斜杠命令触发的 ZIP 会包含启动下载的 command/runcommand/done 事件对。冷持久化 Session 不需要 flush。

弹窗报告准备中、开始下载或失败。关闭弹窗不会取消正在进行的下载;该操作随后完成时也不会重新打开弹窗。每个 Session 同时只允许一项下载,重复操作会共用该任务。

组合

- id: session-log-download
  name: '@deepseek-ai/dsh-session-log-export'

Web bundle 将本包与 dsh-host-apiproxydsh-commandsdsh-client-ui-commandsdsh-client-ui-conversation 一起挂载。本包把按钮和弹窗贡献到最右侧的 conversation.session.header.utilities 列表,与标题旁 conversation.session.header.actions 中的模式、Subagent 和 Task 配置项相互独立;Trajectory 不包含导出入口。

模型体验

用户 /export 控制

模型看到什么

无。/export 留在用户命令平面,ZIP 下载不会进入模型历史。

Token 影响

为零。该命令不创建模型轮次。

KV Cache 影响

无。仅日志命令生命周期和浏览器下载不会改变派生请求前缀。

已知限制与暂缓事项

  • 下载端点要求持久化后端具有逐 Session 原始工件。随附 JSONL 后端支持明文和 zstd 工件;本次改动不包含 SQLite 导出。
  • 这是浏览器下载,不是 Host 路径写入。目标位置由浏览器选择,不会返回 Host 路径或原生文件夹操作。
  • 预检只报告 ZIP 开始流式传输前发现的失败。浏览器接受 GET 后发生的子 Session 或附件读取失败由浏览器下载管理器报告,不通过弹窗报告。

LIMITATIONS

已知限制

- 下载端点要求持久化后端具有逐 Session 原始工件。随附 JSONL 后端支持明文和 zstd 工件;本次改动不包含 SQLite 导出。 - 这是浏览器下载,不是 Host 路径写入。目标位置由浏览器选择,不会返回 Host 路径或原生文件夹操作。 - 预检只报告 ZIP 开始流式传输前发现的失败。浏览器接受 GET 后发生的子 Session 或附件读取失败由浏览器下载管理器报告,不通过弹窗报告。