zysftd/dsh-quote:在 DSH Web 中引用 AI 回复

在 DSH(DeepSeek Harness)的 Web 端开发或交互中,有时需要将 AI 生成的上下文引用回输入框。手动复制粘贴容易丢失格式或截断。dsh-quote 插件通过 UI 卡片和 Markdown 引用块简化了这一流程,提供三种引用方式。

核心功能

该插件提供三种触发引用的方式:

  1. 划选引用:选中 AI 回复正文中的文字,点击选中处上方的「引用」按钮。
  2. 整条引用:点击已完成 AI 回复操作行的「引用」按钮。
  3. 大文本粘贴:在输入框粘贴超过 300 字的文本。

安装与启用

使用官方安装命令将插件添加到 Web profile:

dsh plugin --profile web add -w git+https://github.com/zysftd/dsh-quote.git

安装或更新后,需要重启 dsh web 并进行浏览器硬刷新。

使用方式

引用卡片显示在输入框内部顶部(包含标签、内容预览及移除按钮),输入框保持干净。发送消息时,引用块(> ...)会自动加到消息开头。

  • 划选引用:选区两端必须落在 data-chat-flow-kind="assistant-step" 行内,且不在 data-variant="think" 思考折叠块内。用户消息、工具调用卡片及思考过程不支持划选引用。
  • 大文本粘贴:粘贴文本长度超过 300 字(阈值固定)时,文本不会直接进入输入框,而是生成引用卡片。
  • 斜杠命令模式:当草稿内容以 / 开头时,回车键不触发引用注入逻辑。

实现与限制

该插件为纯客户端实现,无网络请求、无文件读写、无持久化存储。

  • UI 实现:引用卡片通过修改滚动容器的 padding-top 并使用 fixed 定位实现,利用 DSH 主题 token 保持样式一致。
  • 发送拦截:发送按钮通过包装 inputActions.submit 实现;回车路径通过 capture 阶段的 keydown 监听拦截,注入后调用 inputActions.submit()。
  • Markdown 格式:生成的引用块为纯文本 Markdown 格式。

获取与许可

该插件基于 MIT 许可证开源。安装前建议检查源码与许可证。相关目录与 GitHub 仓库地址如下:

羽毛球分组比赛记分
小程序二维码

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

小夜