中文EN

@lr611/visionforge

vision已测通过npmMIT

为 DeepSeek Harness 提供读图与生图/编辑能力(Qwen/OpenAI/Anthropic/Gemini 读图,Qwen-Image 生图与编辑)。基于 liustack/modlens(MIT)改造;请先卸载 @liustack/modlens——两者会注册同一批 vision provider 与图片拦截钩子,并存会导致读图失灵。

下载量 / Downloads
1,218
依赖体积 / node_modules
26.52 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

安装

dsh plugin --profile web add @lr611/visionforge

沙箱测试结果

阶段结果
1 安装✓
2 列装✓
3 挂载✓
4 启动—

四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。

README

VisionForge

给 DeepSeek Harness 装上"眼睛"和"画笔":视觉理解 + 图片生成 + 图片编辑,一个插件搞定。

🌐 [English](README.en.md) | 中文

VisionForge 基于开源视觉插件 liustack/modlens(MIT)深度改造而来:接入千问(Qwen)引擎、新增图片生成与编辑能力、内置图形化设置卡片、支持官方 / 插件双解析优先级调度。改造点全部保留原插件的轻量架构——在 DSH 上只是一个插件目录,卸载即删除,不修改任何 DSH 官方组件,不影响原生功能。

适配环境:DSH Desktop v2.0.17 / DSH harness 0.2.0-rc.2(2026-10 实测)。DSH 大版本更新可能改变插件接口,升级后请重新验证。

插件版本 × DSH harness 对照

插件版本 · 发布日 · 适配 DSH harness · 适配 DSH Desktop · 说明

0.1.8 及更早 · ≤ 2026-09-27 · harness 0.1.x 早期 · — · 基于 liustack/modlens 3.26.3 的分叉/桥接版(品牌化 + 初步集成)

0.1.9 · 2026-09-28 · harness 0.1.7-rc.1 · — · 连接层重写第一版(约 90% 自研,保留上游致谢),功能基线

0.1.10 · 2026-09-30 · harness 0.1.7 系列(-rc.1 / -rc.2) · v2.0.14(2026-09 实测) · 0.1.9 增强版:内容合规文档、设置卡片增强、上架准备

0.2.1(当前) · 2026-10-02 · harness 0.2.0-rc.2(2026-10 实测);兼容 0.1.7 系列 · v2.0.17(2026-10 实测) · 0.1.10 增强版:提示词 100 字门槛 + 六维检测强化 + 细节写作指南 + 多图并行不超时等 5-bug 修复

安装层面的兼容范围(npm peerDependencies):@deepseek-ai/dsh-client-ui-primitives 允许 >=0.0.1-rc.1 <0.1.0 || >=0.1.0-rc.1 <0.2.0-0 || >=0.2.0-0 <0.3.0-0(即 harness 0.1.x 与 0.2.x 系列均可安装),上表为实测版本。

功能一览

能力 · 说明

🖼️ 粘贴即读 · 官方视觉模型下图片粘贴进输入框原生预览;纯文本模型下由插件接管转成本地路径并解析,两种模式都无需手动复制路径

🔭 多提供商视觉引擎 · Qwen / OpenAI(任意 OpenAI 兼容端点)/ Anthropic / Gemini / Antigravity / Claude / Kimi,自动组成故障转移链,一个密钥失败自动轮换下一个

🎨 图片生成 · visionforge_generate_image:文字描述生成图片(Qwen-Image / GLM-Image),支持 1–6 张、多种尺寸

✏️ 图片编辑 · visionforge_edit_image:换装、换背景、多图融合、改表情(Qwen-Image edit),支持 1–3 张输入、批量输出变体(每张不同,绝不重复)

🔍 图片放大 · 对话内生成的图片以90px 缩略图呈现,点击图片本体直接用电脑系统图片查看器打开缓存位置的原图放大——不弹 DSH 侧边栏

⬇️ 一键下载 · 点击「保存图片 N」把缓存图复制到 D 盘根目录(无 D 盘则用户目录 VisionForge 文件夹),并在资源管理器中自动选中刚保存的文件;同样不经过侧边栏

