前言¶
在 DeepSeek Harness(DSH)里跑完一段对话后,你往往还需要把内容留档、贴进笔记,或交给另一个模型继续处理。DSH 自带的 /export 会下载会话日志 ZIP,里面是 JSONL 和附件,适合备份和排障,但人眼很难直接读。若目标是「只要对话、能进 Obsidian / Notion / 飞书」的那份文本,就需要另一条导出路径。下面介绍社区客户端插件 dsh-session-md-export(维护者 yunfong),它把当前会话一键转成只含对话的 Markdown 文件。
这是什么¶
dsh-session-md-export 是 DSH 的客户端插件,npm 包名同为 dsh-session-md-export,源码在 GitHub。一句话定位:把 DeepSeek Harness 会话一键导出成可读的 Markdown,仅保留对话,不保留工具调用、工具输出、思考过程等噪声(README 英文摘要:dialogue only, no tool noise)。
插件归类为客户端,在 Web 界面注入会话标题栏按钮,并注册 /md 命令与下载路由;与 DSH「一切皆插件」的扩展方式一致。社区目录页见 SkillHub(独立站点,与 DeepSeek / 幻方无官方从属关系)。
核心功能¶
导出结果面向阅读与二次使用,不是完整会话备份。
| 保留 | 丢弃 |
|---|---|
| 用户消息正文 | 工具调用与工具结果 |
| 助手正文 | 思考过程(reasoning) |
ask_user_question 的问答 |
系统提示、注入的运行时上下文 |
| 压缩点标记 | 命令、任务、重试等日志事件 |
ask_user_question 是例外:回答只出现在工具结果里,但语义上是用户说的话,插件会按「问题短标签:答案」还原成用户发言,避免记录失真。
生成的 Markdown 结构包括:以用户首条消息为文档标题、引用块中的会话名与时间戳、以及用 👤 用户 / 🤖 助手 区分的轮次。完整样例见仓库 docs/sample.md;为何不做 frontmatter、工具摘要或 full 档等设计取舍见 docs/design.md。
下载文件名格式为 <会话标题>-<yyyyMMdd-HHmm>.md;中文标题使用 RFC 5987 编码,避免乱码。
安装与启用¶
先做 CLI 安装(README 原文命令,profile 为 desktop):
dsh plugin --profile desktop add dsh-session-md-export
或在 DSH 里打开「插件 → 添加插件」,输入包名 dsh-session-md-export,重启后生效。
兼容性(来自 README 与 package.json 的 engines.dsh):
- 需要 DSH
>=0.2.1-rc.3且<0.3.0(package.json 中为<0.3.0-0)。 - 会话头部的下载按钮仅在 Web 界面提供;命令与下载路由同样只在 Web 载体上注册。
安装前建议自行查看 仓库源码 与 MIT 许可证。插件以当前 DSH 进程权限运行,添加第三方插件前应确认来源与许可。
典型用法¶
两种方式,行为一致:
- 会话头部按钮:在会话标题栏最右侧点击下载图标,浏览器直接下载
.md文件。 - 斜杠命令:在输入框输入
/md,触发同一路由的导出。
经过上面的步骤,你得到的是「对话版」Markdown,而不是 /export 的 ZIP 日志包。
适用场景与注意¶
适合谁
- 要把 DSH 对话整理进笔记或文档协作工具、或作为上下文喂给其它模型,且不需要工具链细节的人。
- 只需要可读 transcript,不需要 JSONL 级排障数据的人。
务必注意
- 导出的 Markdown 忠实保留你在会话里输入过的全部内容,可能含密钥或内部信息;对外分享前请自查。
- 向仓库提 issue 时,请勿附带真实会话的导出文件或日志;复现问题请用合成数据(项目测试使用
test/fixture.jsonl即属此类)。
当前 npm 版本为 0.1.0(见 package.json);GitHub 星标数为 1(目录页与线索一致,仅作规模参考,不代表质量结论)。
结尾¶
若你的痛点是「ZIP 日志能备份但不能读」,dsh-session-md-export 补的是可读 Markdown 这一条腿:Web 里点下载或敲 /md 即可。更多信息见 SkillHub 目录页 与 GitHub 仓库。