前言¶
在 DeepSeek Harness Web GUI 中进行多轮对话时,针对 AI 的某段回复进行追问是常见需求。通常的做法是手动复制文本,或者通过系统提示词(System Prompt)重新描述上下文。这种方式不仅繁琐,而且容易丢失格式或上下文细节。
dsh-add-conversation 插件为 Web profile 提供了一种仿 Codex 的引用体验。它不改变 DSH 源码,而是通过浏览器端脚本拦截选中事件,将聊天区的文字转化为可管理的引用块。下面介绍安装与使用方法。
功能特性¶
该插件在聊天区划选文字后,提供以下交互能力:
- 划选即引:在聊天消息区域(包括 AI 回复或用户自己发送的内容)用鼠标选中任意文字,选中处会出现「+ 添加对话」悬浮按钮。
- 引用暂存:点击按钮后,选中内容会变成一条「引用 chip」,暂存在输入框上方。此时内容不会立即发送,而是作为上下文暂存。
- 数量限制:最多同时暂存 12 条引用。超过限制时会有提示。
- 预览与管理:点击 chip 会弹出预览面板,查看完整文本;每条 chip 自带 × 按钮,可随时移除;按
Esc键可收起面板。 - 自动格式化:点击预览面板的「发送」,或直接在输入框输入内容后按
Enter,所有暂存的引用会自动以 Markdown 引用块(> ...)的格式,插入在消息开头。
安装与启用¶
本插件为 Web profile 插件,依赖 dsh plugin 命令。
- 执行安装命令:
在终端或 PowerShell 中运行以下命令,将插件添加到 Web profile 的 bundles 中:
dsh plugin --profile web add dsh-add-conversation
-
重启 DSH:
安装完成后,必须完全重启 DeepSeek Harness(关闭并重新运行dsh web),插件才会生效。 -
卸载:
如需移除,运行:
dsh plugin --profile web remove dsh-add-conversation
使用方法¶
安装并重启后,即可按照以下步骤体验引用功能:
- 划选内容:在聊天窗口中,用鼠标选中一段需要引用的文字(支持单选一段,最长 8000 字符)。注意,仅在聊天消息区域内划选才会触发按钮,输入框内的文字不触发。
- 添加引用:选中区域上方会出现「+ 添加对话」按钮,点击它。文字内容会变成一条引用 chip,显示在输入框正上方。
- 发送消息:
- 在输入框中输入新的追问内容。
- 点击输入框上方的「发送」按钮(或直接按
Enter键)。 - 系统会将所有暂存的引用块自动合并到消息的最开头,随后提交。
技术说明¶
- 实现方式:纯浏览器端实现。插件通过
dsh.bundle.patch机制向组合树插入配置,利用conversation.composer.dock槽位注册交互逻辑。 - 样式处理:优先使用客户端
styles服务,若不可用则回退到自带<style>元素。 - 内容限制:单条引用最大长度为 8000 字符;暂存区最多支持 12 条引用。
- 位置逻辑:发送时,如果输入框已有内容,引用块会插入在输入框内容的前面,中间空一行。
生态信息¶
- 项目地址:https://github.com/haohao16421/dsh-add-conversation
- 目录页:https://www.skillhub.cn/plugins/haohao16421/dsh-add-conversation
- 维护者:haohao16421
- 许可证:MIT
安装前请检查源码与许可证,确认符合使用规范后再进行部署。