前言¶
在 DSH 中,一次会话结束后,开发者常需要把对话记录拿出来归档、阅读、分享或交给后续流程处理。dsh-session-export 解决的是这个具体问题:把当前 DSH 会话导出成可移植、人类可读的 Markdown,以及结构化 JSON。
它是 DSH 的社区插件,由 bwndlct 维护。DSH 的插件生态方向是「一切皆插件」;社区目录是独立站点,不与 DeepSeek / 幻方构成官方从属关系,也不是官方应用商店。
这是什么¶
bwndlct/dsh-session-export 是一个 DSH 插件,将 DeepSeek Harness(DSH)会话导出为可移植、人类可读的 Markdown 和结构化 JSON 文件。
许可证:MIT。
核心功能¶
下面介绍已核实的几类能力。
两种入口¶
1、session_export() 工具:可让模型执行导出。
2、/session-export 斜杠命令:在 Web UI 中触发导出。
两种格式¶
- Markdown:人类可读的会话导出文件。
- JSON:结构化导出文件,包含
schemaVersion,采用稳定的导出 schema。
顺序与健壮性¶
- 按用户消息、助手消息、工具调用、工具结果的发生顺序还原会话。
- 对未知事件类型、缺失元数据、代码围栏、超大工具结果等做了健壮处理。
- 超过 8,000 字符的工具结果会被截断并标记。
文件名与运行时¶
- 生成跨平台安全的文件名。
- 不会覆盖已有文件;重名导出文件会追加
-1、-2等后缀。 - 运行时零依赖,仅使用 TypeScript 与 Node 内置模块。
安装与启用¶
需要 dsh >= 0.1.0-rc.6。该插件基于 @deepseek-ai/dsh 0.1.0-rc.6(DSH Developer Preview)构建和验证。
1、执行安装命令:
dsh plugin --profile web add dsh-session-export
2、把插件加入当前 profile 的 package.json 的 bundles 列表。配置项形如:
"dsh": {
"profile": {
"bundles": [
"dsh-session-export"
]
}
}
3、重启 dsh。
注意:斜杠命令仅在挂载了 commands 服务的 profile(如 web)中注册;session_export() 工具在所有 profile 下均可使用。
典型用法¶
让模型导出¶
对模型说:
把当前会话导出成 Markdown
Export this session, json only
在 Web UI 中导出¶
/session-export
/session-export markdown
/session-export json
也可以只导出某一格式:
/export-md
/export-json
适用场景与注意¶
适合:
- 需要把当前 DSH 会话留档为 Markdown 或 JSON 的人。
- 需要查看、分享会话记录的人。
- 需要在 Web UI 中用斜杠命令触发导出的人。
注意:
- 插件以当前
dsh进程权限运行,安装前应检查源码与 MIT 许可证。 - 导出文件可能包含敏感数据,本插件不做脱敏处理。
- 斜杠命令需要在挂载 commands 服务的 profile(如
web)中使用。 - 分享导出文件前,请先检查其中可能包含的源代码、工具参数、工具结果和路径等信息。
结尾¶
dsh-session-export 的价值在于把 DSH 会话转成稳定、可读、可携带的 Markdown/JSON 文件,便于后续归档和工具链处理。
GitHub:https://github.com/bwndlct/dsh-session-export。社区目录地址未在本文事实中确认,因此不附具体 URL;可按插件名 dsh-session-export 在 DSH 社区目录检索。