TwistedRiCen/dsh-vision-bridge

Plugin ⭐ 1 NOASSERTION visual

DSH-native Vision Evidence bridge for text-only reasoning models with native image attachments and strict multi-image validation.

Install

1. **Detect.** The bridge examines each outgoing message for image blocks
   (including images nested inside tool results).
2. **Analyze.** Images are sent to the configured image-capable Vision route
   via DSH's LLM service. The bridge itself only consumes the `llm` service —
   raw attachment bytes are resolved by the Vision provider's own adapter.
3. **Validate.** The Vision output must be one complete JSON document that
   passes the local Evidence schema check.
4. **Transform.** The validated Evidence is rendered as an explicitly
   untrusted text block (plus positional `[Image n]` anchors for multi-image
   batches) and forwarded to the text-only downstream provider.
5. **Fail closed.** If any step fails, the whole request fails and nothing
   reaches the downstream provider.

## Requirements

- **DeepSeek Harness** with a working profile and the `dsh` CLI available
  (installed on your `PATH`, or run on demand through
  `npx @deepseek-ai/dsh …`). DSH is a *developer preview*; this plugin is
  tested against the DSH checkout at commit
  `47f943859bef60e4160492346772ded9b24f765a` (CLI `0.1.0-rc.5`), and the
  installation/upgrade/uninstall flow documented here was also verified
  against the currently published CLI `0.1.0-rc.6`. Compatibility with other
  DSH versions is not guaranteed.
- **Node.js ≥ 22.19** — the declared engine. The plugin runs inside DSH's own
  Node.js process; building from source requires it too.
- **pnpm** on your `PATH` — the `dsh plugin` command manages profile plugins
  by forwarding to pnpm.
- **A text-only reasoning route** (the *upstream*) — the model you want to
  wrap must positively declare text input and not declare image input.
- **An image-capable Vision route** — a model that positively declares image
  input, plus its credentials configured in DSH's credentials layer. The
  bridge stores no credentials of its own.
- **Platform.** Developed and verified on Windows. The plugin itself is
  platform-independent JavaScript, but no claims are made about untested
  operating systems.

## Installation

The project is distributed through two official channels:

| Channel | Identity |
|---|---|
| GitHub Release | repository `dsh-vision-bridge` — release tarball + guided installer |
| npm | official package **`@liangdacheng/dsh-vision-bridge`** (public, `registry.npmjs.org`) |

> **Important:** The official npm package for this project is
> `@liangdacheng/dsh-vision-bridge`. The unscoped npm package
> `dsh-vision-bridge` is unrelated to this project and is not published or
> maintained by this repository. Do not install it as this project.

npm publication starts with v0.2.4; v0.2.3 and earlier were distributed only
via GitHub Release and were never published to npm. The current stable
release is
**[v0.2.4](https://github.com/TwistedRiCen/dsh-vision-bridge/releases/tag/v0.2.4)**.

Release facts for v0.2.4:

| | |
|---|---|
| Release page | <https://github.com/TwistedRiCen/dsh-vision-bridge/releases/tag/v0.2.4> |
| Artifact | `dsh-vision-bridge-0.2.4.tgz` |
| SHA-256 | published in the `dsh-vision-bridge-0.2.4.tgz.sha256` release asset |
| npm package | `@liangdacheng/dsh-vision-bridge@0.2.4` |

For future versions, follow the same steps with the values from the
[latest release](https://github.com/TwistedRiCen/dsh-vision-bridge/releases/latest).

### Quick Install (recommended)

A guided installer automates download, SHA-256 verification, plugin install,
profile configuration (with backup and rollback), and validation. It does
**not** need a global `dsh` install — the installer drives a pinned, tested
DSH CLI (`@deepseek-ai/dsh@0.1.0-rc.6`). You only need **Node.js >= 22.19**
and **pnpm** on your `PATH`.

Add TwistedRiCen/dsh-vision-bridge to your DSH config (web profile) to enable.

README

Expand full README Collapse

README is empty.