analyze_image_tool

DSH PLUGIN工具与能力

仓库 caseytso/analyze_image_tool

工具与能力 未标注验证等级 安全审查:未标注 可信度:未标注 可安装插件

为纯文本 DeepSeek Harness 模型添加识图能力,通过 analyze_image 工具将图片转发至任意 OpenAI 兼容视觉端点,支持本地、URL 与粘贴图片。

一句话选型结论

按资料字段整理

analyze_image_tool 是工具与能力类的 DSH 可安装插件,未做沙盒验证,暂无安全审查结论,列出 5 项功能,没有现成安装命令,需要按仓库 README 接入。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类工具与能力 收录类型可安装插件 验证等级未标注验证等级 安全审查未标注
验证等级 UNKNOWN 未标注验证等级
GitHub 星标 0 复刻 0 · 未关闭 issue 未标注
最近更新 2026-08-18 创建于 2026-08-14
README 8.6 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

analyze_image_tool:DeepSeek Harness 的视觉桥接插件

  • 通用视觉端点
  • 沙箱安全读取
  • 结构化返回
  • WebUI 设置面板
  • 与社区工具共存

上游标签

deepseek-harnessdsh-pluginmultimodalopenai-compatiblevisionvlm

验证等级与安全审查

未标注验证等级
自动化流程结论,不是人工审核
验证等级未标注验证等级上游未给出验证结论,安装前请自行确认
安全审查未标注静态分析结论,未标注不代表已通过审查
仓库健康度未标注按仓库活跃度与最近更新时间给出
可信度未标注综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 列出了 5 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 安全审查还没结论,装之前先看仓库改了什么、要什么权限。
  • 没有现成安装命令,要按仓库 README 手动接入。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在工具与能力场景里给 DSH 补能力的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
analyze_image_tool当前 未做沙盒验证 未标注 0 未标注 无
huashu-design 未做沙盒验证 未标注 3.0 万 未标注 有
loopx 未做沙盒验证 未标注 6,233 未标注 无
agy-staff 未做沙盒验证 未标注 870 未标注 有
dsh-startup-screen 未做沙盒验证 未标注 633 未标注 有
minara-skills L4 · 沙盒安装通过 中风险 360 未标注 有

仓库档案

工具与能力
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方caseytso仓库 analyze_image_tool · 默认分支 未标注
分类工具与能力tools
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 0 / 未标注收录时的数值,非实时
创建 / 更新2026-08-14 · 2026-08-18最后推送 未标注
本站收录2026-08-22首次进入本站目录的时间

README 全文

8.6 KB
作者原文,中文版优先;只做安全转义,不改内容

analyze-image-tool

English | 中文

A vision bridge for text-only DeepSeek Harness models: registers an analyze_image tool that answers questions about images via any OpenAI-compatible vision/multimodal endpoint. No vendor is hard-coded — bring your own baseURL + apiKey + model.

用户: 看下 ~/Desktop/error.png 是什么报错
模型 → analyze_image(path="~/Desktop/error.png", prompt="这个报错的完整文本是什么?")
← "TypeError: Cannot read properties of undefined (reading 'map') at …"
模型: 这是一个 … 建议 …

