zylzyqzz/dsh-mobile-pwa

Complete mobile PWA for DSH, built on dsh-mobile-gate: secure remote-access gateway plus install-to-homescreen (manifest + service worker), offline capability, touch gestures (pull-to-refresh, edge-swipe back, pinch-zoom font), agent-done push notifications, and touch-first layout — desktop unaffected.

dsh-mobile-pwa turns DeepSeek Harness into a complete mobile PWA: secure remote access to your own DSH server through an isolated child-process gateway (first-visit host approval, one-time token per device, per-IP rate limiting, with a waiting-for-approval page and an admin page at /lan-gate/admin to approve/deny/revoke); a real installable standalone app (manifest.json + service worker, homescreen icon, splash, theme-color, maskable assets); offline capability (shell cache-first, API network-first with cache fallback, an offline page); touch gestures (pull-to-refresh, edge-swipe back, pinch-to-resize font); agent-done Web Push notifications even when another app is foregrounded; and a phone-only touch layout that never affects the desktop (every rule is rooted at html[data-lan-device=phone] or an @media(max-width:820px) that excludes desktops).

UI Enhancements ★ 0 updated 2026-08-15
View on GitHub ↗

Install

dsh plugin --profile web add dsh-mobile-pwa

The README's npm one-liner is 'npm add dsh-mobile-pwa' (or 'npm install dsh-mobile-pwa@0.1.0') followed by 'dsh plugin --profile web add dsh-mobile-pwa'; a prebuilt npm install needs no allowBuilds approval. A GitHub form ('git clone' then 'dsh plugin --profile web add ./dsh-mobile-pwa') is also documented. The npm package dsh-mobile-pwa 0.1.0 was re-verified live on 2026-10-02 with its repository field back-linking to zylzyqzz/dsh-mobile-pwa.

Compatibility

DeepSeek Harness web server. Built on the MIT dsh-mobile-gate secure-gateway base. Runs an isolated Node child gateway on 0.0.0.0:3088 that reverse-proxies to the DSH Web UI on 127.0.0.1:3080 — DSH itself stays loopback-only. Configured via LAN_GATE_PORT (3088), LAN_GATE_HOST (0.0.0.0) and LAN_GATE_TARGET_PORT (3080).

Details

Recent updates

The README documents the feature table (secure remote access / real PWA / offline / touch gestures / push / touch layout / desktop-unaffected), the phone→gateway→DSH architecture diagram with the /pwa/ and /pwa/push/ routes, the admin approve/revoke flow, and the four install options (npm / GitHub / static mount / dynamic plugin) with the LAN_GATE_* env config.

FAQ

How do I install dsh-mobile-pwa?
dsh plugin --profile web add dsh-mobile-pwa (npm 0.1.0 re-verified 2026-10-02); the prebuilt npm install needs no allowBuilds approval.
Does it expose my DSH server to the internet?
No by design — DSH stays 127.0.0.1-only; an isolated child-process gateway fronts it with first-visit host approval, one-time device tokens and per-IP rate limiting.
Does the mobile layout change my desktop UI?
No — the README says every touch rule is rooted at html[data-lan-device=phone] or a max-width:820px media query that excludes desktop, so the desktop is unaffected.

Alternatives

jasondu/dsh-ui-mobile · LvienOeria/dsh-desktop-launcher · SnowfallC/dsh-mobile-voice-call

More plugins in UI Enhancements

Browse more in UI Enhancements

Guides for UI Enhancements plugins