30 open-source projects similar to openatx/uiautomator2, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
This project is an Android RPA framework designed for automating user interfaces and system tasks on rooted Android devices using Python and ADB. It provides a suite of tools for rooted device management, allowing for programmatic control of system settings, application lifecycles, and shell command execution via a remote API. The framework distinguishes itself through a combination of dynamic instrumentation and AI integration. It can inject scripts into running processes to hook Java interfaces and modifies application behavior in real time. Additionally, it supports large language model in
escrcpy is an Android device mirroring tool and ADB device manager that enables the display and control of Android screens on a computer via USB or network connections. It functions as a multi-device screen orchestrator, providing a visual interface to arrange and control several mirrored device windows in parallel layouts. The project distinguishes itself as an automation controller that utilizes large language models to translate natural language instructions into actionable device commands. It further differentiates its capabilities by acting as a reverse tethering client, allowing a compu
Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by querying the native accessibility tree of an application, allowing for black-box testing without requiring source code instrumentation or platform-specific dependencies. The framework distinguishes itself through a unified command syntax that abstracts interactions across Android, iOS, and web environments. It features a dynamic synchronization engine that automatically pauses test execution to account for non-deterministic animations and network-dependent content loading, ensuring
Detox is a gray-box end-to-end testing framework designed for mobile applications. It automates user interactions and verifies interface states by synchronizing test execution with the internal readiness of the application, ensuring that scripts wait for background tasks, network requests, and animations to complete before proceeding. The framework distinguishes itself through native-side binary instrumentation, which allows it to monitor the application message queue and query the native view hierarchy in real time. By interacting directly with the application process, it avoids reliance on
AutoJs6 is an Android automation framework and JavaScript runtime designed to automate user interface interactions and system tasks on mobile devices. It functions as a UI automator that inspects screen hierarchies and manipulates on-screen controls via selectors to automate manual workflows. The project includes an Android script compiler that bundles automation scripts into standalone APK files for distribution. It also provides a remote debugging tool that creates a network-based bridge between a mobile device and a desktop IDE for writing and testing scripts. The framework covers a broad
This repository provides a collection of reference implementations and patterns for testing Android applications. It serves as a guide for developers to integrate standard testing libraries and frameworks into their projects, covering the full spectrum of verification from local business logic to complex interface interactions. The project distinguishes itself by demonstrating how to configure and execute tests across diverse environments, including local virtual machines and physical devices or emulators. It provides specific patterns for validating inter-application communication, automatin
This project is an automated testing framework designed to capture and verify the visual state of Android interface components. It provides a system for generating deterministic snapshots of UI elements, allowing developers to establish baselines for layout consistency and detect unintended visual regressions across different software versions and hardware configurations. The framework distinguishes itself by enabling isolated component rendering, which allows individual views to be tested without requiring a full application build. It ensures consistency by controlling the rendering lifecycl
Nightwatch is a Node.js test automation tool and W3C WebDriver test framework designed for executing functional test suites and verifying system behavior. It provides a suite of utilities for web browser automation, native mobile application testing, and REST API validation. The project includes specialized tools for visual regression testing, which compares current screenshots against baseline images to detect unexpected changes. It also features an accessibility auditing tool to check user interface elements against established standards for compliance. The framework covers a broad range o
This project provides a desktop-based interface for remote control and screen mirroring of Android devices. It functions by establishing a persistent, multiplexed communication channel over the Android Debug Bridge, allowing for the transmission of raw binary data streams between a host computer and a connected mobile device. The tool distinguishes itself by injecting a lightweight binary into the mobile runtime to access system-level APIs for direct screen buffer capture and input event injection. By translating desktop mouse and keyboard signals into native Linux kernel events, it enables r
php-webdriver is a WebDriver PHP client and browser automation framework that implements the W3C WebDriver standard. It serves as a programmatic interface for controlling web browsers, executing JavaScript, and managing browser sessions in both headed and headless environments. The library functions as a Selenium protocol implementation, allowing PHP applications to communicate with browser drivers such as ChromeDriver or GeckoDriver. It provides the ability to automate user actions, navigate pages, and validate DOM elements for web UI testing. Its capabilities cover broad areas of browser i
FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified abstraction layer for interacting with various message brokers, enabling developers to manage event production and consumption through a consistent interface while maintaining access to native provider-specific features. The framework centers on a decorator-based routing model that binds application logic directly to broker topics, supported by a built-in dependency injection container that resolves resources at runtime. The framework distinguishes itself through its deep int
MaaAssistantArknights is a cross-platform automation engine designed for mobile games, utilizing computer vision and input simulation to perform routine tasks. It functions as an Android emulator controller, managing game lifecycles, resource farming, and infrastructure optimization through structured, scripted workflows. The project distinguishes itself through a modular configuration system that allows users to define complex automation logic via external instruction files. This framework supports dynamic task modification, configuration inheritance, and schema validation, ensuring that cus
Awesome-adb is a curated collection of resources and utilities designed for interacting with Android devices via the command line. It serves as a comprehensive toolkit for developers and system administrators to facilitate the development, testing, and maintenance lifecycle of mobile applications and system software. The project provides a centralized reference for leveraging the Android Debug Bridge to perform complex tasks, including mobile automation, system-level debugging, and device fleet management. It covers a wide range of capabilities such as simulating user input for stress testing
GKD is an automation engine that leverages the Android accessibility framework to monitor system events and execute predefined interaction rules. By acting as a background service, it identifies interface elements in real-time and performs automated tasks, such as dismissing pop-ups or navigating through application screens, based on the current state of the device. The project distinguishes itself through a declarative rule engine that processes human-readable configuration files. Users can define sophisticated interaction logic using a specialized selector syntax that supports hierarchical
This project provides a comprehensive rule engine and configuration framework designed for Android accessibility services. It functions as a repository of structured definitions that enable mobile applications to automatically identify and interact with interface elements, effectively streamlining repetitive tasks and suppressing unwanted content. The system distinguishes itself through its ability to manage and distribute complex subscription rule sets that target specific interface structures, such as splash screen advertisements, update prompts, and promotional pop-ups. By utilizing these
tmall-miao is an Android automation tool and shopping platform bot designed to automatically complete reward activities and claim coins on e-commerce marketplaces. It functions as an e-commerce reward task automator that simulates user interactions on mobile devices to handle repetitive tasks. The project includes a compatibility layer for HarmonyOS Next, allowing automation scripts to run across different mobile operating systems. The tool provides capabilities for mobile device task automation and incentive farming. It uses system debugging interfaces to execute platform-specific automatio
STF is a web-based Android device management platform used to organize and control fleets of Android hardware. It functions as a device farm orchestrator and inventory manager, providing a centralized system for monitoring battery health, hardware specifications, and system versions across multiple devices. The platform distinguishes itself through a web-based screen streamer that allows for real-time interaction and application installation via a browser. It includes a remote ADB controller for executing shell commands and establishing port tunnels, as well as a booking system for time-limit
scrcpy-gui is a graphical user interface for managing and controlling Android devices via the scrcpy protocol. It provides a visual layer for Android screen mirroring, remote control, and device management over USB or TCP/IP connections. The project enables the simultaneous mirroring and control of multiple Android devices within a single unified window. It includes dedicated interfaces for interacting with devices using a computer keyboard and mouse, as well as utilities for synchronizing clipboards between a computer and a connected mobile device. The software supports low-latency screen m
This is a collection of sample projects that demonstrate how to write automated tests for Android applications. The samples cover a range of testing techniques, including simulating user interactions with the Espresso framework, verifying navigation and inter-component communication through intent interception, and managing activity, intent, and service lifecycles using reusable test rules. The repository provides concrete implementations for testing across multiple application windows, capturing screenshots during test execution for visual verification, and synchronizing test assertions with
AppManager is a comprehensive suite of tools for managing applications on Android devices. It provides utilities for controlling application lifecycles, modifying manifests, and administering installed packages. The project distinguishes itself through deep system integration, offering capabilities to analyze and block specific application components such as activities, services, and broadcast receivers. It includes a system for saving and restoring applications along with their associated data and permissions, as well as tools for auditing and modifying runtime and development permissions.
This is a comprehensive library of code examples and reference implementations for building cross-platform user interfaces with Flutter. The project provides a collection of demo applications and guides designed to illustrate the implementation of design patterns, animation techniques, and testing workflows. The repository features specific demonstrations for native integration, including examples of embedding modules into existing native applications, using platform channels, and bridging native code with the framework. It also serves as an animation reference, providing implementations for
wsa_pacman is a graphical package manager and installer for the Windows Subsystem for Android. It provides a user interface for deploying Android package files, upgrading application versions, and managing software installations within the subsystem environment. The utility includes a metadata inspector that extracts icons, version numbers, and requested permissions from Android manifest files to verify app contents before installation. It also functions as an application manager that allows users to open system settings to uninstall software, disable applications, or modify specific device p
This project is a Model Context Protocol server and automation framework designed to control and automate iOS and Android devices. It provides a unified API that abstracts interactions between physical hardware and simulators across different mobile operating systems, functioning as a cross-platform device bridge. The system is distinguished by a visual UI automation toolkit that uses screenshots and coordinate-based gestures—such as tapping, swiping, and long-pressing—rather than relying on element selectors. It supports remote connectivity via an HTTP server using Server-Sent Events, which
SD Maid SE is an Android storage optimization and system maintenance utility. It focuses on reclaiming disk space by analyzing storage usage and removing duplicate, orphaned, or unused files. The project distinguishes itself through the use of accessibility services to automate repetitive device tasks and manual file reviews by simulating user interactions. It also includes specialized tools for reducing the file size of images and videos through media compression. The system provides a broad range of capabilities including application lifecycle management to freeze or remove software, junk
WebDriverAgent is an iOS device automation driver and server that enables the programmatic control of applications on physical devices and simulators. It functions as a bridge that exposes Apple XCUITest capabilities via a network interface, translating WebDriver commands into native iOS actions for mobile UI testing. The system implements a WebDriver server that uses the JSON Wire Protocol to receive instructions and return results. It translates these network requests into local commands to manage application lifecycles, perform screen gestures, and verify the presence of specific user inte
This is a Model Context Protocol server that exposes Windows desktop automation and system administration functions to large language models. It provides programmatic control of mouse, keyboard, windows, and UI elements on Windows through simulated user input, while also enabling LLMs to manage the Windows registry, processes, files, and execute PowerShell commands through a remote interface. The server supports multiple transport protocols including stdio, SSE, and streamable HTTP, allowing flexible integration with different language model clients. It implements OAuth 2.0 with PKCE for secu
Helium is a Python library and high-level wrapper for Selenium designed for browser automation, functional UI testing, and web scraping. It provides a simplified interface for interacting with web applications across different browser engines. The library distinguishes itself by allowing users to identify and interact with web elements using visible text labels rather than relying exclusively on technical identifiers like XPaths or CSS selectors. This approach enables the creation of automation scripts based on human-readable labels. The toolkit covers a broad range of browser automation cap
vimac is a keyboard-driven user interface controller for macOS that translates keyboard sequences and text labels into graphical interface interactions. It functions as an automation layer that maps keyboard inputs to specific UI element interactions, serving as a navigation tool to reduce reliance on a mouse. The utility enables mouse-free interface management by replacing pointer movements with keyboard shortcuts for scrolling and clicking. It specifically allows for triggering clicks, double-clicks, or right-clicks on interface elements through the use of assigned short text labels. The s
CodeceptJS is a NodeJS end-to-end testing framework designed for automating acceptance tests across web, mobile, and desktop applications using a unified API. It serves as a cross-platform test automator and a behavior-driven development tool that maps human-readable feature files to technical step definitions. The framework features AI-powered test maintenance that uses machine learning to automatically identify and repair broken element selectors. It includes capabilities for autonomous test generation and a server that allows external agents to control tests and debug browser sessions in r
wxauto is a Python library and bot framework designed for the programmatic control of the WeChat Windows desktop client. It functions as a wrapper that enables the automation of messaging and social feed functions by simulating user interface interactions. The library distinguishes itself by providing a bridge between network requests and local UI automation, allowing users to expose automation capabilities via a web interface. It utilizes background execution and simulated system-level inputs to trigger application events without moving the physical mouse cursor. The project covers extensiv