Features

  • Generic endpoint: One config (baseURL + apiKey + model) covers any OpenAI-compatible endpoint — SiliconFlow, DashScope compatible-mode, Zhipu, OpenRouter, Volcano, local Ollama, OpenAI… zero vendor logic in code.
  • Sandbox-safe reading: Local images优先走宿主沙箱 fs 通道(ctx.fs.readBytes),遵守会话路径策略;没有该通道的宿主自动回退到 Node 原生读取。也支持 http(s) URL 和 data: URL。
  • Schema safety: Tool parameters compiled via defineTool to standard JSON Schema with object root(type: "object"), avoiding the pitfall of "tool schema root is not object causing whole session 400 crash"(dsh community #297)。
  • Robustness: API key auto-scrubbed in error messages; reasoning blocks auto-stripped from thinking models;-only responses treated as "reasoning without answer" with actionable prompts.
  • Structured return: { text, model, usage } with endpoint model id and token counts.
  • Coexistence: Tool name analyze_image doesn't conflict with community's view_image / see_image / vision_glance; works alongside patch bridges like dsh-image-bridge.
  • WebUI settings panel: Small eye icon in web session header corner — edit all settings (baseURL / apiKey / model / call params / prompt template), save/switch multiple configs, built-in connectivity test.

Install

Requires: DeepSeek Harness (dsh) 0.1.x, Node.js ≥ 18.17.

# Install from main branch (includes runtime bridge for pasted images; switch to matching tag after release)
dsh plugin --profile web add github:CaseyTso/dsh-analyze-image-tool#main
dsh --profile web

> Note: The v0.1.0 tag is an early version supporting only local path/URL image reading, without the paste-image bridge.

package.json declares dsh.bundle.patch — installed as profile layer automatically, no manual cordis.patch.yml editing needed.

Configuration

Prefer the WebUI panel (recommended), or configure in profile's cordis.patch.yml under the plugin id:

- id: analyze-image-tool
config:
baseURL: https://api.siliconflow.cn/v1     # Any OpenAI-compatible endpoint
apiKey: ***                                  # Leave empty to use below chain
model: Qwen/Qwen3-VL-32B-Instruct           # Vision/multimodal model id on the endpoint
maxTokens: 2048
timeoutMs: 60000                            # Increase for large images / slow endpoints, e.g. 120000
maxImageBytes: 10485760
defaultQuestion: Describe this image thoroughly. Include any visible text verbatim, the overall layout, and notable details.
composerNoteTemplate: 用户在这条消息里粘贴了一张图片(附件 ID: {attachment_id})。要查看图片内容,请调用 analyze_image 并传入该附件 ID(attachment_id 参数)。

composerNoteTemplate supports {attachment_id} and {image_index} placeholders.

Endpoint Examples (same config, pick one)

Use case baseURL Model example Notes
SiliconFlow (default) https://api.siliconflow.cn/v1 Qwen/Qwen3-VL-32B-Instruct Requires key, strong vision
Alibaba DashScope https://dashscope.aliyuncs.com/compatible-mode/v1 qwen3-vl-flash Compatible mode, cost-effective
Zhipu https://open.bigmodel.cn/api/paas/v4 glm-4.6v-flash Free tier available
OpenRouter https://openrouter.ai/api/v1 google/gemini-2.5-flash Multi-model aggregator
Local Ollama http://localhost:11434/v1 qwen3-vl:4b No key needed, fully offline

API Key Resolution Chain (in order)

  1. apiKey saved in WebUI panel(ctx.settings user layer)
  2. Plugin config apiKey(cordis.patch.yml)
  3. Environment variable VISION_API_KEY, then SILICONFLOW_API_KEY(can be in ~/.dsh/.env or exported)
  4. dsh credential channel(VISION_API_KEY, then SILICONFLOW_API_KEY)
  5. Local endpoint (localhost) requires no key

> Leaving apiKey empty in the panel = no override, continues down the chain.

WebUI Settings Panel

Two entry points:

  • Session header eye icon (analyze-image-tool) at top-right of web session header.
  • System settings card (dsh ≥ 0.1.0-rc.7): web settings modal → Plugins → Plugin configuration → the analyze-image-tool card — the same panel, expandable like the built-in plugin cards.

Click to:

  • Edit baseURL / apiKey / model / maxTokens / timeoutMs / maxImageBytes
  • Edit defaultQuestion(default query when model calls analyze_image without prompt)
  • Edit composerNoteTemplate(paste-image-to-text rewrite template, supports {attachment_id} and {image_index})
  • Save multiple config presets: name current config, switch via dropdown; default from cordis.patch.yml
  • Click "Test connectivity": sends a real chat/completions request with a 64x64 test image to verify endpoint and model availability
  • Changes take effect immediately, no restart needed

Panel读写走插件自带的 HTTP API(/api/analyze-image-tool/settings、/api/analyze-image-tool/test),并持久化到 dsh 的 ctx.settings 用户设置中。

Tool Usage

Model calls analyze_image for image-related tasks:

  • path(mutually exclusive with attachment_id): absolute local path, http(s) URL, or data: URL(支持 PNG/JPEG/WebP/GIF/BMP/TIFF/HEIC,默认上限 10MB)。
  • attachment_id(mutually exclusive with path): attachment ID of image pasted into composer(形如 sha256:…), see "Paste image recognition" below.
  • prompt(optional): specific question, e.g. "extract all visible text verbatim", "count buttons", "describe layout". Default is detailed description including all visible text.

Paste Image Recognition (composer images)

Text-only models (e.g., deepseek-v4-flash) cannot receive images natively: DSH rejects "image + text-only model" at the apiproxy prompt inbound gate(MODEL_DOES_NOT_SUPPORT_IMAGES)。This interception point precedes all plugin hooks.

This plugin now includes a runtime bridge — paste images work out of the box(无需再打宿主补丁):

  1. API gateway wrapping: When loaded in web profile, plugin wraps apiProxy.sessions.prompt. On sending messages with images, it first fetches the current session model via session.models, then checks image support via ctx.llm.resolveModelInfo.
  2. Image block rewrite for text-only models: If the current model doesn't support images, plugin persists each image using the host's same attachment strategy(validateImage → saveImage), then rewrites image blocks to user-visible text "用户粘贴了一张图片(附件 ID: sha256:…),要查看请调用 analyze_image(attachment_id=…)", and indexes the full attachment reference in memory. Vision models pass through untouched, receiving images natively.
  3. Model invocation: Model sees the prompt and calls analyze_image(attachment_id="sha256:…"); plugin reads bytes via ctx.attachments.readImage and forwards to the vision endpoint.

Backward compatible with old host patches: If host has already applied apiproxy/prompt-content seam patch, plugin retains seam listening logic; since runtime bridge runs before seam, both paths won't double-rewrite — host patch becomes fallback path(旧方案见 docs/adr/0001,运行时桥接决策见 docs/adr/0002)。

> Limitation: Attachment reference index is in-process; after server restart, attachment IDs in historical sessions can't be read back(需重新粘贴); paste → send → recognize within the same session works fine.

Development

npm test        # node --test, no external dependencies (fetch is mocked)

Security

  • Each call makes one HTTPS request to your configured endpoint; image content sent as base64 — don't send sensitive images you're unwilling to hand to that provider.
  • Plugin writes no files, collects no data, manages no credentials; API keys always scrubbed as *** in error messages.

License

MIT, authors are analyze-image-tool contributors.

常见问题

6 问
答案由本站依据条目字段整理,不引用上游原文
analyze_image_tool 怎么安装?

本站没有抓到该条目的安装命令,请到仓库主页确认安装方式;这类条目多数是生态应用或尚未发布安装包的项目。

analyze_image_tool 的验证等级是什么意思?

未标注验证等级。上游未给出验证结论,安装前请自行确认

analyze_image_tool 安全吗?

未标注。

analyze_image_tool 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

analyze_image_tool 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

analyze_image_tool 有哪些功能?

通用视觉端点、沙箱安全读取、结构化返回、WebUI 设置面板、与社区工具共存。

工具与能力
按星标排序,可作替代方案

huashu-design

huashu-design

在 DeepSeek Harness 里说一句话,就能拿回可交付的设计:网页、App 原型、可编辑 PPTX、动画与信息图,自带 84 种风

未标注验证等级 3.0 万 星

loopx

loopx

LoopX 是面向长周期 Agent 的本地优先控制平面,作为 DSH plugin 为 DeepSeek Harness 提供持久目标、证

未标注验证等级 6,233 星

agy-staff

agy-staff

把 Google Antigravity CLI 作为快速 Gemini 员工接入 DSH,提供子代理侧边栏、编排模式与多种角色技能。

未标注验证等级 870 星

dsh-startup-screen

dsh-startup-screen

DeepSeek Harness 的启动界面与启动动画插件。

未标注验证等级 633 星

dsh-blender-plugin

dsh-blender-plugin

让 AI 模型通过直连 TCP 通道实时驱动 Blender 的 DSH plugin:15 个工具覆盖视口取帧、任意角度渲染、内循环搜索、

未标注验证等级 211 星

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。