ZSeven-W/dsh-android
A live Android device inside a DeepSeek Harness conversation — emulator or USB phone, streamed and driven entirely through adb.
DSH Android puts a live Android device inside a DeepSeek Harness conversation: the agent can start a stream on an emulator or a USB-connected phone, build and install a Gradle project, drive the UI by resource-id/text or by OCR, read logcat, and inspect processes and memory, while the device renders in a persistent sidebar panel you can tap, drag, rotate and navigate. It registers 20 tools over a single adb code path (an emulator and a phone are the same to adb), streams frames in-process with no external helper, and serves them only through signed, loopback-only, expiring routes. On image-capable models the capture tools return the screenshot itself as an image block; OCR stays for pixel-precise taps and text-only routes.
Install
dsh plugin --profile web add @zseven-w/dsh-android@latestCopied verbatim from the README's 'Install into DSH' section, which shows this command followed by dsh web. The README also gives the profile-dependency form pnpm add @zseven-w/dsh-android.
Compatibility
README requires Node >= 24.11.0 and adb from the Android SDK platform-tools, resolved from the ADB environment variable, then PATH, then <ANDROID_HOME>/<ANDROID_SDK_ROOT>/the per-OS default SDK root. Without adb the plugin still loads and all 20 tools register, but every call explains what is missing. ADBKeyboard is optional for CJK/emoji input.
Details
- Repo: ZSeven-W/dsh-android
- Category: Coding & Development
- Stars: 169
- Version: GitHub repo ZSeven-W/dsh-android; npm package @zseven-w/dsh-android. README states the current plugin release is 0.1.0-rc.10, tested with DSH 0.1.5-rc.1 (registry latest 0.1.0-rc.9 on 2026-10-06).
FAQ
- Do I need an emulator or a real phone?
- Either. The README states there is one adb code path: adb devices -l reports a serial, and emulator-5554, a USB serial or an ip:port target all behave identically, with no simulator/real-device split to reason about.
- Will non-ASCII text be typed?
- Only with ADBKeyboard. The README says adb shell input text is ASCII-only; without ADBKeyboard installed and selected as the active IME, non-ASCII input is refused with an install hint rather than silently mistyped.
Alternatives
NanmiCoder/dsh-agent-teams · omdsh-dev/dsh-at-file · Walvez/dsh-codex-sync