johnoooooo/dsh-view-image ↗★ 0
dsh-view-image
让 dsh 用独立的 OpenAI 兼容视觉模型读图:主对话历史只保留纯文本描述,图片字节不进上下文,纯文本模型也能读图。
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:johnoooooo/dsh-view-image说明文档
阅读完整 README ↗配置视觉模型
复制示例并编辑 $DSH_HOME/vision-model.json(默认 ~/.dsh/vision-model.json):
cp vision-model.example.opencode.json ~/.dsh/vision-model.json
阿里云百炼(通义千问 VL):
{
"baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions",
"apiKey": "sk-your-aliyun-api-key",
"model": "qwen3.7-plus",
"api": "openai-completions",
"maxTokens": 2048
}
opencode.ai(MiMo-V2.5):
{
"baseUrl": "https://opencode.ai/zen/go/v1/chat/completions",
"apiKey": "sk-your-api-key",
"model": "mimo-v2.5",
"api": "openai-completions",
"maxTokens": 8092
}
| 字段 | 说明 |
|---|---|
baseUrl | OpenAI 兼容端点(Ollama /v1 / vLLM / LiteLLM / OpenRouter / opencode.ai 等;省略 /chat/completions 后缀时插件自动补) |
apiKey | 端点 API Key(占位 sk-your-api-key 换成自己的) |
model | 视觉模型名(如 mimo-v2.5) |
api | 协议:openai-completions(默认,@ai-sdk/openai-compatible 兼容) |
maxTokens | 最大输出 token(默认 2048;密集 OCR 可提到 4096-8192) |
配置缺失时插件正常加载但不注册 view_image(只打一条日志),补齐后重启或 /reload 生效。
可选插件配置
插件 bundle 自带默认配置(见仓库 cordis.patch.yml),开箱即用,一般无需修改。
使用
Web 界面(粘贴图片)
- 输入框直接粘贴图片(Ctrl+V)。
- 纯文本路由下(如 deepseek-v4-flash):插件把图片落库为持久附件,替换成文本标记
[Image Attachment: ...]发给模型——不再弹「当前模型不支持图片」。 - 模型看到标记自动调用
view_image,返回纯文本描述;聊天流里用户消息内联显示缩略图(一次多张全部显示),支持点击放大、悬停「复制」按钮一键加入输入框(同时尽力复制到剪贴板)、拖拽回输入框。
原理:插件包装宿主 apiProxy.sessions.prompt,仅在纯文本路由时改写图片;模型支持图片的路由完全走原生流程。
终端 / headless(图片路径)
模型会自动调用 view_image 读取图片:
dsh --profile headless "用 view_image 工具查看 /path/to/img.png 并描述内容"