Handsets is a command-line interface (CLI) tool designed for low-latency automation and control of Android devices, particularly tailored for use cases involving large language model (LLM) agents and shell scripts. It provides a means to perform actions such as tapping, typing, and waiting on real Android devices with response times measured in milliseconds. The tool aims to address the inefficiencies and overhead of traditional Android automation methods by offering a streamlined approach that minimizes the need for additional installations or elevated device permissions.
The system consists of a Rust-based CLI running on the host machine and a lightweight Java Archive (JAR) file deployed to the Android device. This setup avoids the need for a dedicated app, root access, or a WebDriver server. Communication between the host and device occurs over a custom binary protocol, and a typical command round trip takes between 2 and 7 milliseconds. Handsets is optimized for scenarios where scripts or agents need to perform repetitive UI interactions, such as tapping a button identified by its label thousands of times in a session.
Key features include the ability to auto-detect connected devices, start and manage a background daemon on the device, and interact with the device's UI through commands like tap, wait, and drop. The tool provides a flat table of actionable UI elements, which can be output in a format suitable for LLMs or, optionally, as a full XML hierarchy. Selectors for targeting UI elements support a CSS-like grammar, borrowing concepts from Playwright's locator API, and allow for precise targeting using attributes like text, visibility, and spatial relationships.
Handsets offers structured exit codes for each action, supporting robust branching in unattended automation scripts. JSON output is available for integration with other tools and languages, and a first-party Python SDK is provided. Installation requires only adb on the system path and does not necessitate device rooting. 0 state, with a stable CLI surface but a wire protocol that may change between minor versions.
Handsets is a CLI tools & terminal product. It focuses on automating and controlling Android devices efficiently from scripts or LLM agents without heavy dependencies. It is built as an open-source project for developers and QA engineers. Handsets is open source under the MIT license. It runs on the command line, and it can be self-hosted.
Behind Handsets is elliotgao2, and the product first shipped in 2026. Development happens publicly on GitHub with 101 stars and 100 commits in the last 90 days. Key capabilities include android automation, low latency, and shell integration.
Latest indexed changes and source events
elliotgao2/handsets verified by the PulseGate indexer
Other apps tracked under the same category.