A Linux-first CLI that removes the manual IP/port/pairing-code friction from
Android Wireless Debugging and Expo dev-client workflows. It discovers
devices over mDNS, pairs and connects automatically, and wires up adb reverse + npx expo start for you.
droidlink discover— find Android Wireless Debugging devices/services on the local network.droidlink pair— discover an unpaired device and pair with it using its pairing code. Add--qrto show a QR code to scan from Wireless debugging > Pair device with QR code instead.droidlink connect— discover paired devices and connect automatically.droidlink devices— list discovered/connected devices with status.droidlink disconnect— disconnect one or all connected devices.droidlink reverse— configureadb reversefor the Metro bundler port (default8081).droidlink expo— connect a device, configure Metro reverse, and startnpx expo start --dev-client --localhost.
Every command falls back to --host/--port (and interactive prompts) when
discovery finds nothing or the terminal isn't interactive. Run
droidlink [command] --help for the full flag list.
- Go 1.25+ (or use
miseto install) adb(Android platform-tools) onPATHor under$ANDROID_HOME/$ANDROID_SDK_ROOTnpx(Node.js/npm) fordroidlink expo
make build
./bin/droidlink discoverRelease builds can update themselves from GitHub Releases:
droidlink update --check # report current vs latest, change nothing
droidlink update # prompts "Update X -> Y? [y/N]"
droidlink update --yes # required when stdin is not interactive
droidlink update --version v1.2.3 # install a specific releaseDev and dirty builds refuse to update. Set GITHUB_TOKEN for rate limits.
docker build -t droidlink .
docker run --rm droidlinkNote: droidlink relies on host mDNS multicast and a locally installed adb,
so running it inside the container mainly demonstrates the build — real
device discovery needs host networking and adb available in the image.
makefor build, run, test, tidy, and Docker targetsmisefor toolchain management and task aliases
See DEVELOPMENT.md for detailed workflows.