AI summary
Turns a spare Android phone into a GitHub Actions self-hosted runner for ARM64 builds and real-device NPU tests. Runs a Linux environment via PRoot without root or Termux, with automatic device classification, encrypted credentials, and thermal-aware job scheduling. Includes a live system monitor and picture-in-picture status window.
Generated by AI. May contain inaccuracies.
About this app
Turn a spare Android phone into a GitHub Actions self-hosted runner — ARM64 builds and real-device NPU tests, no root, no Termux.
DroidRunner is an Android app that runs an ARM64 Android device as a repository-scoped GitHub Actions self-hosted runner.
No Termux, no root, no permanent USB connection to a PC. The APK manages a Linux execution environment and the installation, registration, and background operation of the official GitHub Actions Runner. Beyond ordinary ARM64 builds, the long-term goal is a device pool that lets CI exercise Android-specific NNAPI and vendor NPU backends on real hardware.
Goals Reuse spare phones and tablets as ARM64 build capacity Verify real-hardware differences across Qualcomm, Google Tensor, MediaTek, and Exynos from GitHub Actions Classify multiple devices with labels and route jobs to the SoC or NPU they need Complete installation, updates, and monitoring with nothing but the Android app Accept jobs safely with battery, charging, and thermal state in mind
Features Single APK — no Termux or other companion app required No root — runs a Linux ARM64 environment on top of PRoot Official runner — uses GitHub's official Linux ARM64 Actions Runner Repository or organization scope — serve one repository, or every repository in an organization from a single device GitHub App login — device-flow sign-in with a repository picker; no manual PAT handling Automatic device classification — generates runner labels from Android API level, SoC, and NPU hints Safe credential handling — encrypts the PAT with the Android Keystore Background standby — keeps the runner alive with a Foreground Service and a wake lock Tamper detection — verifies the runtime bundle's SHA-256 before extracting it btop-style dashboard — live CPU, memory, battery, thermal, disk, and network monitor together with runner status Self-protecting — holds jobs while the device is unplugged, low, hot, or short on space, and restarts the listener on its own after a failure. A held device really does go offline to GitHub, rather than only believing it has Says what it is doing — the notification carries the runner state and, when work is held, the reason; a picture-in-picture window keeps it on screen while the phone is used for something else Ephemeral mode — optionally re-registers and wipes the work directory after every job
About this version
- Version
- 0.6.2 (6002)
- Size
- 3.89 MB
- Requires Android
- 9
- Target SDK
- 28
- Architecture
- arm64-v8a
- Downloads
- 8
- Updated
- Sep 4, 2026
- Package
- io.github.m96chan.droidrunner
Similar apps
Ratings & reviews
- 50
- 40
- 30
- 20
- 10