Repolode
MaaXYZ

MaaXYZ/MaaFramework

An LGPL-3.0 C++ framework for building image-recognition-driven automation and black-box testing tools across Windows, Linux, macOS and Android.

Stars
5,036
Forks
579
Open issues
124
Last commit
yesterday

What is it?

MaaFramework is a black-box automation testing framework that locates on-screen targets through image recognition and then drives the interface with simulated input. It is written in C++ and is designed so that developers can describe a task as a pipeline of recognition and action steps rather than hand-coding every interaction.

The project offers a low-code pipeline protocol for defining tasks, alongside an integration API so that the framework can be embedded in applications. Official bindings and packages are listed for Python, C#, Node.js, Go and Rust, and the README describes a ProjectInterface protocol for packaging reusable projects.

The README lists Windows, Linux, macOS and Android as supported platforms. A number of community-built graphical front ends, debuggers, log analyzers and game-specific assistants are built on top of it.

Key features

  • 01Locates UI elements by image recognition and drives them with simulated input.
  • 02Defines automation tasks through a low-code pipeline protocol.
  • 03Provides integration APIs with official bindings for several languages.
  • 04Runs on Windows, Linux, macOS and Android.
  • 05Supports packaging reusable projects through the ProjectInterface protocol.

Use cases

  • Automating repetitive actions in a game or application that has no API.
  • Running black-box UI tests on software where source-level hooks are unavailable.
  • Building a reusable automation project that others can run through a GUI or CLI.

Quick start

  1. 1

    Open the quick start guide in the docs folder

  2. 2

    Pick a language binding (Python, Node, Go, Rust, C#) and install it from its package registry, as listed in the README

Things to know

  • Licensed under LGPL-3.0, a copyleft license whose terms apply to modifications of the library.

Topics

FAQ

What is MaaFramework?
An LGPL-3.0 C++ framework for building image-recognition-driven automation and black-box testing tools across Windows, Linux, macOS and Android. MaaFramework is a black-box automation testing framework that locates on-screen targets through image recognition and then drives the interface with simulated input. It is written in C++ and is designed so that developers can describe a task as a pipeline of recognition and action steps rather than hand-coding every interaction.
Is MaaFramework free to use? What license does it have?
MaaFramework is open source under the LGPL-3.0 license. Check the license terms before using it in commercial products.
Is MaaFramework still maintained?
Actively maintained. The last commit to MaaFramework was on Oct 19, 2026.
What can I use MaaFramework for?
Automating repetitive actions in a game or application that has no API. Running black-box UI tests on software where source-level hooks are unavailable. Building a reusable automation project that others can run through a GUI or CLI.
How do I install MaaFramework?
Open the quick start guide in the docs folder Pick a language binding (Python, Node, Go, Rust, C#) and install it from its package registry, as listed in the README
Where can I get MaaFramework?
The source code and installation instructions are on GitHub: https://github.com/MaaXYZ/MaaFramework

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects