d![]()
dsh-annotation
IdentifiedDSH Web 选中批注插件:选中文字→批注→回车随消息发送,回复按批注编号逐条对照 | DSH web selection-annotation plugin: annotate selected assistant text and send it with your message
dsh-annotation
在 DSH 对话或工作区文件预览里选中文字,写一条批注,回车——批注块随你的消息一起发出,模型逐条按编号回答。

静态界面预览



动图与截图在匿名示意页中运行真实插件生成,会话名、工作区名为虚构数据,不含任何真实会话或账号。
功能
- 选中即批注:选中助手正文(或工作区文件预览里的文字),工具条点「批注」写备注;留空也能保存,等于标出位置而不写意见。
- 编号角标:蓝色编号角标贴着原文,滚动时跟随正文、靠近视口边缘自动避让;悬停角标会点亮原文并显示这条批注。
- 跨回合收集:可以在任意多条消息、多个回合里持续追加批注,统一从 1 编号。
- 待发标签:输入框旁出现
N 条批注,悬停列出全部待发批注,可逐条删除。 - 回车即发:批注块与你输入的问题一起发出,模型拿到完整批注块。
- 气泡干净:发送后用户气泡只留你的问题加标签,批注块在浏览器绘制前就被摘掉;刷新历史也会自愈。
- 逐条对照回复:消息里带上格式约束,模型按
Annotation 1: …到Annotation N: …回答,回复里的编号变成可悬停芯片,回看原文与批注。 - 文件批注:侧边栏文件预览(Markdown、纯文本、代码)走同一套流程,引用带文件路径,角标刷新后恢复,同一句话出现在两个文件里也不会串。
交互流
选中文字 ──▶ 工具条「批注」──▶ 写备注或留空 ──▶ 高亮 + 编号角标
▲ │
└──────── 任意条数,跨回合追加 ◀───────────────┘
│
▼
输入框旁「N 条批注」标签(悬停查看 / 逐条删除)
│
回车发送
▼
模型收到:批注块(编号 + 原文 + 批注)+ 你的问题
你的气泡:只有问题 + 标签,不含批注块原文
模型回复:Annotation 1: … Annotation 2: …(可悬停芯片)
安装
dsh plugin --profile desktop add 'github:zuojinxin/dsh-annotation'
装完重启 DSH 桌面版生效。
说明
- 面向 DeepSeek Harness 0.2.1-rc.3(桌面版)。插件靠宿主 CSS 类名与 DOM 结构定位,DSH 升级后可能需要适配。
- 支持对话消息正文与工作区文件预览里的文字;PDF、图片、iframe 内的 HTML 不在范围内。
- 选中助手正文时,批注工具条会接管宿主自带的引用浮层,只留一个入口。
- 界面文案与批注协议跟随宿主
locale(中文 / 英文,可运行时切换)。 - 待发批注存在浏览器
localStorage,换浏览器或清站点数据会丢。 - 禁用插件后,页面上由它添加的元素和样式会全部移除。
开发
npm test # jsdom 单元测试
node --check client.js # 浏览器端是手写文件,不是构建产物
node docs/render-demo.mjs # 重制动图与截图(无头 Edge + ffmpeg)
docs/preview.html 是录制源:它把 client.js 原样注入一个手工搭的宿主外壳,把时间轴暴露成 window.demoFrame(t),录制脚本据此逐帧断言画面状态,而不是只看图觉得对。
浏览器级检查(test/overlay-browser.mjs、test/sidebar-browser.mjs)需要 Playwright:把 PLAYWRIGHT_MODULE 指向已有的 playwright-core/index.mjs。
许可证
Comments
Loading…