dsh-vision
by 237229953-create
⚠️ 依赖提示:本插件需要搭配 uiopt 项目一起使用。 视觉模型的图形化配置界面(视觉模型下拉、输出上限、模式、超时)由 uiopt 的"额外插件 → 可配置插件"标签页承载;未安装 uiopt 时,只能通过 settings.yaml 手动配置,且无法在界面中切换视觉模型。
Dependency note: this plugin requires the uiopt project. The graphical vision config (model dropdown, output cap, mode, timeout) lives in uiopt's extra-plugins tab; without uiopt, configure via settings.yaml only.
安装
dsh plugin --profile web add github:237229953-create/dsh-visionGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
⚠️ 依赖提示:本插件需要搭配 uiopt 项目一起使用。 视觉模型的图形化配置界面(视觉模型下拉、输出上限、模式、超时)由 uiopt 的"额外插件 → 可配置插件"标签页承载;未安装 uiopt 时,只能通过
settings.yaml手动配置,且无法在界面中切换视觉模型。
让 DeepSeek-V4 这类纯文本模型在 dsh 里"看到"图片:图片消息自动桥接为视觉模型生成的文字描述,原图保留在人类转录中。零新增凭据 —— 视觉模型复用 profile 已配置的 llm-pi-ai 路由(默认 opencode-go / minimax-m3,与主模型同一把 key)。
原理(全部基于 dsh 官方机制,零 hack)
- 包装
llm/stream的streamWithRegistration方法:请求含 image 块且目标模型未声明 image 输入时触发(适配器层之前的准入门禁由 resolveModelInfo 包装放行,二者联动); - 用视觉模型把图片转为文字描述(描述带"识图结果"身份标记,主模型明确知道内容来自识图模型);
- 把描述作为一条
user/messagesurface-replace 事件 append 进会话日志(与 compaction 压缩历史同款机制)——只对模型可见,人类转录保留原图; - 本次请求用同一份描述改写后放行,首轮即成功;模型调用
read_image等工具返回的嵌套图片同样被递归识别改写; - 替换事件落库后,后续每轮历史投影天然给出稳定文本:网关前缀缓存与普通文本会话完全等价(历史全命中,仅新消息 miss)。
安装
# 1. 接线到 profile(把本地目录作为 link 依赖加入 bundle,依赖自动 reconcile 进层栈)
dsh plugin --profile web add link:D:/dsh-plugins/dsh-vision
# 2. 重启 dsh web 后验证挂载
dsh --profile web --dump-config | Select-String dsh-vision
配置(官方 settings 通道,热生效)
界面方式(需 uiopt):设置 → 插件 → 额外插件 → 可配置插件 → 展开 dsh-vision 卡片:
- 视觉模型下拉:自动枚举当前所有 provider 中声明
[text, image]输入的模型(按提供方分组); - 高级字段:输出上限、模式(auto/manual/both)、超时。
保存后写入 settings.yaml 的 dsh-vision 分节(与 llm-pi-ai 同款官方通道),下一次识图立即生效。
文件方式(组合层默认值,见 bundle 自带 cordis.patch.yml):
- insert:
- id: dsh-vision
name: dsh-vision
config:
provider: opencode-go # 视觉模型路由(复用已配置的 key)
model: minimax-m3 # 快(~3s)且便宜;可选 kimi-k2.7-code / qwen3.6-plus / kimi-k3 / qwen3.7-plus / mimo-v2.5 / grok-4.5
maxTokens: 4096 # 描述输出上限
mode: both # auto=仅自动桥 | manual=仅 see_image 工具 | both=两者
timeoutMs: 60000 # 视觉调用超时
配置解析顺序:patch 的
config(组合层 base)→settings.yaml用户层,后者优先;字段级覆盖,热生效。 说明:官方"插件配置"标签页只服务 dsh 仓库内白名单命名空间(apiproxy),第三方插件的配置 UI 由 uiopt 的"额外插件"卡片承载,数据通道仍是官方 settings seam。
行为说明
- 自动桥:图片出现在纯文本模型的请求中时自动转换,无需模型或用户做任何事;
- 原生看图优先:当前模型自身支持 image(如
kimi-k3)时插件完全不干预; see_image工具:手动/追问入口,file_path+ 可选question;- 缓存:描述固化在日志,历史前缀缓存与文本会话等价;新图首次出现按未命中价计费一次(与发送新消息相同);
- 失败语义:视觉调用失败时本次请求仍成功(图片位置为"解析失败"占位),且不固化,下次自动重试;
- 成本:视觉调用不进入会话 usage 统计(绕过 agent loop 记录路径),缓存命中后趋零;图片描述通常几百 token,按视觉模型单价计。
限制
- 依赖 dsh 预览版 API(
llm/streamwaterfall、surface replace、foldSurface),rc 升级若改签名需同步更新; - 图片位于历史中部首次出现时,该轮从图片处起前缀缓存失效一次,之后恢复(前缀缓存固有特性);
- 视觉模型必须真实支持图片输入,配置错误会导致占位文本(不会死循环)。
原始 README: https://github.com/reimu-create/dsh-vision/blob/master/README.md ↗
同类插件
查看全部 →
modlens
为纯文本模型架起视觉桥梁:粘贴图片,输出结构化 JSON 证据(OCR、版面、语义)。

dsh-vision-toolkit
让纯文本模型更好地做视觉任务:带意图的图片问答、长截图 OCR、UI 还原等。

dsh-vision-router
为纯文本 Agent 提供视觉能力:内置免 Key 视觉链 + 像素级视觉工具(看图问答、定位、裁剪、像素对比、取色、OCR、矢量化、抠图、截图);粘贴图片即可用。

dsh-vision-complete
给 DeepSeek 补上「眼睛和耳朵」的多模态视觉插件:看图 / OCR / 物体检测 / 视频理解 / 语音转写 / 截图直读,一键安装(DSH 插件)。

dsh-media-skills
面向纯文本模型的免费视觉桥与生图:粘贴读图、GLM-4V-Flash 与 Gemini 引擎故障转移、modlens 同款结构化证据输出,并自动播种免费视觉模型路由。

dsh-vision-opencode
给纯文本主模型加可配置识图模型:vision_read_image 工具、输入框识图模型选择器,以及纯文本路由的图片自动转文字。