Void0312Aurora/dsh-desktop-electron
Cross-platform Electron desktop shell for the DSH Web GUI: tray-resident standalone window over your own dsh w
Turns the DSH Web GUI into a real desktop window instead of a browser tab. It spawns dsh web, waits for the server's readiness line and hosts the GUI in a sandboxed renderer (sandbox: true, contextIsolation: true, nodeIntegration: false, no preload), with tray residency: closing the window hides it and only Quit terminates the server. A second launch focuses the existing window instead of starting a second server, and quitting tree-kills the server, with a reaper child doing the same if the main process is hard-killed. It bundles no Node runtime and no harness closure — it runs whatever dsh web the machine already provides, so it stays correct across harness upgrades. External links open in the system browser, restricted to http(s). On Windows, where there is no harness confinement backend, it falls back to danger-full-access when DSH_PERMISSION_MODE is unset and logs a warning.
Install
npm install && DSH_HOME=~/.dsh/source/current npm run devREADME "Run from source" quoted verbatim (npm install, then DSH_HOME=~/.dsh/source/current npm run dev). Packaging is documented as npm run dist (installers under release/) or npm run dist:dir for an unpacked directory for a quick smoke test. Registry/release check 2026-09-13: the repository publishes no GitHub release yet (the releases API returns empty), so build from source rather than looking for a prebuilt installer. The README warns installers are unsigned, so Windows SmartScreen and macOS Gatekeeper warn on first run, and the packaged app still needs a dsh on the host.
Compatibility
An Electron desktop shell that targets the public @deepseek-ai/dsh package and relies only on dsh web --host <host> --port <port> plus the dsh web: <URL> readiness line. It resolves dsh in this order: DSH_BIN (explicit executable path), DSH_HOME (a harness checkout root, e.g. ~/.dsh/source/current for an install.sh install, preferring the built apps/cli/lib/bin.js and otherwise the tsx source launch), then dsh on PATH. The server always listens on 127.0.0.1 with an OS-assigned port (--port 0) so it cannot collide with an existing dsh web. Windows, macOS and Linux via a pure Node/npm toolchain.
Details
- Repo: Void0312Aurora/dsh-desktop-electron
- Category: Infrastructure & Deployment
- Stars: 5
- Version: Source build only — no GitHub release published as of 2026-09-13; README documents npm run dist packaging
- Last push: 2026-08-15
- First seen: 2026-08-09
Recent updates
The README documents behaviour and packaging rather than a versioned changelog, and the repository publishes no GitHub releases as of 2026-09-13. Verify the repository for current state before building.
FAQ
- Is there a prebuilt installer?
- The README documents downloading/prebuilt installers only via npm run dist output under release/; no GitHub release was published as of 2026-09-13, so build from source.
- Does it bundle its own dsh?
- No — it is a shell only. It bundles no Node runtime and no harness closure and runs whatever dsh web your machine already provides.
- What happens when I close the window?
- Closing hides the window and the server keeps running; only Quit terminates the server, and quitting tree-kills it (with a reaper child if the main process is hard-killed).
Alternatives
liguobao/dsh-desktop · dataelement/dsh-desktop · JustGenius-s/DSH-Desktop