DSH Plugins Marketplace

DSH Plugins

Plugins

/

deepseek-harness-mobile

s

deepseek-harness-mobile

Discovered77

Android companion for DeepSeek Harness | chat, goals, approvals & notifications from your phone, over your LAN. Kotlin + Jetpack Compose.

DSH Mobile — the DeepSeek Harness in your pocket

DSH Mobile — DeepSeek Harness Remote

An open-source Android companion that puts your DeepSeek Harness in your pocket.
Drive sessions, review plans and goals, answer approvals and questions, and get notified when the harness finishes — from your phone, over your local network.

Website Latest release CI Android 8.0+ MIT

English · 中文 · हिन्दी · Español · Français · ไทย

DSH Mobile is an unofficial companion app for the DeepSeek Harness (MIT), mirroring its web GUI feature-for-feature in the harness's own visual language. Android only, Kotlin + Jetpack Compose.

Its companion on the other end is dsh-relay — a harness plugin that adds the authentication layer the harness says it lacks, so this app can reach a harness with a real credential and a pinned key instead of an open port. See Relay.

dshm.zyphite.com is the project site — what the app is, what it looks like, and how to get it running, on one page.

The wiki is the user-facing guide: getting started, connecting, troubleshooting, a feature tour and an FAQ.


Screenshots

| Connect | Chat | Trajectory | |:--:|:--:|:--:| | Connect screen: recent harnesses with live reachability, discovery, manual entry and auto-connect toggles | Chat: streamed turns with per-tool icons, tool cards, goal dock and composer | Trajectory: a per-turn ledger with usage totals | | Recent harnesses with live reachability, LAN discovery, manual host:port, auto-connect. | Streamed turns, a glyph per tool, expandable tool cards, permission picker. | The same session as a per-turn ledger with usage totals. |

| Session details | Subagents | |:--:|:--:| | Details panel: context breakdown, goal, plan mode, jobs, queue, subagents, host information | Subagent catalog with continuable children | | Context breakdown, goal, plan mode, background jobs, queued turns, host info, session-log export. | The subagent catalog — open a child's transcript, follow up, or interrupt it. |

Features

  • Connect effortlessly — auto-discovers a harness on your Wi-Fi (active subnet scan + readiness handshake), remembers hosts and probes them for liveness on the way in, supports manual host:port entry, loopback for same-device setups, and auto-connect toggles (last used / LAN / same device).
  • Discord-style navigation — swipe right from the left edge to open the workspace-grouped chat list, swipe left to close it, swipe left from the right edge for the session details panel.
  • Full chat experience — streamed turns with reasoning disclosure, markdown, terminal/diff/read/search/web tool cards, queue dock (edit / remove / steer), history paging, image and file attachments.
  • Slash commands and skills — the composer adjudicates a / line against the session's own command catalog and runs it through the harness's command gateway; anything the catalog does not claim is sent as a prompt, which is how skills are invoked.
  • Everything the GUI does — goals (phases, rounds, pause/resume/edit), plan mode + plan review, permission approvals, user questions, todo dock, subagents (catalog, follow-ups, interrupt), background jobs, workflow runs, skills, model selection, agent presets, session search, trajectory ledger, session export, message feedback.
  • Notifications — turn complete, goal complete / blocked, review or question waiting for you; background connection via a foreground service.
  • Looks like the harness — the exact DeepSeek Harness design tokens (colors, type, radii, disclosure rows, shimmer, ink buttons) with light / dark / system themes.
  • 11 languages — English, 中文, हिन्दी, Español, Français, العربية, বাংলা, Português, Русский, اردو, ไทย (RTL aware).

Requirements

  • Android 8.0+ (minSdk 26).
  • A running DeepSeek Harness (tested against 0.1.3-alpha.1). 0.10.0 needs harness 0.1.3 — that release stopped logging a reply's deltas and moved them to a live stream the app has to ask for, so the app and the harness have to move together: an older app never sees an answer being written on 0.1.3, and this app cannot run slash commands on 0.1.2. See docs/COMPATIBILITY.md.

