dsh-web-annotator: In-Place Annotation and Questioning in DeepSeek Harness Browser

前言

DeepSeek Harness(DSH)的理念是「一切皆插件」。在开发或调试智能体时,常需要让 Agent 理解当前浏览器的上下文。传统的做法是截图或手动描述,效率较低且信息容易丢失。dsh-web-annotator 插件直接在 DSH 原有的 Browser 标签页内提供了批注能力,支持点选、框选并附带截图或 DOM 定位资料,方便将网页状态直接同步到当前会话中。

是什么

dsh-web-annotator 是一个客户端插件,由维护者 cslkkl 开发,遵循 MIT 许可证。它允许用户在现有的 DeepSeek Harness Browser 环境中,对网页进行就地批注、修改属性或提问,并将标记信息以带图的卡片形式发送给当前会话。

核心功能

  • 就地批注:支持点选元素、点击空白位置或拖动框选区域,在选区旁直接输入评论或提问。
  • 属性编辑:展开同一张卡片即可调整标签、颜色、字体、间距等属性,保存前不会改写网页本身。
  • 临时操作:按住空格键与网页交互(如输入、点击),松开即回到批注模式;输入框内的空格键正常打字。
  • 资料附件:支持发送带定位资料的批注,包括带序号的截图、坐标数据及 DOM 证据。
  • 会话管理:支持多条批注、预览、失败重试,以及持久化的草稿存储。聊天界面会以折叠的“N 条注释”形式展示,展开后可查看每条的具体内容和定位资料。
  • 工具栏集成:保留了原有的 Browser 工具栏与网页内批注浮层。

安装与启用

从 Releases 下载最新 dsh-web-annotator-*.tgz 包,使用官方 CLI 安装:

dsh plugin --profile desktop add --ignore-scripts /absolute/path/dsh-web-annotator-<版本>.tgz

安装后需要正常退出并重启 Desktop 才能生效。

前置要求与注意事项:

  • 需确认 Harness 内核版本为 0.2.1-alpha.2。
  • 该插件在启用期间会替换官方的 Browser、Chat 和 Layout 提供方,卸载整个 bundle 后重启可恢复官方提供方。
  • 若是旧本地预览用户,安装前需先移除 dsh-layout-care 和 dsh-layout-care-browser-preview。

典型用法

  1. 创建批注:在当前会话点击“批注网页”,打开 Browser。输入地址后,点击页面元素、空白位置或拖动鼠标框选区域,在浮层输入区输入内容。
  2. 编辑属性:点击左侧图标展开属性卡片,可修改颜色、字体、间距或切换“评论/提问”类型。点击圆形 ✓ 或按 Enter 保存;Esc 取消。
  3. 临时操作:若需在网页中输入内容或点击按钮,按住空格键,松开即回到批注模式。
  4. 发送到会话:保存后可编辑文字,勾选本次要发送的批注,选择发送方式并预览,最终发送到当前会话。聊天中会显示为“N 条注释”卡片。

在 Vite 项目中使用:

import { defineConfig } from 'vite';
import { webAnnotator } from 'dsh-web-annotator/vite';

export default defineConfig({ plugins: [webAnnotator()] });

安全与边界

  • 页面中的文字、样式和源码标记均为引用资料,并非指令。
  • 插件回调不向页面暴露 DOM、任意求值器或宿主能力。
  • 批注与截图仅存储在你本机的浏览器存储中,通过当前会话的正常请求流程发送。
  • 文件写入与源码修改由当前会话中的 Agent 完成,插件本身不执行脚本。

总结

dsh-web-annotator 为 DSH 用户提供了直接在 Browser 标签页内完成网页批注、属性调整与资料提取的能力,通过图片附件与折叠卡片管理,解决了 Agent 获取网页上下文碎片化的问题。

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

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

Xiaoye