An extensible CLI/TUI toolbox for controlling connected Android devices on Windows, Linux and macOS. Device interaction goes through pluggable device tools, actions are configuration-driven, an AI mode generates new ones from a plain-text description, and a built-in emulator manager creates and runs Android Virtual Devices without touching Android Studio.
Healthcheck → tool selection (Devices, APK Info, Emulators) → a two-pane dashboard where the action list stays visible on the left while the right pane's border color reflects its state: preview, params, confirm, running, done. ctrl+t switches tools anywhere, cleaning up running streams as it goes.
The binaries an action needs — today adb and scrcpy — are fetched from their official sources and isolated in their own tool cache. No dependency on a system-wide install.
Logs, file transfer, shell commands, screen mirroring — every action lives in an editable actions.yaml. A new action is a new entry, no code required.
Describe what you need in plain text and the configured AI provider generates a matching action — with a preview and confirmation step before anything is saved. New providers plug into a registry.
Create, list, start/stop and delete Android Virtual Devices from inside the app, with live GPS/network/battery simulation and a richer detail view than any physical device gets. See Emulators.
Every change to actions.yaml or settings.yaml is preceded by an automatic timestamped backup, restorable at any time.
Built on a translation table, so new languages can be added without touching the rest of the app. Switchable from the Settings screen, where the AI provider, timeouts and resolved tool paths also live.
A background check (at most once every 24h) watches for new android-toolbox, adb and scrcpy releases and surfaces a dismissible notice on the healthcheck screen and dashboard header — applying an update always stays a manual, explicit step.
On first run a healthcheck verifies the configuration, the required tools and the AI provider. Anything missing is fetched once from its official source, and the app offers to register itself system-wide on PATH — including the short alias atbx, or to stay fully portable. From then on self-update keeps the binary and its tools current.
Release binaries are unsigned, so macOS Gatekeeper and Windows SmartScreen warn on first run. The README has the one-line workaround.
Every action is a YAML entry with a stable id, a category, the tool it runs through and a command. Placeholders like {serial} and declared params are substituted at run time. Invalid individual entries are reported by the healthcheck without invalidating the rest of the file. The full schema is documented in the README.
- id: battery-info # unique, stable name: "Battery Status" # shown in the TUI description: "Shows detailed battery status" category: Device # grouping in the list tool: adb # how it runs command: "shell dumpsys battery" params: [] confirm: false # ask before running interactive: false # terminal handover format: keyvalue # highlight output live_preview: false
Creating and running Android Virtual Devices needs a real SDK. If ANDROID_HOME / ANDROID_SDK_ROOT already has one, it's used directly; otherwise android-toolbox emulator setup bootstraps a bundled copy — AVDs land in the standard ~/.android/avd location either way, so they stay visible to Android Studio too.
The AVD list shows specs parsed straight from config.ini (RAM, CPU cores, storage, density), plus — while running — live simulation of GPS position, network speed/latency and battery level/charging, all driven through the emulator's own console. A missing system image downloads automatically with a live progress bar, and an AVD whose image was removed shows up clearly as Broken instead of failing silently.
Reads package name, version, min/target SDK, requested permissions, hardware features, activities and — if present — the signing certificate from the APK Signing Block v2/v3.
Deliberately uses no external tools, no aapt, no Android SDK — a pure Go implementation of Android's binary XML and signing block formats, so analysis works identically on every supported platform.
This project was developed with significant help from AI tools. The usual caveats apply: review anything before you rely on it, especially destructive actions (confirm: true entries, dangerous-reset, AI-generated commands) and anything touching a device or data you care about.