Files
lefarcen 6788a8667b fix(dsh): support DeepSeek Harness 0.1.2-rc.1, now npm's latest (#7825)
`@deepseek-ai/dsh@0.1.2-rc.1` was published on 2026-09-03 and holds npm's
`latest` dist-tag, so it is what a user who installs without naming a version
receives. Both of our authorities rejected that line:

  - the agent def did not accept `0.1.2-rc.1`, so Settings labelled the user's
    CLI untested;
  - `packages/dsh-runtime`'s peer ranges evaluated to false for it, because
    semver admits a prerelease only against a comparator sharing its exact
    major.minor.patch and carrying a prerelease of its own — so the companion
    component could not resolve at all. That half is silent, which makes it the
    worse one.

Move the installers to `0.1.2-rc.1` with a resolution cutoff between its publish
time and any successor, add the `0.1.2-rc.N` alternative to the accepted line,
and add the matching comparator to all five dsh peers. All five, because a
single updated peer would otherwise vouch for the other four.

The Alpine fallback in install-dsh.sh named `0.1.0-rc.6` — two patch lines stale,
because nothing pointed at it when the pin moved. It now interpolates
$DSH_VERSION.

Both test files previously pinned the broken state, asserting `0.1.2-rc.1` was
rejected; they now assert the invariant and went red before any source change.
`0.2.0-rc.1` stays refused by both authorities so the widening cannot decay into
accepting everything.

`packages/dsh-runtime`'s dependencies and devDependencies stay at `0.1.1-rc.2`
on purpose: bumping them resolves a mixed-generation tree (dsh-scope and
dsh-settings stay on 0.1.0-rc.6) and wants a cordis bump too. See the PR body.

Claude-Session: https://claude.ai/code/session_01B8MaA1ABkvbnfaYUKw3UH3
2026-09-07 07:33:19 +00:00
..

@open-design/dsh-runtime

Profile bundle that lets OpenDesign drive a user-installed DeepSeek Harness through a strict JSONL stdio protocol. It does not ship the dsh executable, Node.js, credentials, or provider configuration.

Install DeepSeek Harness first. Packaged OpenDesign builds carry an exact, integrity-checked tarball of this component. When the DeepSeek Harness card reports that the connection component is required, selecting the card asks for confirmation and then invokes the user's own dsh to install that tarball into the open-design profile. OpenDesign does not download or install dsh.

Repository developers can perform the equivalent operation manually:

pnpm --filter @open-design/dsh-runtime build
pnpm -C packages/dsh-runtime pack --pack-destination <temporary-directory>
dsh plugin --profile open-design add <temporary-directory>/open-design-dsh-runtime-0.1.0.tgz
dsh --profile open-design --probe
dsh --profile open-design --models

The daemon and od agent setup deepseek-harness --json use the same setup endpoint as the UI. Setup is always explicit on the first incompatible selection; cancelling does not select the agent or mutate the Harness profile.

The probe prints exactly one JSON object. OpenDesign starts one short-lived dsh --profile open-design --stdio process per run; Harness session storage provides cold resume across later processes.

The models command prints the provider-qualified catalog assembled by the user's Harness profile. OpenDesign refreshes this read-only catalog during agent detection; credentials and secret values are never included.