DeepSeek Harness 插件

dsh-selection-tools

Select conversation text and attach it as native composer annotations or copy it to the clipboard.(英文原文)

跳到安装方式

来源信息

GitHub 仓库
hjthjt4210/dsh-selection-tools
最近更新
2026年8月21日
分类
工具与能力
GitHub stars
1
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/hjthjt4210/dsh-selection-tools
插件名:dsh-selection-tools
作者:hjthjt4210

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器3 个文件
README.md来源说明 · 只读预览

dsh-selection-tools

面向 DSH web 客户端的对话页选中文字工具。

演示

![dsh-selection-tools 演示](assets/demo.gif)

查看高清演示视频

在对话页面用鼠标或键盘选中任意文字时,选区旁会出现一个迷你工具条,提供两个动作:

动作行为
引用把选中文字加入注释胶囊,悬停可查看原文,点击 × 可删除,发送时展开为附加上下文
复制把选中文字写入系统剪贴板

功能

  • 选中文字后显示「引用」和「复制」。
  • 引用内容以「N 条注释」胶囊显示在输入栏。
  • 悬停胶囊可查看每条引用的完整内容。
  • 点击胶囊右侧 × 可删除全部注释。
  • 发送消息时,注释会作为 <selection_annotations> 上下文提交。
  • 已发送的消息会把 <selection_annotations> 协议正文替换为「N 条注释」胶囊;悬停或键盘聚焦胶囊可查看每条引用,消息中的普通正文仍会保留。

安装

在 PowerShell 中执行:

git clone https://github.com/hjthjt4210/dsh-selection-tools.git
Copy-Item -Recurse -Force .\dsh-selection-tools "$env:USERPROFILE\.dsh\profiles\web\node_modules\dsh-selection-tools"

然后在 %USERPROFILE%\.dsh\profiles\web\package.jsondsh.profile.bundles 数组中加入 "dsh-selection-tools",最后重启 DSH。

本插件的 lib/index.js 是无操作的宿主入口,浏览器功能位于 lib/client.js。 这种双入口结构可避免 DSH 启动时在 Node.js 环境执行浏览器代码。

原理

  • 选区工具条注册在官方 shell.overlay 全框架浮层槽。

mouseup/Shift+方向键 keyup 后取 window.getSelection() 的非空选区,用 选区 getBoundingClientRect() 定位浮层。

  • 注释胶囊显示在输入栏左侧。多次引用会更新同一个胶囊的计数,悬停可查看每条
  • 引用的完整内容,点击 × 会删除全部注释,也不会显示成功提示条。
  • 引用数据通过官方 conversation 服务的 shell.insertReference() 写入,正文不会直接

塞进可见草稿。

  • 发送序列化通过 inputTriggers 注册专用 codec。DSH 提交草稿时把芯片展开为

<selection_annotations> 上下文;删除芯片会同时取消这些引用。

  • 已发送消息渲染通过客户端 DOM 观察器识别协议片段,只替换可见协议文本,发送给模型的原始上下文不变。
  • 复制优先使用 Clipboard API,并为不支持的环境提供本地复制回退。
  • 样式只用 --dsw-* 主题令牌,自动跟随深浅色模式。

开发

无构建步骤,lib/client.js 是标准 window.__ModuleLoader__.load 客户端插件 (React 18 + react/jsx-runtime)。

node --check lib/index.js
node --check lib/client.js

License

MIT