ld-1101/dsh-vision-plugin
dsh-vision-plugin
dsh-vision-plugin is a community DeepSeek Harness plugin. Read the repository README before installing.
Install
npx @deepseek-ai/dsh plugin --profile web add github:ld-1101/dsh-vision-pluginRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/ld-1101-dsh-vision-plugin)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from ld-1101/dsh-vision-plugin, cleaned of badges and images.
👁️ dsh-vision-plugin — DSH 视觉理解插件
给 DeepSeek Harness(DSH)装上"眼睛":纯文本模型(如 deepseek-v4-flash)也能处理图片——发图后自动用视觉模型生成描述,文本模型基于描述回答;描述不足时自动生成更具体的提示词重新解析。配置全程 GUI 可视化、保存即生效。
⚠️ 社区项目,非 DeepSeek 官方。已在 DSH 0.1.0-rc.6(Desktop)实测。
📦 v1.0.0 | MIT License | Windows + PowerShell 安装 | 支持 desktop / web / headless profile
✨ 特性
- 🖼️ 发图自动接管:对话模型收到图片不再被拒绝——用默认提示词调视觉模型生成描述,文本模型基于描述回答
- 🔁 迭代式视觉解析:描述不足时,对话模型自动生成更具体的提示词调用
view_image重新解析(可省略 image 参数复用会话最近上传的图片) - 🧩 两种连接模式:
- 系统模型:自动检测 DSH 已启用且支持视觉的模型(Xiaomi / OpenCode Zen Go 等),复用系统 API Key,零配置
- 自定义模型:手动填 OpenAI 兼容端点(URL + Key + 模型),内置 8 家常见服务商示例(智谱 GLM-4V / 通义千问 VL / OpenAI / 火山方舟 / 硅基流动 / OpenRouter / OpenCode Go / 小米 MiMo)
- 🎛️ GUI 可视化配置(设置 → 视觉模型):保存即生效(live),无需重启,带 read-back 校验
- 🔒 Key 安全:
role('secret')自动脱敏,只写不读,永不回流前端;配置摘要不泄露 Key 明文 - 📋 未配置引导:视觉模型未配置时明确提示"请到 设置 → 视觉模型 配置",不再报"模型不支持图片"
- 🧪 33 项自动化测试(23 项逻辑 + 5 项 bundle 契约 + 5 项真实 React 渲染)
🧠 工作原理(三层机制)
① 图片桥(admission 接管 · 宿主补丁)
图片到达 → 宿主原逻辑:模型不支持 image 则拒绝
插件已装 → visionImageBridge 服务接管 → 放行(不拒绝)
② pre-step 自动描述(agent/pre-step 事件钩子)
图片消息 → 用默认提示词调视觉模型 → 生成描述文本
会话日志保留原图(surface 占位替换),模型侧只看到描述
未配置视觉模型 → 插入引导消息,不报"不支持图片"
③ view_image 工具(迭代式解析)
描述不足 → 对话模型自动调 view_image(可省略 image 复用最近图片)
→ 传入针对性提示词(OCR / UI 布局 / 具体数值…)→ 重新解析 → 基于新描述回答
📦 安装(3 步)
前置
- Windows + PowerShell(脚本为 Windows 编写)
- DSH Desktop(0.1.0-rc.6)或 DSH CLI(
web/headlessprofile) - 已启用至少一个支持视觉的模型供应商(DSH 设置 → 模型,如 xiaomi 的 mimo-v2.5)
步骤
# 1) 克隆仓库,进入目录
git clone https://github.com/ld-1101/dsh-vision-plugin.git
cd dsh-vision-plugin
# 2) 安装插件(默认 desktop profile;web 用 -Profile web)
powershell -ExecutionPolicy Bypass -File install.ps1
# 3) 打宿主补丁(让文本模型接收图片;幂等,DSH 升级后重跑)
powershell -ExecutionPolicy Bypass -File patch-host.ps1
重启 DSH,打开 设置 → 视觉模型 配置。
补丁说明:修改
dsh-host-apiproxy两处——① 图片准入:插件已装即接管图片(pre-step 转描述),未装保持宿主原行为;② settings namespace 暴露:允许 GUI 写入配置。原文件自动备份为index.js.bak-dsh-vision,可用备份还原。两处补丁点都有严格匹配校验,宿主版本变化会明确报错而非静默打坏。
卸载
- 退出 DSH
- 从 profile 的
cordis.patch.yml中移除dsh-vision与dsh-vision-client两个条目 - 删除
~/.dsh/profiles/<profile>/plugins/dsh-vision与共享目录~/.dsh/profiles/node_modules/dsh-vision-client - 如需还原宿主行为:用备份
index.js.bak-dsh-vision还原dsh-host-apiproxy/lib/index.js后重启
⚙️ 配置(设置 → 视觉模型)
连接模式
◉ 系统模型(复用系统 Key,无需填写)
○ MiMo-V2.5 · Xiaomi ●系统凭证
○ mimo-v2-omni · Xiaomi ●系统凭证
○ kimi-k2.7-code · OpenCode Zen Go
...(自动检测,只显示支持视觉的模型;
"共 N 个视觉模型" + 可添加建议)
○ 自定义模型(OpenAI 兼容接口)
API Base URL [____] API Key [____](只写不读)
Key 环境变量 [____] 模型名称 [____]
▸ 查看常见服务商端点示例
提示词与参数
| 字段 | 说明 |
|---|---|
| 系统提示词 | 发给视觉 API 的 system 消息(留空不发送) |
| 默认提示词 | 发图自动描述/未传 prompt 时使用的提示词 |
| 超时 / 最大 token / 温度 | 请求参数(高级参数折叠区) |
| URL 图片模式 | direct 直传(省流量)/ download 下载转 base64 |
保存与验证
- 保存更改:保存后立即生效(live),无需重启;带 read-back 校验,失败会明确提示
- 撤销改动:清空未保存的草稿
- 测试连接:用 1x1 测试图真实请求,显示延迟与模型返回
🔧 view_image 工具
对话中由模型自动调用的"看图"统一入口,也支持用户直接表达意图触发:
| 参数 | 必填 | 说明 |
|---|---|---|
image | 否 | 图片的本地绝对路径或 http(s) URL;省略时自动复用会话最近上传的图片 |
prompt | 否 | 视觉理解提示词;省略时使用配置的「默认提示词」 |
- 本地路径 → 自动读取转 base64 data URI(png / jpg / webp / gif / bmp / avif / svg / ico)
- URL → 按配置 direct 直传,或下载后转 base64
- 返回 →
[视觉模型 {model} 对 {source} 的识别结果]+ 描述文本
🚀 使用
1. 聊天直接发图(核心场景)
…


