A .pkg whose postinstall runs as root, switches on macOS Screen Sharing and sets the shared password. No dialogs, no setup, no third-party software.
Saved to ~/.remoteconnect/friends.json — outside the app bundle, so reinstalls and rebuilds never wipe it.
Macs open vnc://IP in Screen Sharing. Android runs scrcpy --tcpip=IP:PORT, which owns the adb connection itself and mirrors the screen.
The code was rarely the problem — the environment was. A phone that reboots drops off WiFi and takes a new IP, so every connect attempt aimed at a dead address. Rebuilding the client eleven times changed nothing; checking the network fixed the diagnosis.
So the controller now probes before it dials and returns its step log instead of a spinner:
$ click "Isaac's Phone" ping 192.168.1.101: NO REPLY wireless-debugging services found: none connect 192.168.1.101:5555 -> failed: Host is down PHONE IS OFFLINE - it is not answering on the Wi-Fi network. On the phone: join the SAME Wi-Fi, then Settings > Developer options > Wireless debugging = ON
/api/scan so the UI can show real state.adb disconnect right before launching scrcpy tears down the wireless tunnel it is about to use — the mirror window flashes for one second and exits with code 2.adb tcpip 5555 has been run once.--always-on-top the mirror opens behind the controller, which users report as "the screen doesn't open"..app executables, so the launcher is osacompiled into a universal Mach-O binary..pkg-installed app in /Applications is root-owned — it cannot be replaced without admin auth, so iteration happens against a user-owned copy.