poiuyjie/dsh-vision-opencode 预览 preview

poiuyjie/dsh-vision-opencode

Plugin插件 Native原生 ⭐ 13 MIT Vision & Media视觉与多媒体

DSH插件:通过任意视觉模型,自动将图片转换为文本,适用于纯文本LLM(如DeepSeek等)。无需切换您的主要模型。

Project Overview项目介绍

This is a plugin built exclusively for DeepSeek Harness (DSH) that adds configurable image recognition capability to DSH's pure-text main models. To install natively on DSH, you can run the command dsh plugin --profile web add -w github:poiuyjie/dsh-vision-opencode directly from the DSH CLI. It can also be installed via a one-click shell script for Ubuntu or PowerShell script for Windows, and you will need to restart DSH after the installation completes. To uninstall, you can use the corresponding DSH plugin remove command or run the provided uninstall script. You should back up any image-containing conversations before uninstalling to avoid losing access to processed images.

This plugin is designed for DSH users who primarily use pure-text DeepSeek main models and need to add image recognition support without switching to a native multimodal model. After installation, you can configure your preferred visual model provider and model ID through DSH's settings UI, or edit the configuration directly in ~/.dsh/settings.yaml. By default, all images sent in chat will be automatically converted to text descriptions before being passed to the main model, but you can turn off automatic conversion via the configuration file. The plugin automatically leaves native multimodal models untouched, so you do not need to adjust your existing model directory setup.

This plugin is released under the open-source MIT license, and it does not host any API services or image recognition models on its own. To use it, you must already have valid API keys configured for your chosen visual model provider, which the plugin checks and displays via status dots next to each provider in the settings panel. It includes a failover mechanism: if image conversion takes longer than 60 seconds, it retries once, and falls back to placeholder text if both attempts fail, so it will not break your entire chat session. Turning off reasoning for visual models can reduce latency and cost, though the plugin cannot guarantee this will work for all providers.

这是专为 DeepSeek Harness 开发的原生插件,用于给 DSH 的纯文本主模型添加可配置的识图能力。当用户在聊天中发送图片时,插件会先调用指定的视觉模型将图片转为文字描述,再交由主模型正常回复,无需切换主模型。它在输入框右侧提供识图模型下拉选择器,还支持在设置面板独立管理视觉模型配置。

它面向使用纯文本 DeepSeek 主模型、需要补充识图能力的 DSH 用户。用户可以通过 DSH 官方的插件命令一键安装,安装完成后重启 DSH 即可使用,之后只需要在设置面板中配置好识图模型的供应商和模型编号。配置完成后,默认会自动转换聊天中的所有图片,用户也可以根据需求手动关闭自动转换功能。

本插件采用 MIT 许可证开源,使用依赖用户已配置对应识图模型供应商的 API 密钥,插件本身不提供 API 服务。它有超时降级机制:单张图片转换超时 60 秒会重试一次,仍失败则返回占位文本,不影响整个对话流程。卸载插件前需要备份包含图片的会话,卸载后旧会话中的图片无法再被处理。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 note1 项提示
  • 13 stars - an early-stage project星标 13,属于早期项目
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add -w github:poiuyjie/dsh-vision-opencode

把 poiuyjie/dsh-vision-opencode 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-vision-opencode

中文 | English

DeepSeek 不认图?OpenCode 多模态平替方案:给纯文本主模型加一个可配置的识图模型。

dsh-vision-opencode 演示

它能做什么

  • 聊天里发图 → 先交给视觉模型(如 MiMo-V2.5)转成文字,主模型照常回复,不用换模型
  • 输入框右侧「识图模型」下拉,自动列出所有供应商中支持图片的模型
  • 设置 → Vision 独立管理模型;vision_read_image 工具 / vision-image-analysis skill 支持 OCR、图表、截图理解
  • 异常兜底:单次 60s 超时、失败重试 1 次、重试耗尽降级为占位文本,不拖垮回合

安装

方式一(DSH 原生,推荐):

dsh plugin --profile web add -w github:poiuyjie/dsh-vision-opencode

方式二:一键脚本(Ubuntu install.sh / Windows install.ps1):

curl -fsSL https://raw.githubusercontent.com/poiuyjie/dsh-vision-opencode/main/scripts/install.sh | bash

装完重启 dsh,在输入框右侧选择识图模型。

卸载:dsh plugin --profile web remove -w dsh-vision-opencode(或 uninstall.sh)。

卸载前先备份包含图片的会话——卸载后这些旧会话可能无法再发给纯文本主模型。

配置

编辑 ~/.dsh/settings.yaml(也可用设置 → Vision 图形化管理):

vision-opencode:
  provider: ''       # 识图模型供应商;空 = 未选择
  model: ''          # 识图模型 id;空 = 未选择
  autoConvert: true  # 发图自动转换开关;出问题可改 false 关掉

插件自动识别纯文本主模型并接管图片;原生多模态模型保留 DSH 原生链路,无需改模型目录。

渠道状态圆点

设置 → Vision 的渠道(提供方分组)名称旁有状态圆点,与官方「模型」页同款:

  • 🟢 已配置 API 密钥(宿主路由的 apiKeyEnv 或插件写入的 <PROVIDER>_API_KEY 任一可用即绿)
  • 🔴 明确未配置密钥
  • 不显示 = 状态未知(凭据服务不可用等)

识图模型的推理关闭

设置 → Vision 里每个模型有一行「推理」策略:

选项 含义
默认 跟随供应商默认档位,正常思考
关闭 不思考,更快更省;仅当供应商真实声明 off 时提供(如 hy3 off:"none")
强制关闭 尽力关掉思考(如 reasoning_effort:"none"),不保证成功;MiMo 这类未声明 off 的只能选这个

有「关闭」档的模型很少,没有时界面显示「默认 / 强制关闭」并标注「不保证成功」。关掉思考一般能明显降低首 token 延迟和花费(MiMo 实测 reasoning_effort:"none" 可真正关掉)。

推理关闭设置

⚠️ 各供应商对「关闭思考」的声明很混乱(off:"none" / off:null / 无字段各不相同),插件只能尽力按厂商目录区分「关闭」与「强制关闭」并试参数,不保证每个供应商都能真正关掉。

常见问题

  • 只想关掉自动转换(保留工具和选择器):vision-opencode.autoConvert: false 后重启
  • 图片转换异常/选择器不出现:多半是识图模型未选或版本差异,看浏览器控制台报错发 issue
  • 纯文本与多模态主模型自动区分,切换供应商无需再改配置

开发规范

  • 每次推送必须打 tag:git push 前先创建对应版本的 tag 并推送(如 git tag v0.4.0 && git push origin v0.4.0),保证远端每次更新都有可追溯的版本标记。

License

MIT

← 上一个 Prev dsh-kanban 下一个 Next dsh-wechat-bridge →