axe

Automates iOS Simulator UI interactions using the AXe CLI.

2|Updated Oct 16, 2021
One-click install
npx skills add https://github.com/pattobrien/dotfiles --skill axe-pattobrien
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: axe
Source: https://github.com/pattobrien/dotfiles/tree/main/claude/skills/axe
Command: npx skills add https://github.com/pattobrien/dotfiles --skill axe-pattobrien

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Automating taps, swipes, typing, and UI inspection on an iOS Simulator from the command line requires knowing the correct AXe commands, UDID targeting, timing controls, and verification steps, which are easy to get wrong without guidance. ## Core Features & Use Cases - Simulator Interaction Commands: Covers tap, swipe, gesture, touch, type, button, key, and key-sequence commands with selector-based (--id / --label) or coordinate-based targeting. - UI Inspection and Verification: Uses describe-ui and screenshot to inspect the accessibility tree, discover element selectors, and verify outcomes after fire-and-forget HID events. - Batch Workflows: Executes multi-step flows in a single axe batch invocation with --wait-timeout, --poll-interval, --ax-cache, and sleep steps to handle animations and navigation transitions. - Use Case: An agent asked to log into an iOS app in the simulator can list simulators, describe the UI to find field identifiers, batch the tap-and-type steps with wait timeouts, then screenshot the result to confirm the login succeeded. ## Quick Start Use AXe to tap the login button on my booted iOS Simulator and verify the home screen appears.

Frequently Asked Questions about axe

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I tap an element on an iOS Simulator from the command line?▼

Use `axe tap --id <identifier> --udid <UDID>` or `axe tap --label <text> --udid <UDID>` for selector-based taps, or `axe tap -x <X> -y <Y> --udid <UDID>` for coordinates. Run `axe describe-ui --udid <UDID>` first to discover available identifiers and labels.

How to automate multi-step iOS Simulator workflows with AXe?▼

Use `axe batch` with steps supplied via `--step`, `--file`, or `--stdin`. Batch runs all steps in one process with a shared HID session, and selector taps support `--wait-timeout` to poll until elements appear during navigation.

Should I use AXe batch or discrete commands for simulator automation?▼

Prefer batch for multi-step flows since it uses one invocation and one HID session, reducing latency. Fall back to discrete commands when a step's parameters depend on parsing a previous step's output, such as choosing coordinates from describe-ui JSON.

Why does my AXe tap not trigger any action in the simulator app?▼

AXe HID commands are fire-and-forget, so a tap may land before a view is interactive or during a transition. Add `--pre-delay` or `--post-delay`, use `--wait-timeout` in batch, and verify outcomes separately with describe-ui or screenshot.

Does AXe require a simulator UDID for every command?▼

Simulator-interaction commands like tap, swipe, type, describe-ui, and screenshot require `--udid <UDID>`. Commands such as `axe list-simulators` and `axe init` do not need a UDID, so list simulators first to find your target.