imkingjh999 / dsh-tool-accurate-vision

已收录

Model-facing accurate_vision tool for DeepSeek Harness: precise spatial reasoning via any OpenAI-compatible vision model (0-1000 bbox primitives + annotated SVG)

main模型工具 查看源代码

安装

npx -y @deepseek-ai/dsh plugin --profile web add github:imkingjh999/dsh-tool-accurate-vision

此安装命令根据 GitHub 仓库地址生成,是未经验证的安装起点。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 042e5c0同步于 2026年8月18日

dsh-tool-accurate-vision

Awesome DSH Plugin

Model-facing accurate_vision tool for DeepSeek Harness: precise spatial reasoning over an image file via an OpenAI-compatible vision model. Ported from pi-accurate-vision.

A vision model reads the image and returns a structured note plus bounding-box primitives normalised to 0–1000; this tool formats them as a <vision-context> block the next model turn reads — giving a text-only agent exact object positions, layout, and OCR without losing spatial fidelity.

English | 中文

Install

dsh plugin --profile web add dsh-tool-accurate-vision

Or from source:

dsh plugin --profile web add github:your-username/dsh-tool-accurate-vision

Set the vision API key (separate from DEEPSEEK_API_KEY):

export VISION_API_KEY=sk-...

How it works

image file ──► base64 data URL ──► vision chat/completions ──► JSON note + primitives
                                                                      │
                                                          <vision-context> XML ──► next model turn

The pure vision core (src/bridge.ts) is provider-agnostic: any OpenAI-compatible multimodal chat/completions endpoint works. The Cordis host (src/index.ts) owns config, credential resolution, and the registered tool.

Every call also writes a self-contained SVG — the original image with every bounding box and label drawn on it — returned as the annotatedImage path, so the boxes can be eyeballed instead of trusted blind (set annotate: false to skip it).

Case study: rigorous distance computation

Ask an image question with a checkable answer — in this hand-drawn physicists network, which node sits physically closest to 居里夫人 (Marie Curie), ignoring the connecting lines? — and the gap between plain vision and this tool becomes measurable. The test image is the aged network diagram below:

The test image: a hand-drawn physicists network

  1. Asking a multimodal model directly yields a visual impression, not a measurement: "郎之万, at the lower left, looks closest" — nothing to verify, and as it turns out, wrong.

    A plain VLM answers by intuition

  2. Vision text without structured primitives can be worse than no numbers at all: the model invents plausible-looking coordinates in prose, then contradicts itself — a claimed ~15-unit gap while its own two boxes imply 59 — and returns the same wrong answer.

    Unstructured output hallucinates coordinates

  3. With this tool's normalised primitives, every node carries a checkable 0–1000 bounding box, so the agent computes real edge-to-edge distances in code: 皮卡尔德 25.96 vs 郎之万 58.00. The correct answer — 皮卡尔德 (Piccard) — arrives with the numbers that prove it.

    Structured primitives enable exact distances

That is the core advantage: bounding-box primitives turn visual impressions into geometry. Positions, distances, and layout become facts a text-only agent can compute and verify, not guesses it has to trust. For distance questions the canonical edge-to-edge computation pairs the facing edges per axis (dx = max(a.x1 - b.x2, b.x1 - a.x2, 0), same for y, then hypot); the tested helper bboxEdgeDistance(a, b) ships with this package so downstream agents never pair the wrong edges.

Configuration

Override in your profile's cordis.patch.yml:

- id: tool-accurate-vision
  config:
    model: gpt-4o              # any OpenAI-compatible multimodal model
    baseURL: https://api.openai.com/v1
    apiKeyEnv: VISION_API_KEY  # credential reference
    primitives: true           # request bounding-box primitives
    annotate: true             # also write an SVG with boxes drawn on the image
    maxTokens: 8192
    timeoutSecs: 120
    temperature: 0
    disableThinking: true     # skip the reasoning phase (MiniMax): faster & steadier

Origin

Faithful port of pi-accurate-vision (which itself extracted DeepSeek-TUI's crates/tui/src/vision/bridge.rs). The parsing, prompt, and formatting logic is preserved verbatim; only the host integration targets the Cordis ctx.tools registry with schemastery config and the credentials seam.

License

MIT

项目文件与信号

以下项目是目录快照中检测到的公开仓库信号。

测试已检测
文档已检测

仓库信息

开发语言
TypeScript
许可证
MIT
最后更新
2026年8月17日 09:25

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。