AXe is a comprehensive CLI tool for interacting with iOS Simulators using Apple's HID (Human Interface Device) functionality.
brew tap cameroncooke/axe
brew install axeOr install in one command:
brew install cameroncooke/axe/axeVerify the CLI:
axe --help
axe list-simulatorsAXe 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 cameroncooke/idb@1395103ca786ee990c70514e1f8bb75fa98cdd82, based on upstream IDB e682506725e9efefb9c43b8b917c0b12eb2a5939. The build does not apply a local patch queue.
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.
# 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"Full documentation is available at axe-cli.com/docs.
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.
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.
