Repository navigation
v0.2.1 — 提问卡片、可调宽度、ZIP 导入带图片
首个 GitHub Release。dsh-chat-export 之前只在 npm 上发过,这次把仓库和产物对齐到同一版本。
新增
提问卡片 — ask_user_question 不再是一坨 JSON。导出的 HTML / Markdown 里会变成一张卡片:问题正文、每个选项及其说明、以及你实际选中的那条(高亮 + ✓ 已选),默认展开。
阅读宽度可调 — HTML 顶栏一个按钮,在「标准 900 / 宽 1120 / 超宽 1360 / 全宽」之间循环切换,选择记在本机浏览器里。不再固定 900px 一条窄栏。
对话框记住上次的选项 — 格式、范围、内容开关、输出方式会沿用上一次;目录、选中的文件和预览仍按会话重置。
ZIP 导入带图片写回 — 导出 ZIP 时附带 assets.json(文件 → attachmentId 映射);导入 .zip 时把 assets/ 里的图片写回附件库并重连事件里的引用,所以跨机器也能把图带回来。ZIP 读取器是自研的(EOCD 扫描 → 中央目录 → inflateRawSync → 大小与 CRC 校验),没有引入依赖。
拖拽导入 — 导入 tab 整块都是投放区,虚线框替代了原生文件选择器。
修复
工具输出被丢掉 — 提取工具结果时只认 tool-result 块,但当前日志把结果存成普通 text 块。在参考机器上 1340 条结果里只有 87 条是旧格式,也就是说约 94% 的工具输出在导出时静默丢失,表现就是工具卡片显示「结果 0 行」。两种形状现在都能读。
安装
dsh plugin --profile web add dsh-chat-export@0.2.1或从仓库直接装:
dsh plugin --profile web add github:DDDMUC/dsh-chat-export验证
npm test — 12 个文件、335 条测试全过。导出产物用真实会话(含两次真实提问)跑过一遍,并用 headless 浏览器渲染核对。