DSH Toolbox

DeepSeek Harness on Android

There is no DeepSeek Harness Android app: you run dsh web on a machine, bind it to a LAN address, and open that URL in the phone browser.

The question people actually ask is whether they can use DSH from a phone. The answer is yes, as a browser client — the runtime stays on the computer.

That matters because sessions live under $DSH_HOME on that machine. The phone is a viewer with a keyboard, not a second copy of the data.

There is no app to install

The shipped profiles are web, headless, sdk, sdk-minimal and acp. None of them is a mobile build, and the npm package installs a CLI, not an APK.

What you get instead is the browser surface: the same UI you see on the desktop, served from your own machine.

Bind it to an address the phone can see

--host takes one concrete local IPv4 or IPv6 literal — wildcard addresses are rejected, so 0.0.0.0 will not work. Use the machine's LAN address, then open the same URL on the phone.

If the UI loads but its API calls are refused, add the authority the phone uses as a trusted host: --trusted-host 192.168.1.20:8080.

dsh web --host 192.168.1.20 --port 8080 --no-open
dsh web --host 192.168.1.20 --port 8080 --trusted-host 192.168.1.20:8080

Finding the address to pass

On Windows, ipconfig lists the IPv4 address of the active adapter. On Linux, ip -4 addr show does the same. Use the one on the same network as the phone — a VPN or a second adapter will give you an address the phone cannot route to.

ipconfig
ip -4 addr show

What the phone can and cannot do

It can read sessions, send messages and use the tools the profile exposes, because all of that happens on the host machine.

It cannot run the CLI. Anything that needs dsh plugin, --dump-config or a local file drop still needs a terminal on the host.

Common questions

Is there an official Android app?

No. The npm package installs the dsh CLI, and the shipped profiles are web, headless, sdk, sdk-minimal and acp — none is a mobile build.

Why does 0.0.0.0 not work?

--host accepts one concrete local interface literal; wildcard addresses are rejected on purpose. Pass the LAN address instead.

Do sessions sync to the phone?

No. The phone is a browser client; sessions stay in $DSH_HOME on the machine running dsh web.