Preface¶
The DeepSeek Harness Web UI depends on crypto.randomUUID() when invoking mintRpcId(). Browsers expose this API only in a secure context (HTTPS or loopback). Pure HTTP LAN addresses such as http://192.168.1.66:3080 do not qualify as secure contexts, causing crypto.randomUUID to be undefined. Once it is missing, every single RPC call (such as host.describe or workspace.list) throws TypeError: crypto.randomUUID is not a function, connection generation aborts, the WebSocket handshake is interrupted, and the UI fails to load the session/workspace baseline.
Plugin Identification¶
dsh-lan-uuid-fix is a DeepSeek Harness plugin package maintained by Zenjibad. It injects a compatibility layer in non-secure contexts so that the Web UI can operate over a pure HTTP LAN.
Core Features¶
- Polyfills
crypto.randomUUIDin insecure contexts. - Enables the Web UI to run over a pure HTTP LAN.
- Registers an index tap on
ctx.webServer. - Injects an inline polyfill that defines
crypto.randomUUID.
Installation and Enablement¶
Install using the official command:
dsh plugin --profile web add https://github.com/Zenjibad/dsh-lan-uuid-fix
Note: The Profile patch layer is applied live (HMR), so a running dsh web instance will pick it up automatically without a restart. A hard refresh is required on remote devices.
Typical Usage¶
Verify that the polyfill was injected successfully:
curl -s http://<host>:3080/ | grep randomUUID # polyfill present
Applicable Scenarios and Notes¶
- License: MIT License.
- Conflict Handling: If a local file path for that line was previously added to the configuration file, remove that line first to avoid duplicate IDs.
- Application Mechanism: The Profile patch layer is applied live (HMR); no service restart is required.
The plugin runs under the permissions of the current dsh process. Check the source code and license before installation.
Closing¶
By resolving the absence of crypto.randomUUID in non-secure contexts, this plugin restores connection stability within a LAN. For more details and the source code, refer to the plugin directory or the GitHub repository.