elstar command reference
v1.1.0 — generated from the shipped binary's help output. Every command supports --json, --device, --no-color, --quiet.
curl -fsSL https://elstar.dev/install.sh | bash
Touch
elstar tap
Tap an element by label, identifier, or coordinates.
OVERVIEW: Tap an element by label, identifier, or coordinates.
USAGE: elstar tap [--json] [--device <device>] [--no-color] [--quiet] [<query-or-x>] [<y>] [--exact] [--role <role>] [--index <index>] [--wait] [--timeout <seconds>] [--dry-run]
ARGUMENTS:
<query-or-x> Element label/identifier, or X coordinate.
<y> Y coordinate (when <query-or-x> is an X coordinate).
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--exact Match only a whole label, placeholder or identifier.
--role <role> Filter by AX role (Button, TextField, ...).
--index <index> When multiple elements match, pick this index.
(default: 0)
--wait Poll for the element until it appears.
--timeout <seconds> Wait timeout in seconds (with --wait). (default: 30)
--dry-run Print target without actually tapping.
--version Show the version.
-h, --help Show help information.elstar swipe
Swipe from one screen coordinate to another.
OVERVIEW: Swipe from one screen coordinate to another.
USAGE: elstar swipe [--json] [--device <device>] [--no-color] [--quiet] <from-x> <from-y> <to-x> <to-y> [<duration-ms>] [--edge <edge>]
ARGUMENTS:
<from-x> Start X coordinate.
<from-y> Start Y coordinate.
<to-x> End X coordinate.
<to-y> End Y coordinate.
<duration-ms> Gesture duration in milliseconds. (default: 300)
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--edge <edge> Screen edge the gesture starts from
(top|left|bottom|right). It makes a drag a system
gesture (Home, App Switcher) instead of a scroll, and
a left-edge swipe a back swipe on iOS 18 simulators.
Never inferred from the start point. A simulator
takes it on its main screen only, and refuses it
elsewhere. (values: top, left, bottom, right;
default: none)
--version Show the version.
-h, --help Show help information.elstar drag
Drag from one coordinate to another with an optional press-hold.
OVERVIEW: Drag from one coordinate to another with an optional press-hold.
USAGE: elstar drag [--json] [--device <device>] [--no-color] [--quiet] <from-x> <from-y> <to-x> <to-y> [<hold-ms>] [<duration-ms>] [--edge <edge>]
ARGUMENTS:
<from-x> Start X coordinate.
<from-y> Start Y coordinate.
<to-x> End X coordinate.
<to-y> End Y coordinate.
<hold-ms> Press-hold before moving, in ms. The hold picks an
item up (reorder, drag and drop); a scroll view reads
it as a long press and does not scroll, so pass 0 or
use swipe to scroll. (default: 500)
<duration-ms> Move duration in ms. (default: 300)
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--edge <edge> Screen edge the gesture starts from
(top|left|bottom|right). It makes a drag a system
gesture (Home, App Switcher) instead of a scroll, and
a left-edge swipe a back swipe on iOS 18 simulators.
Never inferred from the start point. A simulator
takes it on its main screen only, and refuses it
elsewhere. (values: top, left, bottom, right;
default: none)
--version Show the version.
-h, --help Show help information.elstar key
Press a keyboard key by HID usage code.
OVERVIEW: Press a keyboard key by HID usage code.
USAGE: elstar key [--json] [--device <device>] [--no-color] [--quiet] <code> [<direction>]
ARGUMENTS:
<code> HID usage code (integer).
<direction> Press direction: down or up. Omit for tap. (values:
down, up)
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--version Show the version.
-h, --help Show help information.elstar type
Type text into the focused field of the foreground app, after the
OVERVIEW: Type text into the focused field of the foreground app, after the
text it holds (on a device, at the cursor).
USAGE: elstar type [--json] [--device <device>] [--no-color] [--quiet] <words> ... [--layout <layout>] [--paste]
ARGUMENTS:
<words> Text to type. Multiple args are joined with spaces.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--layout <layout> Keyboard layout to resolve characters against, as a
Text Input Source id (com.apple.keylayout.Danish).
Defaults to the Mac's current layout. Physical
devices only — HID carries key positions, and the
device applies the layout.
--paste Deliver the text via the device pasteboard instead of
keystrokes. Exact for any character, but iOS raises a
paste-consent alert you must accept. Physical devices
only.
--version Show the version.
-h, --help Show help information.Inspect
elstar elements
List tappable elements on the current screen.
OVERVIEW: List tappable elements on the current screen.
USAGE: elstar elements [--json] [--device <device>] [--no-color] [--quiet] [--compact] [--id] [--role <role>]
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
-c, --compact Compact JSON output (role/id/x/y only).
--id Only list elements that have an accessibility
identifier.
--role <role> Filter by AX role.
--version Show the version.
-h, --help Show help information.elstar state
Snapshot app + screen + elements + screenshot in one JSON call.
OVERVIEW: Snapshot app + screen + elements + screenshot in one JSON call.
USAGE: elstar state [--json] [--device <device>] [--no-color] [--quiet] [--screenshot <screenshot>] [--no-screenshot]
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--screenshot <screenshot>
Path to write the screenshot PNG (default: a private
file for this simulator; the path is reported).
--no-screenshot Skip the screenshot capture.
--version Show the version.
-h, --help Show help information.elstar ax
Dump the accessibility tree (or hit-test a point).
OVERVIEW: Dump the accessibility tree (or hit-test a point). USAGE: elstar ax [--json] [--device <device>] [--no-color] [--quiet] [--depth <depth>] [--point <point> ...] OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --depth <depth> Maximum tree depth. (default: 5) --point <point> Hit-test point: --point X Y. --version Show the version. -h, --help Show help information.
elstar screenshot
Capture a PNG screenshot of the simulator.
OVERVIEW: Capture a PNG screenshot of the simulator.
USAGE: elstar screenshot [--json] [--device <device>] [--no-color] [--quiet] [<path>]
ARGUMENTS:
<path> Output path for the PNG (default: a private file for
this simulator; the path is reported).
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--version Show the version.
-h, --help Show help information.elstar screens
List the device's displays and show which one holds the app.
OVERVIEW: List the device's displays and show which one holds the app. USAGE: elstar screens [--json] [--device <device>] [--no-color] [--quiet] OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar uitest
Generate XCUITest queries or a test file from the live AX tree.
OVERVIEW: Generate XCUITest queries or a test file from the live AX tree.
USAGE: elstar uitest [--json] [--device <device>] [--no-color] [--quiet] [--gen] [--objc] [--class-name <class-name>] [--label <label>]
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--gen Generate a full XCTestCase scaffold.
--objc Emit the query map in Objective-C instead of Swift
(not with --gen).
--class-name <class-name>
Class name for generated tests. (default: AppUITests)
--label <label> Filter query map by element label.
--version Show the version.
-h, --help Show help information.elstar preview
Render the initial state of a SwiftUI/UIKit #Preview to PNG (does not
OVERVIEW: Render the initial state of a SwiftUI/UIKit #Preview to PNG (does not
await asynchronous content).
USAGE: elstar preview [<options>] <file>
ARGUMENTS:
<file> Path to a .swift file containing a #Preview.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--scheme <scheme> Scheme to build the module the preview belongs to.
--project <project> Project (.xcodeproj/.xcworkspace). Auto-detected if
omitted.
--configuration <configuration>
Build configuration. (default: Debug)
--list List all compiler-discovered previews in the file’s
module without rendering.
--index <index> Which #Preview in the file (0-based). (default: 0)
--width <width> Render width in points (0 = natural for SwiftUI, 393
for UIKit). (default: 0.0)
--height <height> Render height in points (0 = natural for SwiftUI, 852
for UIKit). (default: 0.0)
-o, --output <output> Output PNG path (default: a new file in elstar's
private cache).
--version Show the version.
-h, --help Show help information.elstar diff
Visual screenshot diff against a baseline.
OVERVIEW: Visual screenshot diff against a baseline.
USAGE: elstar diff [--json] [--device <device>] [--no-color] [--quiet] [--baseline <baseline>] [--fail-on-change]
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--baseline <baseline> Baseline screenshot path (default: this simulator's
previous run).
--fail-on-change Exit 1 when the screen differs from the baseline (the
report is still printed).
--version Show the version.
-h, --help Show help information.Simulator
elstar boot
Boot a simulator by name or UDID.
OVERVIEW: Boot a simulator by name or UDID. USAGE: elstar boot [--json] [--device <device>] [--no-color] [--quiet] <name-parts> ... ARGUMENTS: <name-parts> Device name or UDID. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar shutdown
Shutdown the booted simulator.
OVERVIEW: Shutdown the booted simulator. USAGE: elstar shutdown [--json] [--device <device>] [--no-color] [--quiet] OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar devices
List available simulators.
OVERVIEW: List available simulators. USAGE: elstar devices [--json] [--device <device>] [--no-color] [--quiet] OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar appearance
Get or set appearance (dark|light).
OVERVIEW: Get or set appearance (dark|light).
USAGE: elstar appearance [--json] [--device <device>] [--no-color] [--quiet] [<mode>]
ARGUMENTS:
<mode> Appearance mode: dark or light. Omit to get current
value.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--version Show the version.
-h, --help Show help information.elstar statusbar
Override or clear the simulator status bar.
OVERVIEW: Override or clear the simulator status bar.
USAGE: elstar statusbar <options>
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--clear Clear all overrides and restore the real status bar.
--time <time> Time string (e.g. "9:41" or ISO 8601).
--data-network <data-network>
Data network type: hide, wifi, 3g, 4g, lte, lte-a,
lte+, 5g, 5g+, 5g-uwb, 5g-uc.
--wifi-mode <wifi-mode> WiFi radio mode: searching, failed, active.
--wifi-bars <wifi-bars> WiFi bars 0-3.
--cellular-mode <cellular-mode>
Cellular radio mode: notSupported, searching, failed,
active.
--cellular-bars <cellular-bars>
Cellular bars 0-4.
--operator-name <operator-name>
Carrier/operator name; needs --cellular-mode or
--cellular-bars. Use "" for none.
--battery-state <battery-state>
Battery state: charging, charged, discharging.
--battery-level <battery-level>
Battery level 0-100.
--version Show the version.
-h, --help Show help information.Apps
elstar install
Install an .app bundle on the simulator.
OVERVIEW: Install an .app bundle on the simulator. USAGE: elstar install [--json] [--device <device>] [--no-color] [--quiet] <path> ARGUMENTS: <path> Path to .app bundle. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar launch
Launch an installed app by bundle ID.
OVERVIEW: Launch an installed app by bundle ID.
USAGE: elstar launch [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> [--env <KEY=VALUE> ...] [<extra-args> ...]
ARGUMENTS:
<bundle-id> Bundle identifier.
<extra-args> Extra arguments forwarded to the app (e.g.
-AppleLanguages "(da)"); one starting with -- goes
after a -- terminator.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--env <KEY=VALUE> Set an environment variable in the app, e.g. --env
SWIFTUI_VIEW_DEBUG=287 (repeatable).
--version Show the version.
-h, --help Show help information.elstar terminate
Terminate a running app.
OVERVIEW: Terminate a running app. USAGE: elstar terminate [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> ARGUMENTS: <bundle-id> Bundle identifier. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar uninstall
Uninstall an app.
OVERVIEW: Uninstall an app. USAGE: elstar uninstall [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> ARGUMENTS: <bundle-id> Bundle identifier. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar apps
List installed apps.
OVERVIEW: List installed apps. USAGE: elstar apps [--json] [--device <device>] [--no-color] [--quiet] [--all] OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --all Include system apps. --version Show the version. -h, --help Show help information.
elstar container
Get container path for an app.
OVERVIEW: Get container path for an app. USAGE: elstar container [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> <container> ARGUMENTS: <bundle-id> Bundle identifier. <container> Container type: app, data, or groups. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
Debug
elstar net
Capture HTTP traffic from an iOS app.
OVERVIEW: Capture HTTP traffic from an iOS app.
USAGE: elstar net [<options>] [<bundle-id>]
ARGUMENTS:
<bundle-id> Bundle ID (auto-detected if omitted).
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--attach Attach to a running process instead of relaunching
(unavailable: refused, because its identity cannot be
verified safely).
--har <path> Write HAR file on exit.
--body-output <body-output>
Export raw bodies into a new private directory;
requires --no-redact.
--curl-output <curl-output>
Write quoted cURL requests to a new local file
without executing them.
--no-body Suppress request/response bodies.
--timeout <seconds> Stop after N seconds.
--filter <text> Filter URLs by substring.
--no-redact Show credentials, cookies, API keys, card numbers and
e-mail addresses as sent. By default they are masked
in the output and in the HAR.
--version Show the version.
-h, --help Show help information.elstar mock
Inject HTTP mocks into a running iOS app.
OVERVIEW: Inject HTTP mocks into a running iOS app.
USAGE: elstar mock [--json] [--device <device>] [--no-color] [--quiet] <subcommand>
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--version Show the version.
-h, --help Show help information.
SUBCOMMANDS:
routes Mock traffic from (pattern, response.json) pairs.
file Mock traffic from a routes.json file.
record Record live traffic into a private directory until
ctrl-c or --timeout.
See 'elstar help mock <subcommand>' for detailed help.elstar ivar
Inspect instance variables of a class in a running app.
OVERVIEW: Inspect instance variables of a class in a running app.
USAGE: elstar ivar [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> <class-name> [<pointer>]
ARGUMENTS:
<bundle-id> Target bundle ID.
<class-name> Class name.
<pointer> Optional instance address (e.g. 0x10590…) from `eval`
— dumps that object directly.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--version Show the version.
-h, --help Show help information.elstar vh
Dump the UIKit view hierarchy of a running app.
OVERVIEW: Dump the UIKit view hierarchy of a running app.
USAGE: elstar vh [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> [--swiftui]
ARGUMENTS:
<bundle-id> Bundle ID of the running app.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--swiftui Dump recorded SwiftUI view data (launch app with
SWIFTUI_VIEW_DEBUG=287).
--version Show the version.
-h, --help Show help information.elstar responders
Dump the responder chain of the key window.
OVERVIEW: Dump the responder chain of the key window. USAGE: elstar responders [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> ARGUMENTS: <bundle-id> Bundle ID of the running app. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
elstar eval
Evaluate a Swift or ObjC expression in a running app.
OVERVIEW: Evaluate a Swift or ObjC expression in a running app. USAGE: elstar eval [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> <expression> ... [--swift] ARGUMENTS: <bundle-id> Bundle ID of the running app. <expression> Expression to evaluate. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --swift Evaluate as Swift instead of ObjC. --version Show the version. -h, --help Show help information.
elstar break
Set a breakpoint and stream hits until SIGINT or timeout.
OVERVIEW: Set a breakpoint and stream hits until SIGINT or timeout.
USAGE: elstar break [--json] [--device <device>] [--no-color] [--quiet] <bundle-id> [<symbol> ...] [--exceptions] [--duration <duration>]
ARGUMENTS:
<bundle-id> Bundle ID of the running app.
<symbol> Function, ObjC method ('-[Bar baz:]', that class
only) or bare selector ('baz:', every class).
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--exceptions Break on all ObjC exceptions instead of a symbol.
--duration, --timeout <duration>
Seconds to stream hits once the breakpoint is set
(attaching is not counted). (default: 30)
--version Show the version.
-h, --help Show help information.elstar hot
Hot-reload a Swift file into the running simulator app.
OVERVIEW: Hot-reload a Swift file into the running simulator app.
Four shapes:
elstar hot <file> [--once] auto-detect foreground app
elstar hot --watch [dir] auto-detect + watch directory
elstar hot <bundleID> <file> [--once] explicit app + reload one
file
elstar hot <bundleID> --watch [dir] explicit app + watch directory
USAGE: elstar hot [--json] [--device <device>] [--no-color] [--quiet] [<arg1>] [<arg2>] [--watch] [--once]
ARGUMENTS:
<arg1> File, bundle ID, or watch directory depending on
flags.
<arg2> File (when arg1 is a bundle ID) or watch directory.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--watch Watch a directory for changes (auto-discover if no
dir given).
--once Reload once and exit instead of watching.
--version Show the version.
-h, --help Show help information.Notifications
elstar push
Manage push notification permissions.
OVERVIEW: Manage push notification permissions. USAGE: elstar push [--json] [--device <device>] [--no-color] [--quiet] <subcommand> OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information. SUBCOMMANDS: grant Grant push notification permission. revoke Revoke push notification permission. list List push registrations. send Deliver a notification (simctl push). See 'elstar help push <subcommand>' for detailed help.
elstar notifications
List the notifications currently posted, with their title and body.
OVERVIEW: List the notifications currently posted, with their title and body. USAGE: elstar notifications [--json] [--device <device>] [--no-color] [--quiet] [<bundle-id>] ARGUMENTS: <bundle-id> Only this app's notifications. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
Privacy
elstar privacy
Grant, revoke, or reset privacy permissions.
OVERVIEW: Grant, revoke, or reset privacy permissions. USAGE: elstar privacy [--json] [--device <device>] [--no-color] [--quiet] <subcommand> OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information. SUBCOMMANDS: grant Grant a privacy permission. revoke Revoke a privacy permission. reset Reset a privacy permission. See 'elstar help privacy <subcommand>' for detailed help.
Automation
elstar wait
Wait for an element to appear on screen.
OVERVIEW: Wait for an element to appear on screen. USAGE: elstar wait [--json] [--device <device>] [--no-color] [--quiet] <query> [--exact] [--role <role>] [--timeout <timeout>] [--gone] ARGUMENTS: <query> Element label or identifier to wait for. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --exact Require exact label match instead of substring. --role <role> Filter by AX role. --timeout <timeout> Wait timeout in seconds. (default: 30) --gone Wait until no element matches instead. --version Show the version. -h, --help Show help information.
elstar assert
Assert that an element is present (or absent).
OVERVIEW: Assert that an element is present (or absent). USAGE: elstar assert [--json] [--device <device>] [--no-color] [--quiet] <query> [--exact] [--role <role>] [--exists] [--not-exists] ARGUMENTS: <query> Element label or identifier to check. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --exact Require exact label match instead of substring. --role <role> Filter by AX role. --exists Assert the element exists (default). --not-exists Assert the element does NOT exist. --version Show the version. -h, --help Show help information.
elstar location
Set or clear simulator location.
OVERVIEW: Set or clear simulator location. USAGE: elstar location [--json] [--device <device>] [--no-color] [--quiet] <lat> [<lon>] ARGUMENTS: <lat> Latitude, or 'clear' to reset. <lon> Longitude. OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information.
License
elstar license
Manage your license.
Manage your license. elstar license status show license status elstar license activate <key> activate license key elstar license deactivate release this machine's activation
elstar update
Check for and install the latest elstar release.
Check for and install the latest elstar release. elstar update
System
elstar mcp
MCP server (run, install, remove, status).
OVERVIEW: MCP server (run, install, remove, status). USAGE: elstar mcp [--json] [--device <device>] [--no-color] [--quiet] <subcommand> OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information. SUBCOMMANDS: install Install elstar MCP server into .mcp.json. remove Remove elstar MCP server from .mcp.json. status Show elstar MCP server install status. See 'elstar help mcp <subcommand>' for detailed help.
elstar hook
Manage native coding-agent hooks.
OVERVIEW: Manage native coding-agent hooks. USAGE: elstar hook [--json] [--device <device>] [--no-color] [--quiet] <subcommand> OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information. SUBCOMMANDS: install Install native post-edit hooks for a coding tool. remove Remove elstar hooks for a coding tool. See 'elstar help hook <subcommand>' for detailed help.
elstar skills
Manage bundled Claude skills.
OVERVIEW: Manage bundled Claude skills. USAGE: elstar skills [--json] [--device <device>] [--no-color] [--quiet] <subcommand> OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --version Show the version. -h, --help Show help information. SUBCOMMANDS: install Install elstar skills. remove Remove elstar skills. list List bundled elstar skills. See 'elstar help skills <subcommand>' for detailed help.
elstar diagnose
Dump environment + state for bug triage.
OVERVIEW: Dump environment + state for bug triage. USAGE: elstar diagnose [--json] [--device <device>] [--no-color] [--quiet] [--out <out>] OPTIONS: --json Emit output as JSON instead of human-readable text. --device <device> Target simulator UDID (default: booted device). --no-color Disable colored output. -q, --quiet Suppress informational output. --out <out> Write the bundle to this file instead of stdout. --version Show the version. -h, --help Show help information.
elstar feedback
Send a bug report or idea to the elstar team.
OVERVIEW: Send a bug report or idea to the elstar team.
Bundles your message with the output of `elstar diagnose` (toolchain, simulator
state, recent crashes — your home directory is redacted) and, if you have a
license, the key so we can reply. Interactive runs show the report and ask
before
sending. Nothing is ever sent without this command.
USAGE: elstar feedback [--json] [--device <device>] [--no-color] [--quiet] <message> [--kind <kind>] [--expected <expected>] [--actual <actual>] [--command <command>] [--no-diagnose] [--dry-run] [--yes]
ARGUMENTS:
<message> What happened, or what you'd like to see.
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--kind <kind> bug | idea | praise | other (values: bug, idea,
praise, other; default: other)
--expected <expected> What you expected to happen.
--actual <actual> What happened instead.
--command <command> The elstar command this is about, e.g. "elstar tap
Save --wait".
--no-diagnose Send the message only, without the diagnose bundle.
--dry-run Print the report that would be sent and exit.
-y, --yes Send without asking (required when stdin is not a
terminal).
--version Show the version.
-h, --help Show help information.elstar capabilities
List the commands this build supports and their simulator/device
OVERVIEW: List the commands this build supports and their simulator/device
readiness.
Readiness is declared in source (verified, experimental or unsupported per
target). By default nothing is measured: the command touches no simulator or
device. --live also says whether each command would run on the selected target
now and, if not, the refusal it would get.
USAGE: elstar capabilities [--json] [--device <device>] [--no-color] [--quiet] [--live]
OPTIONS:
--json Emit output as JSON instead of human-readable text.
--device <device> Target simulator UDID (default: booted device).
--no-color Disable colored output.
-q, --quiet Suppress informational output.
--live Also check each command against the selected
simulator or device now.
--version Show the version.
-h, --help Show help information.Developer
elstar doctor
Environment check: Xcode, simulators, private frameworks, PATH.
Environment check: Xcode, simulators, private frameworks, PATH. elstar doctor
elstar completions
Generate shell completions.
Generate shell completions. elstar completions [zsh|bash|fish]