## What it does
- **Two one-tap editions**: Root (for rooted phones) and Shizuku (for unrooted phones) — install APK → paste key → deploy; Termux, Node.js, DSH and the Android control plugin are installed automatically.
- **Native Android control**: the agent can screenshot, tap, swipe, type, send keys, launch apps, read the UI hierarchy, install APKs and run shell commands.
- **Hardware awareness**: battery / brightness / volume / sensors, camera, microphone, TTS, media playback, notifications, vibration, location, and a manual confirm dialog before risky actions.
- **Runs fully on-device**: DSH lives in Termux + Node.js; the UI is the local web GUI at port `3080` (bundled WebView shell).
- **Your API key stays on the phone**: the APK ships with no key; your key is written only to `~/.dsh-api-key` (chmod 600) — never embedded, uploaded or committed.
## Choose an edition
| | Root edition | Shizuku edition |
|---|---|---|
| For | Rooted phones (Magisk / Kitsune / KernelSU…) | Any unrooted phone |
| Requires | Just the phone | Phone + one-time wireless-debugging authorization (Shizuku, ~30 s) |
| Privilege | Agent holds root (spare phone advised) | adb-shell level, bounded by the OS |
| After reboot | Termux:Boot auto-start | Shizuku auto-start + Termux:Boot |
| Network self-heal | Built-in DNS fix | None (needs working network) |
## Quick start
> Download: open [Latest Release](https://github.com/railgun0325/dsh-phone/releases/latest) and choose `dsh-phone-root-*.apk` or `dsh-phone-shizuku-*.apk`. Checksums ship with each release.