dsh-host-web-compat

August 18, 2026 · View on GitHub

🌐 中文说明 / 中文 README

DeepSeek Harness × Android 生态 · dsh-mobile-apk(壳 APK)· dsh-shell-termux(shell)· dsh-client-ui-responsive(移动 UI)

Host plugin for DeepSeek Harness that injects legacy-browser polyfills into every served page via the webserver tapIndex hook. Fixes the in-app directory picker and other RPC flows on older WebView/browser kernels.

Background

Old kernels (e.g. MuMu's bundled browser, older WebViews) lack AbortSignal.any(), which breaks the workspace directory picker's concurrent RPC cancellation (list renders empty). This plugin injects idempotent polyfills at the HTML level — no browser-side changes needed.

Quick start

1. Install — package into the profile's node_modules.

2. Mount — in the profile's cordis.patch.yml:

- insert:
    - id: web-compat
      name: '@dsh-android/dsh-host-web-compat'
      disabled: !!js process.platform !== 'android'

3. Restart the service; the picker works again in old kernels.

Polyfills injected

APIconditionnote
AbortSignal.anymissingChrome 116+ / Node 20.3+; older WebViews need it
structuredClonemissingChrome 98+ / Node 17+

Idempotent: skipped when already present.

Notes

  • Keep this plugin even in the shell-APK form as a last-mile fallback for old system WebViews.
  • If you move to a native SAF picker, the page still benefits from the other polyfills.

License

MIT.