Skip to content

dsh-browser 0.3.2 — the bridge plugin and the extension

Choose a tag to compare

@DightEndless DightEndless released this 11 Oct 05:38
· 25 commits to main since this release

dsh-browser 0.3.2 — the bridge plugin and the extension

Two artifacts, same release:

  • dightendless-dsh-bridge-browser-0.3.2.tgz — the DSH plugin (bridge-browser),
    prebuilt, so no build step and no allowlisting are needed.
  • dsh-browser-extension-0.3.2.zip — the Chrome/Edge extension, already built.
    Unzip it, then load the folder through Load unpacked.
dsh plugin --profile web add https://github.com/DightEndless/dsh-browser/releases/download/v0.3.2/dightendless-dsh-bridge-browser-0.3.2.tgz

The plugin is also on npm — npm i @dightendless/dsh-bridge-browser — for setups that
resolve plugins from a registry rather than from a release asset.

What changed since 0.3.0

The package installs on a DSH 0.2.1-alpha host. 0.2.0-rc.2 hosts worked, but a
0.2.1-alpha.1 host — the build the plugin marketplace states it verifies against — failed
the peer check before the plugin ever loaded:

  • every @deepseek-ai/dsh-* peer was pinned to exactly 0.2.0-rc.2. The ranges now read
    0.2.0-rc.2 || >=0.2.1-alpha.1 <0.3.0. A broad "minimum version" would not have done it:
    npm does not let a prerelease satisfy a range unless that range names a prerelease itself.
  • @deepseek-ai/cordis was left at ~4.0.4 in 0.3.1, and that alone kept the install
    broken
    — every 0.2.1-alpha.1 package declares peer @deepseek-ai/cordis@~4.0.5-alpha.1,
    so npm resolved cordis down to 4.0.4 and then failed with ERESOLVE. The range is now
    ~4.0.4 || ~4.0.5-alpha.1.
  • @deepseek-ai/dsh-invariants is an optional peer: it has no 0.2.1-alpha.*
    publication at all, and this package imports only its types — the companion plugin carries
    inject: ['invariants'], so a host without that service never mounts it.

The 0.3.1 tarball already carried the dsh-* ranges; 0.3.2 exists because 0.3.1 was
published twenty minutes earlier and npm versions are immutable. The cordis gap was found by
installing the published 0.3.1 tarball next to the alpha peer set in an empty project, which
is also the check that now passes for 0.3.2.

The READMEs name npm beside the release tarball, in both languages.

No extension behaviour changed in either release: the zip differs from 0.3.0 by its manifest
version alone.

Requirements

Chrome 116+ (or Edge); DSH 0.2.0-rc.2 or newer within 0.2.x, including the 0.2.1-alpha
line; and, for the installer route only, Node.js 22+ with pnpm.

Checked on a real 0.2.1-alpha.1 host (2026-10-11): a clean DSH_HOME
plus npx @deepseek-ai/dsh@0.2.1-alpha.1 web composed this bundle, the plugin wrote its boot-time ext-bridge-token, and a WebSocket handshake to /ext/bridge completed before the bridge closed it with code 1008 for a malformed first frame. Re-run it yourself; the marketplace's own verification is still the record that counts.

Three ways to install

  1. Plugin from this release (one command, nothing to build) — the line above, or
    npm i @dightendless/dsh-bridge-browser.
  2. Extension only — download dsh-browser-extension-0.3.2.zip, unzip, then
    chrome://extensions → Load unpacked → pick the unzipped folder.
  3. Everything from source — the installer in the README clones the repository, builds
    both halves and registers the plugin bundle.

Then open the side panel on any page and ask: the model sees a numbered inventory of what is
on screen and acts through those numbers.