diff --git a/README.md b/README.md index 93474e687..84f703fc1 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ The project is in early development and considered experimental. Pull requests a ## Features - Platforms: iOS (simulator + physical device core automation) and Android (emulator + device). - Core commands: `open`, `back`, `home`, `app-switcher`, `press`, `long-press`, `focus`, `type`, `fill`, `scroll`, `scrollintoview`, `wait`, `alert`, `screenshot`, `close`, `reinstall`. -- Inspection commands: `snapshot` (accessibility tree). +- Inspection commands: `snapshot` (accessibility tree), `appstate`, `apps`, `devices`. - Device tooling: `adb` (Android), `simctl`/`devicectl` (iOS via Xcode). - Minimal dependencies; TypeScript executed directly on Node 22+ (no build step). @@ -148,6 +148,7 @@ Sessions: - `--save-script` accepts an optional path: `--save-script ./workflows/my-flow.ad`. - For ambiguous bare values, use an explicit form: `--save-script=workflow.ad` or a path-like value such as `./workflow.ad`. - Deterministic replay is `.ad`-based; use `replay --update` (`-u`) to update selector drift and rewrite the replay file in place. +- On iOS, `appstate` is session-scoped and requires an active session on the target device. Navigation helpers: - `boot --platform ios|android` ensures the target is ready without launching an app. @@ -217,8 +218,10 @@ Settings helpers: Note: iOS supports these only on simulators. iOS wifi/airplane toggles status bar indicators, not actual network state. Airplane off clears status bar overrides. App state: -- `appstate` shows the foreground app/activity (Android). On iOS it uses the current session app when available, otherwise it resolves via XCTest snapshot. -- `apps --metadata` returns app list with minimal metadata. +- `appstate` shows the foreground app/activity (Android). +- On iOS, `appstate` returns the currently tracked session app (`source: session`) and requires an active session on the selected device. +- `apps` supports Android, iOS simulators, and iOS devices. +- `apps` includes default/system apps by default (use `--user-installed` to filter). ## Debug @@ -227,6 +230,7 @@ App state: - The trace log includes snapshot logs and XCTest runner logs for the session. - Built-in retries cover transient runner connection failures and Android UI dumps. - For snapshot issues (missing elements), compare with `--raw` flag for unaltered output and scope with `-s "