Back to rankings

cameroncooke/AXe

Swiftaxe-cli.com

AXe is a CLI tool for interacting with Simulators using Apple's Private Accessibility APIs.

automation-frameworkcommand-line-toolidbiossimulatorsswiftui-automation
Star Growth
Stars
2.1k
Forks
84
Weekly Growth
Issues
6
1k2k
May 2025Sep 2025Feb 2026Jul 2026
README
AXe

AXe is a comprehensive CLI tool for interacting with iOS Simulators using Apple's HID (Human Interface Device) functionality.

CI Licence: MIT

Install

brew tap cameroncooke/axe
brew install axe

Or install in one command:

brew install cameroncooke/axe/axe

Verify the CLI:

axe --help
axe list-simulators

Xcode compatibility

AXe supports Xcode 26 and Xcode 27. Xcode 27 simulator automation uses Device Hub; Simulator.app is not required.

Release artifacts are built once with the Xcode version selected by the release environment and run unchanged with either supported Xcode selected. Compatibility was validated with Xcode 26.5 (build 17F42) and iOS 26.5 (23F77), and with Xcode 27 Beta 3 (build 27A5218g) and iOS 27 (24A5380g).

AXe builds IDB from the immutable fork revision configured in scripts/build.sh, based on a verified upstream IDB revision. The build does not apply a local patch queue.

E2E development

make e2e rebuilds the local IDB XCFrameworks, builds AXe, and runs the simulator tests with the Xcode selected by DEVELOPER_DIR or xcode-select. XcodeGen is required to generate the IDB projects. When Xcode 27 is selected, the runner starts Device Hub, chooses an available iOS 27 iPhone 17 Pro, and boots it with simctl.

To validate a release payload unchanged under another supported Xcode, first build the test bundle with that Xcode, then run AXE_BIN_PATH=/path/to/release/axe ./test-runner.sh --tests-only. The supplied executable must retain its packaged frameworks beside it.

Basic usage

# Find a booted simulator UDID
axe list-simulators
export UDID=<UDID>

# Inspect the current UI
axe describe-ui --udid "$UDID"

# Interact with the simulator
axe tap --label "Continue" --udid "$UDID"
axe type 'Hello world' --udid "$UDID"
axe screenshot --output ./screen.png --udid "$UDID"

Documentation

Full documentation is available at axe-cli.com/docs.

Disclaimer

AXe is an independent open-source iOS Simulator automation project and is not affiliated with, endorsed by, or associated with Deque Systems or its axe® accessibility products.

Licence

This project is licensed under the MIT License. See LICENSE for details.

Third-party licensing notices, including Meta's IDB MIT attribution, are in THIRD_PARTY_LICENSES.

Related repositories
g1879/DrissionPage

Python based web automation tool. Powerful and elegant.

PythonPyPIOtherautomation-frameworkpython
drissionpage.cn
12.3k1.1k
Miksus/rocketry

Modern scheduling library for Python

PythonPyPIMIT Licenseschedulerscheduling
rocketry.readthedocs.io
3.4k115
argoproj/argo-events

Event-driven Automation Framework for Kubernetes

GoGo ModulesApache License 2.0kubernetesevent-driven
argoproj.github.io/argo-events/
2.7k828
nsacyber/WALKOFF

A flexible, easy to use, automation framework allowing users to integrate their capabilities and devices to cut through the repetitive, tedious tasks slowing them down. #nsacyber

PythonPyPIOtherautomationintegration
nsacyber.github.io/WALKOFF/
1.2k221
polterguy/magic

Fully Autonomous AI-based Software Development Assistant

C#MIT Licenseaiopenai
hyperlambda.dev
1.2k168
repeats/Repeat

Cross-platform mouse/keyboard record/replay and automation hotkeys/macros creation, and more advanced automation features.

JavaMavenApache License 2.0hotkeyreplay
1.1k81
koutto/jok3r

Jok3r v3 BETA 2 - Network and Web Pentest Automation Framework

HTMLOthertoolboxpentest
jok3r-framework.com
1.1k251
zatosource/zato

ESB, SOA, REST, APIs and Cloud Integrations in Python

PythonPyPIGNU Affero General Public License v3.0pythonesb
zato.io
1k253
authorjapps/zerocode

zerocode-tdd is a community-developed, free, open-source, outcome-driven automated testing for Data Pipelines, ETL, REST API, Kafka(Data Streams), Databases and Load scenarios. all defined in simple JSON or YAML — with zero coding.

JavaMavenApache License 2.0soapassertions
zerocode-tdd.tddfy.com
1k447