wait_for_ui
Waits for a UI element to exist, become visible, or become clickable, and resolves it before interaction when timing or availability is uncertain.
Instructions
Purpose: Resolve elements and/or detect that a UI transition or availability condition has occurred.
Capabilities:
Deterministic element resolution
Synchronization when element timing or availability is uncertain
Constraints:
Does not verify correctness of the resulting state
Must not be used alone to confirm action success when an applicable expect_* tool exists
Recommended Usage:
Use wait_for_ui to resolve an element before acting or to wait for UI readiness
Call the action tool
If the expected outcome is known, follow with expect_* as final verification Device-readiness blockers prevent readiness success; unknown/unsupported device signals remain explicit. Set requireReady=true to require both the existing predicate and settled UI readiness, using the same fresh samples and one timeout budget. The readiness summary explains uncertainty. Default predicate semantics are unchanged.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| match | No | ||
| retry | No | ||
| deviceId | No | Optional device serial/udid | |
| platform | No | Optional platform override | |
| selector | No | ||
| condition | No | exists | |
| timeout_ms | No | ||
| requireReady | No | ||
| poll_interval_ms | No |