在 DSH(DeepSeek Harness)中,直接粘贴长文本通常只会被当作普通文本发送给模型,模型难以精准引用其中的细节。dsh-paste-doc 插件解决了这个问题,它能在粘贴长文本时自动生成「文本文档引用」,效果类似 DeepSeek 官方聊天的文档折叠功能,方便在发送给模型前查看和引用。
插件介绍¶
dsh-paste-doc 是一个 DSH 客户端插件,由 dzf-code 维护,开源协议为 MIT。它主要用于在输入框中粘贴长文本时,将其转换为可视化的引用芯片和文档卡片,并在发送时将其序列化为结构化 XML 文本,供模型阅读。
核心功能¶
- 自动转换:粘贴 ≥ 200 字的文本,自动转换为引用芯片(显示 📄 + 文本前几个字的预览)。
- 文档卡片:输入框上方出现可展开/收起的文档卡片,随时查看全文。
- 结构化序列化:发送时将引用序列化为结构化 XML 文本:
<引用文档 id="doc1" 标题="…" 字数="1234">
<全文>
……原文……
</全文>
</引用文档>
- 引用语法:输入
@docN高亮引用;@菜单可手动插入历史粘贴文档。 - 极简样式:透明底色 + 中性描边胶囊(跟随主题,无阴影)。
- 实时同步:卡片与芯片实时同步,删除芯片 → 卡片消失;发送后 → 全部清空。
- 逃生通道:支持
Ctrl+Shift+V(Windows/Linux)或Cmd+Shift+V(macOS)粘贴纯文本。
安装与启用¶
前置条件¶
- DSH
webprofile - pnpm
安装命令¶
插件声明了 dsh.bundle.patch 并随包携带 cordis.patch.yml,安装后自动加入 profile 的 bundle 层,无需手工编辑配置文件。
dsh plugin --profile web add "github:dzf-code/dsh-paste-doc"
安装完成后重启 dsh web,进入设置 → 插件列表确认 paste-doc 状态为 active。
兼容性说明¶
- DSH 0.1.5 将输入框形态改为 Lexical,需使用 v0.1.11+ 插件兼容。
- DSH 0.1.5 起芯片改为 Lexical 节点,需使用 v0.1.12+ 插件适配样式。
- 插件自 v0.1.11 起自动兼容两种形态(旧版
<textarea>/ 新版 Lexical)。
典型用法¶
- 粘贴长文本:直接
Ctrl+V粘贴长文本,自动变成引用芯片 + 文档卡片。 - 查看全文:点击输入框上方的卡片「展开」查看全文。
- 删除引用:在输入框里删掉芯片(退格或选中删除),卡片会同步消失。
- 手动插入:输入
@在菜单中选择「粘贴文档」来源。 - 特定命令行为:当
/plan、/goal等命令 claim 正在生效时,粘贴长文本会以纯文本插入(而不是芯片),确保完整内容进入命令参数、不被截断。 - 粘贴纯文本:如需粘贴纯文本(不转引用),使用
Ctrl+Shift+V(Windows/Linux)或Cmd+Shift+V(macOS)。
注意事项¶
- 文档库保存在浏览器内存中,刷新页面即清空。
- 需要确保 DSH 版本与插件版本匹配,特别是升级 DSH 到 0.1.5 后,需升级插件到 0.1.11+ 以维持输入框兼容,升级到 0.1.12+ 以维持样式兼容。
总结¶
dsh-paste-doc 通过结构化的 XML 序列化和可视化的卡片展示,解决了在 DSH 中处理长文本上下文的痛点,让模型能更准确地引用粘贴的文档内容。