WZZNNE/DSH-CyberWorkStation--plugins-_shared ↗★ 23

dsh-cyberworkstation-kit

Shared helpers for the DSH CyberWorkStation plugins for DeepSeek Harness: the loopback write fence for plugin HTTP routes and the stored-session reader (with the source-extras sidecar). A regular dependency of those plugins, not a plugin itself. 作为其他特定套件插件的常规依赖自动引入,普通用户无需手动安装。

패키지
dsh-cyberworkstation-kit
호환성
미검증
Harness peer 범위
*
버전
1.0.0
라이선스
NOASSERTION
최근 업데이트
2026. 9. 16.

설치

검증된 bundle이 없거나 호환성 검사에 실패했습니다. 먼저 저장소 설명을 읽어 주세요. 전체 README 읽기 ↗

dsh-cyberworkstation-kit

Shared helpers for the DSH CyberWorkStation plugins: the loopback write fence every suite router uses and the stored-session reader. It is not a dsh plugin and is never registered in a profile: plugins installed from npm pull it in as a regular dependency, nothing to do by hand. In the repository it is plugins/_shared, and launcher/peer-links.mjs links it next to the plugins so link: installs resolve it.

ModuleWhat it holdsUsed by
dsh-cyberworkstation-kit/session-readStored-session reads on the core's persistence handles (list(), open(id, 'read'), read(), close()), live reads without the removed Session.events, and the source-extras sidecar (~/.dsh/session-source-extras.json: per-message plugin members keyed by message id, fork lineage, the lock file)chat-editor, memory-lite, desktop-pet, drop-files, temp-chat, control-deck
dsh-cyberworkstation-kit/fenceThe loopback write fence for plugin HTTP routes: hostOf, isLoopbackRequest, rejectCrossSite(req, { requireJson, allowLoopbackOrigins }), readBody(req, limit), json(res, code, data), refuse(req, res)every suite-authored router (the forks that carry routes — dsh-vision-bridge-zh and the retired dsh-token-usage-plus — keep their upstream route code)

How it resolves

Plugins are linked into the dsh profile from this directory, so Node resolves their imports from plugins//lib/, walking up to plugins/node_modules/. launcher/peer-links.mjs creates a junction plugins/node_modules/dsh-cyberworkstation-kit → plugins/_shared there, the same way it links the core's own @deepseek-ai/* packages. The launcher runs it before every dsh start and setup.cmd runs it once; a plugin that names dsh-cyberworkstation-kit in its dependencies (a link: install never fetches it, so the junction stands in; an npm install fetches it) gets the link.

Rules

  • A change here reaches every consumer at once: run the maintainer suite (npm test; it lives outside the repository) after editing.
  • Comments in English; no plugin-specific behaviour (a plugin that needs a different body reader keeps its own).
  • The fence's strict form is the default. Only a route that a launcher page calls directly from the browser (another loopback port) passes allowLoopbackOrigins: true; the launcher server itself proxies most calls and never needs it.