dsh-zen-remote

One DeepSeek Harness plugin, two roles. The host turns DSH into a phone-reachable PWA (mobile UI, pairing gateway, lock-screen push) and shares chosen sessions to paired desktops. The client runs inside another DSH desktop app and puts the host's shared sessions right into its own sidebar — full history, live progress, messages, approvals, terminal, everything executes on the host.

npm version npm downloads publish workflow MIT
DeepSeek Harness 0.1.7 – 0.2.x Node npm provenance PWA + Web Push TypeScript strict

中文文档

| Session list home | Session page | Session info card | | --- | --- | --- | | ![Session list home](assets/home.png) | ![Session page](assets/session.png) | ![Session info card](assets/info.png) | | Composer permission sheet | Pairing page a public visitor sees | | --- | --- | | ![Composer permission sheet](assets/sheet.png) | ![Pairing page](assets/pairing.png) | > Screenshots are a 390×844 phone viewport in the light theme; both themes are supported. The pairing page is drawn by the gateway in DSH's official style, following the system light / dark appearance. --- ## Contents 1. [Install](#1-install) 2. [Quick Start (Unified Setup & Pairing Wizard)](#2-quick-start-unified-setup--pairing-wizard) - [Scenario A: Set up as Host (Phone & Desktop Access)](#scenario-a-set-up-as-host-phone--desktop-access) - [Scenario B: Set up another computer as Desktop Client](#scenario-b-set-up-another-computer-as-desktop-client) 3. [Daily Usage: Session Sharing & Cross-Device Workflow](#3-daily-usage-session-sharing--cross-device-workflow) 4. [Lock-Screen Push: When Notifications Fire](#4-lock-screen-push-when-notifications-fire) 5. [Features](#5-features) 6. [Advanced Settings & Field Reference](#6-advanced-settings--field-reference) 7. [Security Model, Version Tolerance & Known Notes](#7-security-model-version-tolerance--known-notes) --- ## 1. Install ### Install from the UI (Recommended, Desktop App & Web UI) Open the **Plugins** page in the DSH sidebar → click **Add plugin** → type `dsh-zen-remote` → click **Enable now** when the install finishes, then restart the DSH desktop app (or `dsh web`). ### Install from the CLI (Headless `dsh web` server) ```sh dsh plugin --profile web add dsh-zen-remote # then restart dsh web ``` > `dsh plugin` requires `--profile` to name the target profile. The desktop app's `desktop` profile is managed exclusively by the app (`--profile desktop` is refused on the CLI), so use the UI install above on the desktop app.
Manual Profile Edit / Local Development (link:), Upgrading & Uninstall **Editing the profile by hand** (local development, `link:` installs): add the dependency to the profile's `package.json` (`~/.dsh/profiles/desktop` for the desktop app, `~/.dsh/profiles/web` for the web service) and append `"dsh-zen-remote"` to the `dsh.profile.bundles` array: ```jsonc // ~/.dsh/profiles/desktop/package.json { "dependencies": { "dsh-zen-remote": "^2.3.8" // for local development: "link:/path/to/dsh-zen-remote" } } ``` ```sh cd ~/.dsh/profiles/desktop && pnpm install # For a link: checkout, also run `npm install --omit=dev` inside the repository so the gateway subprocess can resolve `web-push`. ``` **Upgrading & migration notes**: - **Upgrading with HMR on**: remove `dsh-zen-remote` first, then install the new version (`dsh plugin --profile remove dsh-zen-remote` → `add dsh-zen-remote`, or Uninstall → Add in the Plugins page). - **DSH 0.2.1-alpha.3+ profile reset**: `dsh --profile --from-default-profile