插件目录 / Developer / dsh-tool-describe-image
dsh-tool-describe-image
已验证 · 实测可装 sala003
✓ 持续维护 基于 7 个官方 DSH 包 纯 TypeScript
1Stars
0Forks
0未关闭 issue
TypeScript语言
2026-08-13最近推送
跨平台平台
功能简介
(无描述)
我们的评价
可用 — 实测通过,早期项目
可用 — 实测通过,早期项目
(无描述) 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-tool-describe-image
让 DeepSeek 看懂图片的 DSH 插件 —— 通过阿里云百炼(DashScope)qwen-vl 视觉模型,把图片转成文字描述,纯文本模型也能"看见"图片。项目特点
- **粘贴即识别(Web)**:在 DSH Web 会话里直接Ctrl+V 粘贴图片,自动识别成文字描述填入输入框,回车即可发送——不需要文件路径
- **describe_image 工具**:模型按路径读取图片并转成文字,任何 surface(Web / headless)都可用
- **零源码改动**:完全通过 DSH 公开扩展点实现(工具注册、RPC 通道、client-modules),不改 Harness 任何代码
- **单包全包**:一个 npm 包 = host 半区(工具 + RPC)+ 浏览器半区(粘贴识别),dsh plugin add 即装即用
- **安全设计**:RPC 通道仅限 loopback;图片字节不进入模型上下文,只把文字描述带给模型
- **双语文案**:跟随 Web 界面语言自动切换中文 / 英文
工作原理
DeepSeek 官方适配器是纯文本路由,DSH 内置的read_image 工具会在模型不支持 image 输入时拒绝。本插件绕开这道限制:
``
粘贴图片 / 指定路径
→ 图片字节交给百炼 qwen-vl 视觉模型
→ 返回文字描述(作为 tool result 或 draft 文本)
→ DeepSeek 基于文字理解图片
`
- **工具模式**:describe_image(file_path, question?) 注册到 ctx.tools,schema 自动流入系统提示词
- **粘贴模式**:浏览器半区在 document 上挂 capture 阶段 paste 监听,拦截图片 → base64 → host RPC(/dsh-describe-image)→ 文字填入输入框,带"正在识别…"提示与失败 toast
安装
需要已安装 https://github.com/deepseek-ai/deepseek-harness(0.1.0-rc.6+)。
`sh
npm install -g dsh-tool-describe-image
dsh plugin --profile web add dsh-tool-describe-image
`
配置
需要阿里云百炼 API Key(https://bailian.console.aliyun.com/免费开通):
`powershell
$env:DASHSCOPE_API_KEY = "sk-你的key"
`
推荐写入 ~/.dsh/profiles/web/.env,免去每次手动设置:
`
DASHSCOPE_API_KEY=sk-你的key
`
可配置项
| 字段 | 默认值 | 说明 |
| --- | --- | --- |
| apiKey | 无(读 DASHSCOPE_API_KEY) | DashScope API key |
| model | qwen-vl-plus | 视觉模型 id(qwen-vl-plus / qwen-vl-max) |
| baseUrl | https://dashscope.aliyuncs.com | DashScope 端点 |
| prompt | 详细描述指令 | 随图发送的指令文本 |
| maxImageBytes | 8 MiB | 单张图片读取上限 |
| timeoutMs | 60000 | HTTP 协作超时 |
在 ~/.dsh/profiles/web/cordis.patch.yml 中覆盖:
`yaml
- insert:
- id: describe-image
name: 'dsh-tool-describe-image'
config:
model: qwen-vl-max
`
使用
`powershell
dsh web
`
**方式一:粘贴图片**(Web)
1. 任意截图 Ctrl+C
2. 输入框 Ctrl+V
3. 看到"正在识别图片…" → 文字描述自动填入输入框
4. 回车发送
**方式二:按路径描述**
对模型说:
`
描述一下 C:\Users\你的用户名\Pictures\image.png
`
模型会自动调用 describe_image 工具并基于描述回答。
常见问题
| 问题 | 解决 |
| --- | --- |
| 启动报 DashScope API key missing | 未配置 key,见「配置」 |
| 粘贴后没有反应 | 确认安装最新版、重启过 dsh web |
| 识别结果不理想 | patch 中把 model 换成 qwen-vl-max |
| 图片格式不支持 | 仅支持 PNG / JPG / WebP / GIF(按字节检测,不信扩展名) |
开发
`sh
npm install
npm run typecheck # 类型检查(host + client)
npm run build # host 构建
npm run bundle # client bundle 构建
`
测试见 [TESTING.md](TESTING.md)。
技术架构
`
┌─────────────────────────── dsh-tool-describe-image ───────────────────────────┐
│ Host 半区 (lib/index.js) Browser 半区 (lib/client.js) │
│ ├ describe_image 工具 (ctx.tools) └ paste 监听 → RPC → setDraft │
│ └ /dsh-describe-image RPC 通道 (dsh.client 声明 → client-modules 发现) │
│ ↑ 共享 rpc-contract 契约 │
└──────────────────────────────────────────────────────────────────────────────┘
``
许可证
MIT联系方式
- 作者:sala003 - 邮箱:[email protected] - GitHub:https://github.com/sala003/dsh-tool-describe-image - npm:https://www.npmjs.com/package/dsh-tool-describe-image安装
🧩 让 Agent 自动装(推荐)
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-tool-describe-image」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
Web profile:
dsh plugin --profile web add dsh-tool-describe-image Headless(CLI)profile:
dsh plugin --profile headless add dsh-tool-describe-image 包信息
npm:dsh-tool-describe-image · 版本 0.1.0 · 实测环境 dsh 0.1.0-rc.6
实测报告
端到端验证通过:dsh 0.1.0-rc.6 上 L1 安装 + L2 加载 + L3 运行问答。
使用场景
扩展 agent 的编码能力面——给它一个新工具、工作流或集成,让它接手以前做不了的开发任务。
适合谁
想让 dsh 在真实代码库上像队友一样干活的开发者——能改、能跑、能验证,而不只是回答问题。
二次开发建议
工具/命令面就是缝:暴露更多 SDK 能力、加更聪明的上下文接线,或收紧改代码与验证之间的循环。