DSH Plugins Marketplace

DSH Plugins

Plugins

/

Vision & Multimodal

/

dsh-vision-unlock

d

dsh-vision-unlock

Manifest valid

Removes the model-capability gate that blocks image prompts: patches llm.resolveModelInfo results and adapter model tables to declare image input, so routes with no declared input modality can send an

hasBundlePatch

dsh-vision-unlock

去掉 DeepSeek Harness(DSH)「当前模型不支持图片」的拒绝限制,让未声明多模态能力的模型也能发送和读取图片。

不修改 app.asar 里任何一行代码,也不改配置树——纯运行时接缝,随 DSH 升级继续可用。

为什么会被拒绝

DSH 判定一条路由能否吃图片,依据两处能力声明:

  • LlmModelInfo.inputModalities(可选字段)。缺这个字段,或数组里没有 "image", 就被当成纯文本模型。这是所有门禁的唯一判定来源:

    位置表现
    会话控制器 prompt()发送时弹「当前模型不支持图片,请切换支持图片的模型」
    子代理 assertImageCapable向子代理发图被拒
    read_file 读图does not declare image input
    MCP / ACP 图片注入同上
  • 适配器自己持有的模型表(不经过上面那处)。pi-ai 在发请求前查 model.input.includes("image");deepseek 适配器序列化前查 connection.models[].inputModalities。

典型触发场景:自定义/本地网关路由(如 Agent2API、自建 OpenAI 兼容网关)在配置里只写了 id / name / contextWindow / maxTokens,没写 input,于是落到默认值 ["text"], 被判定为不支持图片——哪怕上游模型其实支持。

本插件怎么做

只用两个运行时接缝:

  1. 包装 llm.resolveModelInfo,给结果补上 "image" → 拆掉上表中所有门禁。
  2. 遍历 llm.adapters,把适配器模型表里的 input / inputModalities 补上 "image" → 拆掉 pi-ai 的自检。适配器换快照(配置热更新)时自动重做。

安装

方式 A:用 plugin_manager 安装(推荐)

在 DSH 里让 agent 执行:

plugin_manager  action: install_bundle  target: github:wmk66ds/dsh-vision-unlock

或在 Web UI 的 设置 → 插件 面板里,把上面这串填进安装框。

target 也可以写完整 URL,两种等价:

写法说明
github:wmk66ds/dsh-vision-unlockGitHub 简写,推荐
https://github.com/wmk66ds/dsh-vision-unlock完整 git URL

锁定版本用 # 加 ref:

github:wmk66ds/dsh-vision-unlock#v1.0.0

若本机访问 GitHub 不畅,DSH 走的是它自己的网络栈;必要时先确认你的代理环境 能被 DSH 进程继承(例如 Clash Verge 的 TUN / 系统代理)。

方式 B:手动安装(CLI 或插件管理不可用时的降级方案)

  1. 把本仓库放到一个稳定的路径,例如 D:\workbench\dsh-vision-unlock。

  2. 在你的 profile 目录(默认 ~/.dsh/profiles/desktop/)的 node_modules 下建立指向它的链接:

    cmd /c "mklink /J `"%USERPROFILE%\.dsh\profiles\desktop\node_modules\dsh-vision-unlock`" `"D:\workbench\dsh-vision-unlock`""
    
  3. 编辑该 profile 的 package.json,在 dsh.profile.bundles 数组加入 "dsh-vision-unlock", 并在 dependencies 加入 "dsh-vision-unlock": "link:D:/workbench/dsh-vision-unlock"。

  4. 重启 DSH。

Windows 上用 junction(mklink /J)而不是符号链接——后者需要管理员权限。 注意 desktop profile 由 Electron 应用独占管理,dsh plugin --profile desktop 会拒绝执行,所以才有这里的手动步骤。

配置

cordis.patch.yml 里的 config:

- insert:
    - id: vision-unlock
      name: 'dsh-vision-unlock'
      config:
        providers: []   # 留空 = 所有 provider;否则只放行列出的
        models: []      # 留空 = 所有模型;否则只放行列出的

两个白名单都为空时全部放行;非空时需同时命中才放行。

已知边界

  • deepseek 适配器的模型表来自它自己的 plugin config,不经由 llm.adapters 暴露, 本插件改不到。该路由如需图片,请在设置页给模型勾选 Image(等价于写 inputModalities: [text, image])。
  • 放行后图片真的会发出去。若上游实际不支持多模态,报错会从模型侧返回, 不再是 DSH 本地拒绝——这是预期行为,不是 bug。

卸载

从 profile 的 package.json 中删掉 dsh-vision-unlock(bundles 与 dependencies 两处), 删除 node_modules/dsh-vision-unlock,重启 DSH。

适用版本

针对 DSH 桌面版(含 dsh-llm / dsh-llm-pi-ai / dsh-api-session-controller)验证。 依赖的是 llm.resolveModelInfo 与 llm.adapters 这两个接口,若上游改动需要同步调整。

许可证

MIT

Comments

Loading…

Similar plugins

dsh-image-router

by zhiwuli0228

Digests the images in a prompt with a vision model before admission, so any model — a text-only one included — can read them without the session ever switching models, and adds a describe_image tool f

Tools & CapabilitiesVision & MultimodalManifest valid

★ 0

MIT

JavaScript

Sep 12, 2026

dsh plugin --profile web add dsh-image-router

by br1nosense

Give DSH text-only models vision: an image/OCR/document recognition skill (race pool → custom channels → local) plus an idempotent host patch so image messages reach the model.

Tools & CapabilitiesVision & MultimodalManifest valid

★ 0

PowerShell

Aug 17, 2026

dsh plugin --profile web add @dsh-user/dsh-vision-solution

Give your text-only model eyes - chat image attachments are auto-described via a vision model (default prompt), with iterative re-parsing through model-generated prompts when details are missing; syst

Tools & CapabilitiesVision & MultimodalManifest valid

★ 0

↓ 89/wk

dsh plugin --profile web add dsh-vision-plugin

by NagasakiSoyo-ui

Vision-augmented DeepSeek adapter: a vision-capable model describes image input, then a text-only DeepSeek model reasons over the description.

Tools & CapabilitiesVision & MultimodalManifest valid

★ 1

MIT

TypeScript

Aug 14, 2026

dsh plugin --profile web add @deepseek-ai/dsh-llm-deepseek-vision

by GooDAnDReaDY

Routes images to a vision model of your choice - auto-rewrite, explicit tools, or hybrid - so a text-only chat model does not fail a turn that contains a picture.

Tools & CapabilitiesVision & MultimodalTerminal & ClientsManifest valid

★ 2

↓ 2k/wk

MIT

JavaScript

Sep 26, 2026

dsh plugin --profile web add @goodandready/dsh-vision-bridge

by jyh20030112

Dsh-visual-plugin.Give your text-only model eyes: forward user images to any OpenAI-compatible vision model and see the results in a Web UI right panel

Vision & MultimodalManifest valid

★ 16

↓ 111/wk

MIT

TypeScript

Oct 7, 2026

dsh plugin --profile web add dsh-visual-plugin