dsh-annotation-patched:引用助手消息并逐条回应

前言

在 DSH Web 会话里,如果想针对助手回复中的某句话继续追问,常见做法是手动复制、粘贴到新消息里。这样做容易丢失上下文,也不方便让模型明确知道你要回应的是哪一段。

dsh-annotation-patched 是 DSH Web「选中引用」插件的本地增强版。它允许用户选中助手消息中的文字,点击「引用」生成引用块;发送时引用块会随消息一起发出,模型按编号逐条回应,回应中带有可悬停展开的引用标记。

下面介绍它的定位、功能、安装方式和使用注意。

这是什么

dsh-annotation-patched 由 DDDFXYqiming 维护,是一个面向 DSH Web 的浏览器端插件,采用 MIT 许可证。

它解决的问题比较具体:把 DSH Web 中助手消息里的选中内容转成可发送的引用块,并在模型回复里按编号逐条对应。仓库标题与安装路径使用 dsh-annotation-patchedpackage.json 中的包名写作 @dsh-external/dsh-annotation-patched。本文按 GitHub 仓库名介绍。

核心功能

引用助手消息

在 DSH Web 中选中助手消息里的文字,点击「引用」,可以补一句说明,也可以直接留空,然后回车发送。引用块会拼进消息一起发出。

发送后,模型会按编号逐条回应每条引用,回应中带有可悬停展开的引用标记。

这个插件采用单按钮制:工具栏只保留「引用」按钮,引用需要显式点击按钮确认。复制、双击读词这类操作不会自动变成引用。

旧引用清理

发送确认制会清理旧引用。拼稿前会剥离草稿中残留的旧引用块,避免旧引用重复带入新消息。

自动引用在回车发送和点击发送按钮时都会触发。

多行输入标签同步

多行输入时,「引用 ×N」标签会随输入框位置持续同步,不会停留在旧坐标上。

本地补丁重放

仓库提供补丁重放工具,可按 patches/manifest.json 清单重放本地增强补丁。

升级基座时可以运行:

node scripts/apply-patches.mjs --fetch <上游commit> --out client.js

这一步会基于清单重放补丁,生成新的 client.js

运行依赖

插件声明 Web 端客户端注入,并声明以下 peerDependencies

@deepseek-ai/dsh-client-runtime ^0.1.0-rc.6
@deepseek-ai/dsh-client-ui-conversation ^0.1.0-rc.6

engines 要求:

node >=20

安装与启用

从 GitHub 安装

使用 DSH Web 插件安装命令:

dsh plugin --profile web add github:DDDFXYqiming/dsh-annotation-patched

这条命令用于把插件安装到 web profile 下。

本地开发

本地开发时也可以直接使用仓库目录:

dsh plugin --profile web add <本目录>

这条命令适合在本地修改 client.js 或其他插件文件时直接使用。

修改后刷新

这是浏览器端插件,修改 client.js 后需要 Ctrl+F5 强刷,或者换浏览器生效。

如果通过 pnpm 更新,可能会覆盖 node_modules 里的副本,此时需要以本目录为源重新 link。

典型用法

1、选中助手消息中的文字,点「引用」。

2、可以补一句说明,也可以留空。

3、按回车发送,或点击发送按钮。

4、引用块拼进消息发出。

5、模型按编号逐条回应,回应里带有可悬停展开的引用标记。

本地开发时,完成修改后记得强刷浏览器,再验证引用块和模型回应是否符合预期。

适用场景与注意

适合以下场景:

  • 需要在 DSH Web 中对助手消息中的某句话做针对性追问。
  • 希望把选中内容转成引用块,而不是手动复制粘贴。
  • 在本地维护 DSH Web 插件,并希望重放本地增强补丁。

需要注意:

  • 只支持选中助手消息,不处理用户自己发送的消息。
  • 强依赖 DSH Web 的 DOM 结构,DSH UI 升级可能让插件失效。
  • 修改 client.js 后需要 Ctrl+F5 强刷或换浏览器生效。
  • pnpm 更新会覆盖 node_modules 里的副本,须以本目录为源重新 link。
  • 插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
  • 本插件采用 MIT 许可证,并保留上游版权声明。

链接

  • 社区目录页:https://www.skillhub.cn/plugins/DDDFXYqiming/dsh-annotation-patched
  • GitHub 仓库:https://github.com/DDDFXYqiming/dsh-annotation-patched
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