dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
让 DeepSeek 看懂图片的 DSH 插件 —— 通过阿里云百炼(DashScope)qwen-vl 视觉模型,把图片转成文字描述,纯文本模型也能"看见"图片。
Ctrl+V 粘贴图片,自动识别成文字描述填入输入框,回车即可发送——不需要文件路径describe_image 工具:模型按路径读取图片并转成文字,任何 surface(Web / headless)都可用dsh plugin add 即装即用DeepSeek 官方适配器是纯文本路由,DSH 内置的 read_image 工具会在模型不支持 image 输入时拒绝。本插件绕开这道限制:
粘贴图片 / 指定路径
→ 图片字节交给百炼 qwen-vl 视觉模型
→ 返回文字描述(作为 tool result 或 draft 文本)
→ DeepSeek 基于文字理解图片
describe_image(file_path, question?) 注册到 ctx.tools,schema 自动流入系统提示词/dsh-describe-image)→ 文字填入输入框,带"正在识别…"提示与失败 toast需要已安装 DSH(0.1.0-rc.6+)。
npm install -g dsh-tool-describe-image
dsh plugin --profile web add dsh-tool-describe-image
需要阿里云百炼 API Key(百炼控制台免费开通):
$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 中覆盖:
- insert:
- id: describe-image
name: 'dsh-tool-describe-image'
config:
model: qwen-vl-max
dsh web
方式一:粘贴图片(Web)
Ctrl+CCtrl+V方式二:按路径描述
对模型说:
描述一下 C:\Users\你的用户名\Pictures\image.png
模型会自动调用 describe_image 工具并基于描述回答。
| 问题 | 解决 |
|---|---|
启动报 DashScope API key missing |
未配置 key,见「配置」 |
| 粘贴后没有反应 | 确认安装最新版、重启过 dsh web |
| 识别结果不理想 | patch 中把 model 换成 qwen-vl-max |
| 图片格式不支持 | 仅支持 PNG / JPG / WebP / GIF(按字节检测,不信扩展名) |
npm install
npm run typecheck # 类型检查(host + client)
npm run build # host 构建
npm run bundle # client bundle 构建
测试见 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
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。