Quick start

  1. Install the latest APK from Releases.

  2. Open the app and choose how to connect. The two are not variations of one setting — pick the one that matches what you set up on the computer.

    Relay — encrypted, authenticated, and works from outside your Wi-Fi. Install dsh-relay into the harness web profile:

    dsh plugin --profile web add dsh-relay
    dsh web
    

    Open the printed URL on that computer, set a password, then open /relay/pair. In the app: Relay → Pair a relay, scan the QR. Once every client you use has paired, turn off the relay's compat.addressGrants — nothing here needs it.

    Local network — apply the one-file LAN patch in harness/README.md, restart dsh web, then tap Scan network. The harness signs each device in once: paste the link it prints at startup when the app asks. That link authenticates the phone, but it does not encrypt the connection and it does not stop anyone already on the network from reaching the port — so still only on networks you trust.

    Behind your own HTTPS reverse proxy — paste the https:// address into local-network mode. The proxy can forward to loopback, so the harness needs no patch; but it encrypts the link without authenticating anyone. See harness/README.md.

    USB / emulatordsh web, then adb reverse tcp:3080 tcp:3080, and connect to 127.0.0.1:3080 in local-network mode. No patch needed; the app still asks for the startup link once.

  3. Pick a session, chat, and get notified when the harness is done.

If a connect attempt fails, the app names the cause; the wiki's Troubleshooting page is keyed on that exact sentence.

Compatibility & security

  • See docs/COMPATIBILITY.md for the harness version matrix and what 0.1.3 and 0.1.2 changed.
  • Read docs/SECURITY.md first. From harness 0.1.2 the harness authenticates its whole API, and a signed-in device reaches all of it — there is no longer a reduced tier for a caller that is not on the machine itself. Signing in grants the same power as a shell on that computer, because the agent runs commands there. Local-network mode authenticates but does not encrypt; relay mode adds a pinned certificate on top.

Building

./gradlew :app:assembleDebug      # debug APK
./gradlew :app:assembleRelease    # release APK (signed when keystore env is set)

The shipped version comes from the git tag: the release workflow exports DSH_VERSION_NAME from the tag name, and versionCode is derived from it. A local build falls back to the literal in app/build.gradle.kts.

See CONTRIBUTING.md for the development loop against a real harness, the module layout, and the release workflow.

Repository

| Path | What | |---|---| | core/ | Pure-JVM protocol core: wire DTOs, RPC client, WebSocket downlinks, reconnect loop, session folding, notification classifier | | app/ | Android UI: screens, discovery/connection, foreground service, notifications, i18n | | mock-harness/ | Ktor mock of the harness /api server for tests | | tools/capture/ | Records real harness traffic into conformance fixtures | | harness/ | Companion patch + guide for LAN mode | | — | The relay itself lives in sorsama/deepseek-harness-relay | | docs/ | Architecture, protocol notes, compatibility, security |

License

MIT. Bundled third-party material is listed in THIRD_PARTY_NOTICES.md. The DeepSeek Harness and its brand are property of their respective owners; this project is an independent, community-built remote.

Similar plugins

dsh-mobile

by saya-ch

DeepSeek Harness 的 Android App 与安全远程访问插件,支持局域网/远程连接和高度自定义的移动界面与扩展能力。

Tools & CapabilitiesManifest valid

265

2.2k/wk

Apache-2.0

TypeScript

Sep 14, 2026

dsh plugin --profile web add dsh-mobile

by ericleoo

Mobile-first overlay for the DeepSeek Harness web UI: full-width chat, sidebar-as-drawer, thumb-friendly composer, and safe-area/overscroll polish on touch devices.

Manifest valid

0

JavaScript

Sep 9, 2026

dsh plugin --profile web add @ericleoo/dsh-mobile

by Hyna-hla

DSH Remote 手机遥控端:把电脑上的 DeepSeek Harness 装进口袋。手机连上就能给 AI 派活、看实时回复、批审批;支持局域网/内网穿透、扫码连接、审批通知、会话管理、多主题换装,还能解锁加密保险库。第三方社区作品,开源免费。

Tools & CapabilitiesManifest valid

12

MIT

Kotlin

Aug 31, 2026

dsh plugin --profile web add dsh-remote-access

by zexadev

Mobile client for the DeepSeek Harness — use the dsh on your dev machine from your Android or iOS phone, remotely across networks, peer-to-peer over iroh with no server to set up (falls back to a rela

Tools & CapabilitiesManifest valid

44

MIT

Rust

Sep 9, 2026

dsh plugin --profile web add dsh-plugin-tether

by KyoMio

Turn DeepSeek Harness into a phone app you can securely reach from anywhere: minimal mobile UI rework + pairing-code gateway + PWA + Web Push. 让 DSH 变成可公网安全访问的手机 App

Tools & CapabilitiesManifest valid

8

JavaScript

Sep 11, 2026

dsh plugin --profile web add dsh-zen-remote

by radres

Your DeepSeek Harness agent rings your actual phone: it asks out loud, you answer out loud, and what you said steers the run.

Vision & MultimodalManifest valid

6

MIT

JavaScript

Aug 27, 2026

dsh plugin --profile web add dsh-plugin-call-me