⚖️ 解析优先级 · 官方优先:官方视觉模型能看图时先解析,不行才走插件;插件优先:始终先用你配置的提供商密钥,全部失败才试官方

⚙️ 设置卡片 · DSH 设置页内置「VisionForge 配置」卡片,引擎 / 密钥 / 接口 / 模型 / 优先级全部由你自己填写;密钥保存后显示 •••••• 掩码,不写死在代码里;改动内容时保存按钮高亮,保存成功后恢复灰色

🧩 引擎翻译器(自定义引擎) · 内置引擎之外的任意厂商(Google Gemini、Imagen、OpenAI 兼容网关等)无需改代码即可接入:设置卡片「添加 / 编辑自定义引擎」或 visionforge config add-engine。名称自动规范化并带护栏,接口地址自动识别协议族,读图 / 生图 / 编辑按模型级能力声明

🎨 画质与提示词增强 · 未指定画质时:支持 2K 的引擎(Qwen / Imagen / Gemini)默认 2K(2560×1440),不支持 2K 的引擎(GLM)默认其最大分辨率(2048×2048);支持 4K / 2.5K / 2K / 1080P 分辨率词表,超引擎上限自动降级并说明。图生图自动追加保护性约束(保持面部特征、肢体自然、不加水印),用户明确改某项时自动跳过对应约束,可关

🗂️ 统一目录 · 生成图缓存、粘贴原图缓存、下载目录全部收敛固定,不散落在系统临时目录

🧹 缓存清理 · 生成图与粘贴缓存超过 3 天自动过期清理(启动时执行);已下载的永久副本不受影响

🔗 本地回环服务 · 预览 / 放大 / 下载走本机固定候选端口(45999/46999/47999/48999)loopback 路由,不依赖提供商的临时 OSS 链接(24h 失效),重启 DSH 后旧消息的图仍可预览、放大、下载

安装

方式一:npm 安装(推荐)

npx -y @deepseek-ai/dsh plugin --profile desktop add @lr611/visionforge

安装后进入 DSH 设置 → 内置插件 → VisionForge 配置 卡片填写引擎与密钥,完全重启 DSH Desktop 生效。

若本机已安装旧版 @liustack/modlens,请先移除再安装本包,避免两套插件同时注册同名工具:
npx -y @deepseek-ai/dsh plugin --profile desktop remove @liustack/modlens

方式二:把安装交给你的 AI(不熟悉命令行的用户)

把下面这句话发给你的 AI 助手(DSH 内的助手,或任何能访问本机终端 / 文件的 AI):

按 https://github.com/LR611415/visionforge 的 INSTALL.md 安装并配置 visionforge 插件,完成后运行体检(doctor)并把结果告诉我。

AI 会按 INSTALL.md 的步骤执行:npm 一键安装(或本地复制兜底)→ 配置引擎(可跳过,跳过则随时可去设置卡片补填)→ doctor 体检 → 报告结果。支持 Skill 的 AI 环境可直接加载项目内 skills/visionforge/SKILL.md。

方式三:本地源码复制兜底(离线 / 未发布场景)

见仓库 INSTALL.md 的 Path B:把 dsh/、src/、skills/、cordis.patch.yml、package.json 复制到 DSH 插件安装目录并 npm install。

快速开始

1. 配引擎:DSH 设置 → 内置插件 → VisionForge 配置 → 选择引擎(如 Qwen)→ 填入 API 密钥、接口地址、模型 → 保存(密钥框显示 •••••• 即保存成功)。

2. 看图:把图片复制 / 粘贴进输入框——官方视觉模型下显示原生预览,直接发送即可解析;插件优先时会转路径交给你的提供商密钥解析。

3. 生图:对话里说"生成一张田间的稻草人",模型调用 visionforge_generate_image,对话内直接出现 90px 缩略图,点击图片用系统图片查看器放大,点「保存图片 N」下载到 D 盘根目录。

