# The omdsh-sidepanel bundle patch: one row, inserted over whatever the profile # already composed. # # This package is a PROFILE LAYER, not a harness edit. `dsh plugin --profile # web add @omdsh-plugins/omdsh-sidepanel` installs it into the profile directory # and appends it to `dsh.profile.bundles`, so this file is applied after # `@deepseek-ai/dsh-base` and `@deepseek-ai/dsh-web-app` — the harness tree # stays exactly as it shipped, and removing the plugin removes the row with # it. # # The row is dual-face, the ordinary `dsh.client` shape: # # - node half (`lib/index.js`, loaded here) serves the explorer's three # filesystem reads and the terminal's WebSocket, every one of them fenced # to the requesting conversation's own working directory and behind the # same browser-trust check the `/api` gateway applies; # - browser half (`lib/client.js`) is picked up by `dsh-client-modules`, # which scans every loader entry for a `dsh.client` declaration — an # out-of-tree row is found exactly like an in-box one. # # `webServer`, `sessions`, and `webRuntime` are all host-plane services the # base and web-app bundles already compose; the loader resolves this row after # them. On a surface that composes no `webServer` (the TUI, headless) the row # simply never activates, which is correct: there is no browser to serve. - insert: - id: omdsh-sidepanel name: '@omdsh-plugins/omdsh-sidepanel'