Terry12138qy/dsh-vision

DeepSeek Harness识图插件:为不具备原生识图能力的模型提供识图能力(阿里云百炼qwen3.5-omni-plus,失败自动切换智谱glm-4.6v-flash)。由claude-vision-skill移植适配。

Project Overview项目介绍

This is a natively built plugin specifically for DeepSeek Harness (DSH), created to add image description functionality to DSH instances that do not natively support vision input. To install the plugin, you can run the command dsh plugin --profile web add github:Terry12138qy/dsh-vision directly from your DSH CLI, or install it from a local directory by pointing the command to your absolute local file path. After installation completes, you must restart your dsh web instance for the plugin to load and take effect.

The plugin accepts both local image file paths and remote image URLs as input. It processes the input image by converting it to base64 encoding, then sends it to a configured multimodal large language model API to get a text description. It uses Alibaba Cloud DashScope’s qwen3.5-omni-plus as the default primary model, and will automatically switch to a Zhipu glm-4.6v-flash backup model if the primary API call fails for any reason, such as quota limits, expired billing, or service outages.

Configuration can be done either via environment variables, which is recommended to avoid committing sensitive API keys to public code repositories, or by editing the config section in the cordis.patch.yml file. Environment variable configurations take priority over settings written in the config file. You can configure separate API keys, base URLs, and model names for both the primary model and the fallback backup model. To use the plugin after configuration, simply send your image path or URL to the DSH agent and it will automatically call the vision tool to process your request.

这是专门为DeepSeek Harness开发的原生插件,为本身不具备原生识图能力的DeepSeek Harness添加了视觉识别能力。它可以接收本地图片路径或者网络图片URL,将图片发送给多模态大模型后返回中文描述。默认使用阿里云百炼的qwen3.5-omni-plus作为主模型,主模型调用失败时会自动切换到智谱的glm-4.6v-flash备用模型。

这个插件基于原Claude Code的claude-vision-skill项目改编,将原项目的核心识图流程完整保留,仅针对DeepSeek Harness做了适配改造。核心流程从读取图片转换为base64编码,调用OpenAI兼容接口获取描述,到主模型失败自动切换备用模型都和原项目一致。改动部分包括打包为DSH bundle格式,注册为DSH可用的vision工具。

安装可以通过dsh plugin命令从GitHub仓库或者本地路径添加,安装后需要重启dsh web生效。配置支持环境变量或者修改cordis.patch.yml中的配置项,环境变量优先级更高,可分别配置主模型和备用模型的API密钥、地址和模型名称。用户只需要发送图片路径或URL给agent就能调用这个工具完成识图。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 3 stars - very few users, little community feedback星标只有 3,几乎没人在用,遇到问题缺少社区反馈
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 github:Terry12138qy/dsh-vision

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

READMEREADME

dsh-vision

给不具备原生识图能力的 DeepSeek Harness 模型装上「眼睛」。

把图片(本地路径或网络 URL)发送给多模态大模型,返回中文文字描述。主模型为阿里云百炼(DashScope)qwen3.5-omni-plus,调用失败(额度用尽 / 欠费 / 限流)时自动切换智谱 glm-4.6v-flash 备用模型。

原始来源与适配说明

  • 原始项目:asuojun/claude-vision-skill —— 面向 Claude Code 的识图 skill,核心是 vision.js(读图 → base64 → 调 OpenAI 兼容接口 → 返回文字描述,主模型失败自动切备用模型)。
  • 本项目:专门为 DeepSeek Harness 做了适配,把原来的 Claude skill 重写为 DSH 的 bundle 插件,注册一个 vision 工具。识图主流程(读图 → base64 → 调 API → 返回文字、主/备模型自动切换)原样保留。

相较原版的主要改动:

  • 打包成 DSH bundle(dsh.bundle.patch),可通过 dsh plugin 安装;
  • 注册为 DSH 的 vision 工具(Code Mode 里 await tools.vision(...) 可直接调用);
  • CJS → ESM;配置改为「环境变量 > cordis.patch.yml config > 默认值」(原 .env 语义不变);
  • 增加 exec.signal 取消支持(DSH 工具契约要求)。

安装

dsh plugin --profile web add github:Terry12138qy/dsh-vision

或本地路径:

dsh plugin --profile web add file:/绝对/路径/dsh-vision

安装后重启 dsh web 生效。发布到 GitHub 后,记得给仓库添加 dsh-plugin 主题,方便被 DeepSeek Harness 生态发现。

配置

密钥通过环境变量(推荐,避免密钥进仓库)或编辑 cordis.patch.yml 的 config:

用途 环境变量 config 字段
主模型 API Key DASHSCOPE_API_KEY apiKey
主模型 Base URL DASHSCOPE_BASE_URL baseUrl
主模型名 VISION_MODEL model
备用模型 API Key FALLBACK_API_KEY fallbackApiKey
备用模型 Base URL FALLBACK_BASE_URL fallbackBaseUrl
备用模型名 FALLBACK_MODEL fallbackModel

环境变量优先于 config。示例见 .env.example。

使用

配置好后,直接发图片路径或 URL,agent 会调用 vision 工具:

帮我看下这张图 C:\path\to\image.png

工作原理

图片(路径/URL) → 读文件 → base64 data URL → POST /chat/completions → 文字描述
                                           └─ 主模型失败 → 自动切备用模型 → 重试

致谢

衷心感谢 asuojun 开源 claude-vision-skill —— 本项目的识图主流程正是基于它的 vision.js 移植而来,才有了这个让 DeepSeek Harness 也能「看图」的插件。

许可

  • 本适配代码:MIT License(见 LICENSE)。
  • lib/vision.js 的识图主流程移植自 asuojun/claude-vision-skill,请保留其署名并遵守原始项目的要求。
← 上一个 Prev dsh-deepseek-balance-widget 下一个 Next dsh-skill-loader →