dsh-selection-ask:选中对话文本后一键引用到 composer

前言

在 DeepSeek Harness(DSH)的 web 对话里,想把某段上下文带回 composer,通常要手动复制、再粘贴。dsh-selection-ask 把这个动作压缩成一步:选中对话文本后,选区旁出现「询问 DeepSeek」按钮;点击后,选中文本以 Markdown 引用形式进入 composer,然后继续输入问题并发送。

下面介绍它的定位、能力、安装启用方式和注意点。

这是什么

dsh-selection-ask 是由 lzbaclz 维护的 DSH 插件,用于 web profile 的对话界面。它提供 ChatGPT-style 的选中文本辅助:在会话中选中一段文本,旁边出现「询问 DeepSeek」按钮;点击按钮后,将选中内容作为引用追加或替换到 composer。

已核实的基本信息:

  • 名称:dsh-selection-ask
  • 维护者:lzbaclz
  • 许可证:README badge 标注 MIT
  • 版本:package.json 和 README badge 均为 0.1.0
  • 构建产物:预编译 lib/ 已提交,安装预构建包不需要本地构建
  • npm 包尚未发布,待发布后才可用 dsh plugin --profile web add dsh-selection-ask

核心功能

它只处理对话记录中的文本,不会把 composer 里的草稿再引用回 composer。

具体能力包括:

  • 选择 transcript 中的文本时,在选区旁显示固定的「询问 DeepSeek」按钮;按钮按选区屏幕坐标定位,并限制在视口内。
  • 只允许引用对话记录(transcript/[data-conversation-scroll])中的文本;选择 composer 内容不生效。
  • 点击按钮后,选中文本以 Markdown 引用形式写入 composer:每行加 > 前缀,然后追加或替换到 composer。
  • 写入后聚焦 composer,并把光标置于末尾。
  • 通过 harness 的 inputActions.setDraft API 写入草稿,避免直接修改 DSH 内部或 DOM 状态。
  • 按钮状态按 session 重置;在 takeover composer(question/approval)出现时隐藏。

安装与启用

安装和启用分为两步。

1. 安装插件

从 GitHub 安装:

dsh plugin --profile web add github:lzbaclz/dsh-selection-ask

如果需要固定版本:

dsh plugin --profile web add github:lzbaclz/dsh-selection-ask#v0.1.0

本地克隆后安装:

git clone https://github.com/lzbaclz/dsh-selection-ask.git
dsh plugin --profile web add link:/absolute/path/to/dsh-selection-ask

npm 包尚未发布。README 说明 dsh plugin --profile web add dsh-selection-ask 待发布后才可用。

2. 启用插件

启用路径二选一,不要同时使用。

Path A:重启 dsh web

重启 dsh web 后即可使用:

dsh web

Path B:热激活

热激活时,cordis.patch.yml 必须用 insert 块替换原 [],不能追加在 [] 后面;否则会出现 failed to parse patches

注意:Path A 和 Path B 不能叠加使用,否则可能出现 duplicate loader entry id: dsh-selection-ask

典型用法

  1. 在对话文本中选择一段内容。
  2. 点击选区旁的「询问 DeepSeek」按钮。
  3. 选中文本以 > 前缀进入 composer,composer 获得焦点,光标位于末尾。
  4. 继续输入追问内容并发送。

如果按钮没有出现,先确认选择的是对话记录中的文本,而不是 composer 内容;如果启用的是热激活,也要确认页面已刷新。

卸载

dsh plugin --profile web remove dsh-selection-ask

如果使用热激活,还需将 cordis.patch.yml 恢复为 [],再刷新或重启。

适用场景与注意

适合使用 DSH web GUI、需要频繁把上下文带回 composer 的场景。

需要满足的运行环境:

  • DeepSeek Harness 的 web profile(dsh web
  • DSH packages 处于 0.1.0-rc.6 era
  • 默认 GUI 页面为 http://127.0.0.1:3080

安装注意:

  • 安装预构建包不需要本地构建;从源码构建需要 Node ^22.19.0 || >=24 和 pnpm。
  • 旧 profile 可能需要在 pnpm-workspace.yaml 添加 autoInstallPeers: false
  • 插件以当前 dsh 进程权限运行;安装前应检查源码与许可证。
  • DSH 插件生态强调「一切皆插件」;社区目录是独立站点,与 DeepSeek、幻方无官方从属关系。

链接

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

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

小夜