4. 改图:粘贴 1–3 张图,说"把女生的衣服换成白色 JK 裙",模型调用 visionforge_edit_image 完成编辑,同样带预览与下载。

自定义引擎(引擎翻译器)

内置引擎之外,你可以添加任意厂商引擎(如 Google Gemini、Imagen、自定义 OpenAI 兼容网关),无需改代码即可读图、生图、编辑。图片怎么传给引擎由「协议族」自动决定——你不需要知道 image_url 与 inline_data 的区别。

在设置卡片添加

1. DSH 设置 → VisionForge 配置卡片 → 底部「+ 添加 / 编辑自定义引擎」。

2. 填:引擎名称(自动规范为小写 a-z0-9._-,与内置引擎重名会被拒绝,拼写相近会提示)、显示名(可选)、接口地址(粘贴后自动按域名预填读图协议族)、读图协议族、生图协议族、API 密钥(可留空稍后补)、视觉模型、生图模型(填了才启用生图)。

3. 保存后引擎会出现在顶部引擎下拉中,可设为默认引擎参与解析。

命令行添加

# 读图 + 生图(Google Gemini 示例)
visionforge config add-engine google \
  --base-url https://generativelanguage.googleapis.com \
  --display-name "Google Gemini" \
  --read-family gemini --gen-family chat-native \
  --model gemini-3.1 --gen-model imagen-4.0

visionforge config list-custom        # 查看已添加的自定义引擎
visionforge config remove-engine google   # 删除
visionforge config test google        # 用 1×1 占位图实测连通性(花极少配额)

密钥与模型可稍后在设置卡片或 visionforge config set custom.<name>.apiKey 补填。

协议族(决定图片上传格式)

协议族 · 图片格式 · 适用

openai-compatible(默认兜底) · image_url + data URI · OpenAI 兼容网关、千问、GLM、月之暗面、DeepSeek 等约 90% 厂商

anthropic · image + source base64 块 · Anthropic / Claude 兼容端点

gemini · inline_data(远程图自动拉回 base64) · Google Gemini

raw-base64 · 私有端点直接放 base64 字段 · 自定义私有网关

生图协议族:dashscope-image(Qwen-Image 原生)、openai-image(/images/generations)、chat-native(Gemini 多模态生成)、google-imagen(Imagen :predict / :editImage)。尺寸格式按协议族自动转换(如 Qwen 要 1024*1024、OpenAI 要 1024x1024、Imagen 用比例 1:1),不支持的能力会明确报错而非静默。

名称护栏

  • 名称自动规范化(大小写 / 空格 / 连字符 / 下划线统一);
  • 与内置引擎或已有自定义引擎重名 → 拒绝并说明;
  • 与内置引擎拼写相近(编辑距离 ≤ 2,如 qwenx → qwen)→ 提示「你是不是指内置引擎」,不静默改名;
  • 接口地址域名可识别协议族并自动预填。

设置卡片配置项

字段 · 说明

引擎 · Qwen / OpenAI / Anthropic / Gemini / Antigravity / Claude / Kimi,或自动(按已配置的密钥自动组成故障转移链,谁可用谁解析)

API 密钥 · 由你自己填写,支持英文逗号分隔多 key,鉴权 / 限流 / 配额失败自动轮换;保存后显示 •••••• 掩码,可点选删除

接口地址 · 该引擎的 Base URL(如千问 AI 平台 OpenAI 兼容端点;Antigravity / Claude / Kimi 为 CLI 引擎无需地址)

模型 · 视觉读图模型(如 qwen3.8-max);切换引擎后下拉列表自动切换为对应引擎的常用模型,也可自定义

图生图提示词自动增强 · 开启(推荐):简短编辑指令自动追加保护性约束(保持面部特征、肢体自然、不加水印),你明确要求改某项时自动跳过对应约束;关闭则原样发送

解析优先级 · 官方优先(默认)或 插件优先

图片输出目录 · 生成图片的缓存目录,默认 D:\VisionForge\out

粘贴转

…(truncated)

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:13,最后更新 2026-10-02

链接

GitHub · Homepage · npm

同类插件