
zexadev/dsh-tether
dsh-plugin-tether
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 relay that only sees ciphertext)
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-plugin-tether`Restart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-tether)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from zexadev/dsh-tether, cleaned of badges and images.
<strong>DSH in your pocket: connect to your machine when you have one, run it on the phone when you don't.</strong><br> Remote: across networks, peer to peer, no server to set up, no shared Wi-Fi — if hole-punching fails it falls back to a relay that sees only ciphertext.<br> Local (Android): the DeepSeek Harness runs on the phone itself — install and go, no Termux, no commands.
<p align="center"><sub>An independent community project. Not affiliated with, partnered with, authorised by, or endorsed by DeepSeek.<br>No DeepSeek employee or upstream DeepSeek Harness team member is involved in this repository.<br><a href="README.zh.md">中文</a> · English</sub></p>DSH Tether carries the DeepSeek Harness web interface to your phone over a direct peer-to-peer connection. The agent keeps running on the machine your code lives on, and the phone gets DSH's own full interface — conversations, tool calls, approvals and settings, not a reimplementation of them. Pair once with a 6-digit code; after that the two ends find each other whatever network they are on.
When there is no machine around, the same app can run DSH on the phone itself (Android) — see Local mode.
The case it solves
You are not on your machine's network, and you do not want a server in the middle.
Reaching your own dev machine from a phone usually asks for one of two things: both ends on the same LAN, or a relay you deploy, configure and trust. This asks for neither. The two ends hole-punch to each other through iroh, and once they do, nothing passes through a third party; the fallback relay only ever carries ciphertext it cannot read.
If you only use your phone on the same Wi-Fi as your machine, you don't need any of this — a LAN setup is simpler.
Compared with similar projects
The two projects most often compared with this one are liguobao/ds-harness-remote and chokwinlee/deepseek-harness-desktop. Going by their READMEs:
| DSH Tether | ds-harness-remote | DSH Desktop | |
|---|---|---|---|
| Connection | Direct first (iroh hole-punching), relay only as fallback and it sees ciphertext only; no account, no server to run | Sign in to its service, then LAN → P2P → TURN → Relay in turn; a self-hosted relay is supported | Same Wi-Fi, or a Tailscale network you set up yourself |
| No machine around | Android local mode: DSH runs on the phone | — | — (its README states it runs no agent on the phone) |
| Clients | Android; iOS beta (an unsigned IPA you sign yourself) | PC, Android, Web; no native iOS app | Desktop, Android, and iPhone through a public TestFlight beta |
| License | MIT | No license file in the repository | MIT |
Download and install
| Where | Download | How |
|---|---|---|
| Machine | — | dsh plugin --profile web add dsh-plugin-tether |
| Phone | dsh-tether-<version>-arm64.apk from the Release | Signed — install it directly; local mode included |
| Phone (iOS) | dsh-tether-<version>-ios-unsigned.ipa from the Release | Beta, unsigned — sign it yourself |
…
