-
-
Notifications
You must be signed in to change notification settings - Fork 4
Compatibility
DSH Mobile speaks the DeepSeek Harness web client protocol — the JSON-RPC-shaped surface over
/api that the harness's own GUI consumes. That protocol is internal to the harness and is not
versioned on the wire, so the app pins a baseline and checks the harness version it finds.
Canonical document:
docs/COMPATIBILITY.md.
| DSH Mobile | Harness version | Status |
|---|---|---|
| 0.1.0 – 0.3.1 | 0.1.0-rc.5 |
Supported baseline |
The baseline the app was built against is shown at Settings → About, next to the app version.
| Android | 8.0+ (minSdk 26) |
| Harness | a build serving dsh web on the protocol above |
| Network | phone and harness mutually reachable — LAN, adb reverse, or same device |
- On connect the app reads the version from
host.describeand compares it with its baseline. A mismatch shows a non-blocking warning; you can keep working. - Parsing is deliberately lenient. Unknown JSON keys are ignored, and unknown event types and unknown tool cards render as generic entries rather than failing the turn. A newer harness will usually work with an older app, minus whatever it added.
- New harness releases are validated against recorded traffic (
tools/capture) before the matrix is updated.
These are refused with HTTP 403 for network clients by harness design, and the app presents them read-only or hides them:
settings.*credentials.*llm.discoverModels-
host.pickDirectory,host.openPath - agent-preset authoring (
agentPreset.read/copy/openDocument/remove)
Connect over adb reverse and the app is a loopback client, so these become available.
A gateway path no harness component claims answers 404, and the trust fence answers 403. Both mean "this build does not offer that", so the app maps them to capability unavailable and forbidden and hides the control instead of reporting a broken connection. The same rule covers optional projections: if the harness composes no permission presets, no plugin inventory, or no content search, those surfaces simply are not there.
That is why two harnesses can show slightly different apps — see Troubleshooting.
DSH Mobile — an unofficial, community-built Android remote for the
DeepSeek Harness. The harness and its brand belong
to their respective owners.
MIT ·
repository ·
canonical technical docs in
docs/.