前言¶
DeepSeek Harness(DSH)的主力对话模型以纯文本为主,无法直接读取聊天里粘贴的图片。常见做法是先把图片存成文件,再把路径交给模型或另开一条多模态链路,步骤多、上下文也容易断。
ModLens 是 DSH 生态里的视觉插件,由 liustack 维护,在 GitHub 上开源(MIT 许可证,约 3600 stars)。它把粘贴的图片交给独立的视觉引擎处理,再把 OCR、版面结构和语义信息整理成结构化 JSON 证据交给文本模型,让 DeepSeek、GLM 等纯文本模型也能基于图片内容作答。
这是什么¶
ModLens(@liustack/modlens)的定位是:给纯文本编码智能体外挂视觉能力。在 DSH 里,它是一个独立插件;在其他 harness(Claude Code、Codex、OpenCode、Pi 等)里,对应一个 skill 目录。
插件不修改 harness 核心配置,也不依赖本地代理进程。卸载时删除对应目录即可恢复默认行为。
核心功能¶
直接粘贴图片¶
安装后,在对话里粘贴图片或拖入路径即可触发。图片会经 modlens_read_image 工具送入视觉引擎,返回结构化证据,而非让模型凭空猜测画面内容。
证据包含完整转录文本、按阅读顺序排列的版面区域,以及实体与关系列表。同一张图粘贴一次后,后续追问无需重复粘贴。
两种粘贴路径¶
在 DSH 中,粘贴图片有两种交互方式:
- 直接粘贴:图片先落到临时文件,路径进入输入框,再由
modlens_read_image接管处理。这与 OpenCode、Pi 等 harness 的默认行为一致。 - 选择
(modlens vision)模型:在模型选择器里选带(modlens vision)后缀的条目(例如DeepSeek-V4-Flash (modlens vision)),再粘贴图片。缩略图会保留在消息里,请求时再转换为结构化证据。
插件会自动发现各 provider 路由上符合条件的纯文本 DeepSeek、GLM、MiMo Pro 模型,并为每条路由添加包装条目。已确认具备原生视觉能力的模型不会被接管。
多引擎与故障转移¶
ModLens 不绑定单一视觉服务。内置六种 provider,并可复用本机四个 agent CLI 的已有登录态,共十种视觉来源。内置 provider 包括:
| Provider | 所需条件 | 单次读取耗时 | 适用场景 |
|---|---|---|---|
gemini-api |
免费 Gemini API key | 约 5–10 秒 | 推荐默认 |
openai |
OpenAI 兼容端点(key + baseUrl + model) | 约 5–10 秒 | qwen-vl、GLM、自建网关 |
anthropic |
Anthropic API key | 约 5–10 秒 | 已有 key 的环境 |
antigravity-cli |
免费 agy CLI,浏览器登录一次,无需 key |
约 15–45 秒 | 不想注册 API 时 |
逗号分隔的多组 key 在鉴权、限流或配额失败时会轮换;其他类型错误会跳过剩余 key,沿用原有 provider 故障转移逻辑。
在 DSH 中,也可通过 Settings → Plugins → Plugin config 里的 ModLens 卡片切换引擎、勾选 auto 模式可复用的本地 CLI,保存后立即生效。
安装与启用¶
在 DeepSeek Harness 中安装¶
当前版本为 3.25.0,要求 Node.js >= 22.19。在终端执行:
npx -y @deepseek-ai/dsh plugin --profile web add @liustack/modlens@3.25.0
安装与更新细节见仓库文档 docs/harness-setup.md。
配置视觉引擎¶
零配置即可启动:若本机已有 Claude Code、Codex、OpenCode 或 Pi 的登录态,安装流程会询问是否复用。健康检查会报告当前可用引擎。
若健康检查为空,可任选以下方式之一:
- 在 Google AI Studio 申请免费 Gemini API key(约三分钟,无需信用卡)。
- 安装 Antigravity CLI 并登录:
curl -fsSL https://antigravity.google/cli/install.sh | bash
agy
登录完成后退出即可。agy 作为免费通道,无需 API key。
在其他 harness 中安装¶
把下面这句话发给本机 AI,让它按 INSTALL.md 完成安装与健康检查:
Install and configure the modlens skill following https://github.com/liustack/modlens/blob/main/INSTALL.md, then run the health check and tell me the result.
典型用法¶
安装完成后直接对话即可,无需额外命令。典型流程:
- 在聊天窗口粘贴截图、照片或设计稿,也可以拖入本地图片路径。
- 用自然语言提问,例如「这张图里的报错信息是什么」「表格第三列的数字总和是多少」。
- 插件自动调用视觉引擎,把读取结果以结构化 JSON 证据注入上下文,文本模型据此作答。
需要截屏快捷键时,可使用独立插件 dsh-screenshot。
适用场景与注意¶
适合谁
- 在 DSH 里使用 DeepSeek、GLM 等纯文本模型,但需要分析截图、文档扫描件、UI 设计稿或报错界面。
- 希望一次安装、在多个 harness 间复用同一套视觉能力,且不想改动 harness 核心配置。
- 已有 Gemini、OpenAI 兼容或 Anthropic key,或愿意用免费的 Antigravity CLI 作为视觉后端。
使用前注意
- 插件以当前 DSH 进程的权限运行,图片会发送到所配置的视觉引擎。安装前请阅读源码与 SECURITY.md,确认引擎选择与数据处理方式符合你的安全要求。
- 不同引擎的读取耗时差异较大(约 5 秒到 45 秒),可按场景在设置页切换。
- SkillHub 社区目录(skillhub.cn)由社区维护,与 DeepSeek / 幻方无官方从属关系;插件版本以 npm 与 GitHub 发布为准。
结尾¶
ModLens 把「粘贴图片 → 结构化证据 → 文本模型作答」串成一条链路,让纯文本模型在不改 harness 核心的前提下获得视觉能力。如需查看插件详情或提交 issue,可访问社区目录页与 GitHub 仓库:
- 目录页:https://www.skillhub.cn/plugins/liustack/modlens
- GitHub:https://github.com/liustack/modlens