DeepSeek Harness (DSH) 的 Web 会话通常包含调试日志、推理过程或敏感凭证。官方导出的 Session ZIP 文件虽然完整,但体积较大且包含大量元数据。对于代码审查、问题复现或知识传递,开发者往往需要一份更轻量、且经过脱敏处理的结果文档。
dsh-local-share 是一个社区维护的插件,它为 DSH Web 会话头部新增了 Share 操作。该插件允许用户在本地生成 Markdown、自包含 HTML 或长图,且不涉及任何云上传或后端请求,专注于隐私保护。
插件定位¶
- 名称:dsh-local-share
- 维护者:ChuanTianML
- 类别:客户端
- 许可证:MIT
- 状态:开发者预览
核心能力¶
该插件提供以下本地化分享功能:
- 多格式输出:支持将选中的对话回合或整个 Session 导出为 Markdown、自包含 HTML 文件,或长图 PNG。
- 隐私优先:默认不包含工具结果、推理过程、系统提示等元数据;所有生成均在本地浏览器完成,无网络请求。
- 安全渲染:助手文本使用安全的 GitHub Flavored Markdown (GFM) 渲染,人类输入保持原文,防止 XSS 风险。
- 沙箱预览:生成的文档在沙箱
srcdociframe 中预览,并配置了严格的 Content Security Policy,禁止脚本和外部资源。
安装与升级¶
安装前请确保已安装 DSH Home 并配置了 Web Profile。版本 0.4.1 是当前稳定版本。
安装新插件¶
dsh plugin --profile web add dsh-local-share@0.4.1
从旧版 dsh-share 升级¶
版本 0.2.0 及以后使用了独立的包名以避免冲突,需要先移除旧的 dsh-share 插件再安装新版:
dsh plugin --profile web remove dsh-share
dsh plugin --profile web add dsh-local-share@0.4.1
使用方法¶
- 打开 DSH Web 会话,在非空会话的头部找到 Share 按钮。
- 选择需要分享的对话回合(支持单选或多选,也可分享整个 Session)。
- 在弹出的对话框中,默认导出为 Markdown,并已启用隐私脱敏。
- 确认预览无误后,可复制文本或下载文件。
配置与限制¶
对于高频率或长对话的场景,建议在配置文件中设置明确的限制,防止浏览器卡顿。
配置文件路径¶
配置文件位于 $DSH_HOME/profiles/web/cordis.patch.yml(即 ~/.dsh/profiles/web/cordis.patch.yml)。
配置示例¶
在 cordis.patch.yml 中添加或修改 dsh-local-share 的配置项:
- id: dsh-local-share
config:
maxEvents: 20000
maxOutputChars: 2000000
maxToolArgumentChars: 12000
| 字段 | 默认值 | 含义 |
|---|---|---|
maxEvents |
20000 |
接受的原始会话事件最大数量 |
maxOutputChars |
2000000 |
输出文件或预览的最大字符数 |
maxToolArgumentChars |
12000 |
单个启用的工具调用保留的最大参数字符数 |
配置后可通过 dsh --profile web --dump-config 验证生效。
隐私行为说明¶
默认生成的文档仅包含直接的人类提示和可见的助手文本。插件提供了详细的隐私控制策略:
- 默认包含:人类提示、可见助手文本。
- 默认排除:工具结果体、模型推理、系统提示、请求配置、插件注入的上下文、附件字节、会话元数据。
- 可选包含:工具名称、有界参数、执行结果(需在预览中开启“Include tool calls”)。
脱敏规则¶
脱敏是启发式的,旨在覆盖常见场景,但并非绝对安全:
* 覆盖项:常见凭证、Authorization 头、包含密钥的环境变量、邮箱地址、绝对本地路径。
* 安全机制:如果禁用了脱敏,复制和下载功能将锁定,直到用户重新确认风险。
注意事项¶
- 开发者预览:当前版本仍处于开发者预览阶段。
- 插件清理:安装前建议检查当前目录中是否已存在名为
dsh-share的旧插件,避免功能冲突。 - 本地运行:插件运行在本地浏览器环境,生成的长图同样不经过服务器,确保了数据安全。