dsh-mindseye:给 DeepSeek Harness 补上图像理解、图像生成与可见浏览器自动化

前言

做智能体开发时经常遇到这类问题:模型本身是纯文本的,用户贴一张截图问“这个报错是什么”,模型答不上来;想生成一张图,得自己另开工具、下载文件、再拖回会话;想让它操作网页,主流方案要么跑无头浏览器不可见,要么直接接管用户自己的浏览器 profile,风险不低。

dsh-mindseye(MindsEye)针对的就是这三个缺口。它是 DeepSeek Harness(DSH)的一个插件,用一句话概括:Intent-driven vision, image generation, and visible browser automation for DeepSeek Harness。下文按功能、安装、配置、注意事项的顺序介绍。

这是什么

MindsEye 由 kanchengw 维护,仓库为 kanchengw/dsh-mindseye,当前版本 0.2.8,许可证 MIT,Node 引擎要求 >=22.19

它的设计原则是让 DSH 会话保持主要交互界面:图片以 DSH 附件的形式保留,生成结果也以原生 DSH 附件显示在会话中,用户不需要手动选本地文件或在多个工具间倒腾。

核心功能

图像理解

  • 保留 DSH 图片附件;图片轮次自动挂载视觉工具,纯文本轮次保持单一激活入口。
  • mindseye_read_image:回答单图/多图问题,支持 OCR、版面、图表、颜色、像素差异等聚焦视觉任务,返回包含图像、证据、答案和调用元数据的结构化结果。
  • mindseye_ground:定位目标并返回像素边界框,供点击、裁剪等下游动作使用。
  • 纯文本轮次需要视觉能力时,通过 mindseye_vision_activate 手动挂载视觉工具。
  • mindseye_plan 负责提取当前请求、准备下游工具使用的意图上下文。

图像生成与编辑

  • mindseye_generate_image:将用户的图像请求发送到配置的图像生成路由,生成结果以原生 DSH 附件返回并显示在会话中。
  • mindseye_edit_image:将 DSH 图片附件与编辑请求发送到配置的图像编辑路由。
  • 注意:生成图像不会自动保存到项目,也不会运行验证 pass,需要落盘时要自己处理。

浏览器自动化

配置 gui.enabled 开启后,插件会打开一个独立的可见 Chrome 或 Edge 会话。GUI 工具可以打开页面、快照、等待、点击、输入、按键、滚动和关闭会话,对应 mindseye_gui_open / snapshot / waitmindseye_gui_click / type / keypress / scrollmindseye_gui_close

遇到 CAPTCHA、登录或权限确认时,运行会通过原生 DSH 问题卡暂停,用户可以:

1、接管可见浏览器,手动完成该步骤;
2、如果该步骤可能已完成,跳过第一次交接询问;
3、放弃本次运行。

用户恢复后,MindsEye 会先检查页面状态,再把控制权交回模型。另外,每次 GUI 动作之后都要求一次新快照,避免元素引用和坐标悄悄过期。

可选记忆工具

插件还提供一组可选的记忆工具,暴露显式 DSH 操作,用于存储、检索、搜索和比较图像相关记录。

安装与启用

安装两步:

npm install dsh-mindseye
npx @deepseek-ai/dsh plugin --profile web add dsh-mindseye

安装完成后重启 DSH Web,然后在 MindsEye 设置卡中至少配置一个 vision route。未配置的聚焦视觉路由(如 extract、locate)在可用时会回退到通用理解路由,所以最小可用配置只需要一条路由。

配置

通过 DSH 设置卡或插件配置进行设置,主要配置项如下:

  • vision.routesunderstand / extract / locate 三个独立路由。
  • vision.fallbacks:视觉调用的回退路由。
  • image.generate:图像生成路由,按顺序尝试。
  • image.edit:图像编辑路由,按顺序尝试。
  • gui.enabled:开启可见浏览器工具,默认关闭。
  • gui.browserautochromeedge
  • gui.restrictHosts:设为 true 时启用主机白名单。
  • gui.allowedHosts:主机限制开启时允许访问的主机列表。
  • gui.maxStepsgui.timeoutMs:单次浏览器运行的步数与超时上限。

视觉路由使用 OpenAI 兼容的 Chat Completions 或 Responses API;图像路由支持 JSON 和 multipart 请求体,因此不同的图像 provider 可以独立配置。

数据与安全

几个值得在接入前确认的设计:

1、图像字节和问题只在 MindsEye 工具调用对应 provider 时发送;凭证来自 DSH credentials、环境变量或插件设置,且只发送给匹配的 provider。
2、浏览器自动化只在显式启用时启动本地 Chrome/Edge 子进程,使用隔离会话,不附加用户现有的浏览器 profile,也不执行下载的代码;导航可通过 gui.restrictHosts / gui.allowedHosts 限制到白名单。
3、图像能力模型保留原生 DSH 图像块;纯文本回退路径使用为当前粘贴操作创建的隔离临时文件。

适用场景与注意

适合的场景:纯文本模型需要读截图、图表、OCR;需要在会话内直接生成和编辑图片;需要模型操作网页但要求过程可见、可人工接管。

注意事项:

1、插件以当前 dsh 进程的权限运行,安装前建议检查源码与许可证。本项目为 MIT 许可,仓库公开可查。
2、gui.enabled 默认关闭,浏览器自动化只在显式启用时启动,不开启则不会有本地浏览器子进程。
3、需要接入的视觉/图像服务需兼容 OpenAI 兼容 API 或支持 JSON / multipart 请求体,具体路由在设置卡中逐条配置。

想参与开发的话,仓库提供标准命令:

pnpm install
pnpm test
pnpm typecheck
pnpm build

小结

dsh-mindseye 把图像理解、图像生成和可见浏览器自动化整合进 DSH 的插件体系,同时把交互、权限边界和人工接管都留在 DSH 会话里。如果你的 DSH 工作流缺多模态和网页操作能力,可以一试。

仓库地址:https://github.com/kanchengw/dsh-mindseye

社区目录收录地址:https://www.skillhub.cn/plugins/kanchengw/dsh-mindseye(该地址来自插件收录线索,请以实际站点为准)。DSH 的理念是“一切皆插件”,上述社区目录为独立站点,与 DeepSeek、幻方无官方从属关系。

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

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

小夜