native-describe-screen
Read a running app's raw native accessibility tree and point-space geometry to debug low-level UI data behind the public describe screen tool.
Instructions
Read the running app's native accessibility screen description via injected native devtools.
Returns a flat list of accessibility leaf elements with:
raw frame and tapPoint in points, on the portrait axes of the screen
normalizedFrame and normalizedTapPoint on the same axes. gesture-tap uses these axes, also when the UI is landscape
top-level screenFrame metadata: the screen bounds on these axes
traits and optional labels/identifiers
This is a low-level native inspection tool. The normalized fields are intended to help with backend migration work, but the public describe contract is still separate.
Use when you are evaluating or debugging the lower-level native data behind the public describe tool, or when you need its raw point-space geometry rather than describe's normalized contract.
If status is restart_required: follow the message (usually restart-app), then retry. If status is service_stale: the app is already injected, so restarting it cannot help — restart the tool-server (argent server stop && argent server start --detach) and retry. If the same status comes back after that restart, stop restarting: follow the message, which names the terminal fallback. If status is connect_pending: the app is injected and still connecting — do not restart it, wait a few seconds and retry. If status is init_failed: the simulator's native-devtools environment could not be initialised — follow the message (re-boot the simulator) rather than retrying this tool.
A not-connected or not-running app comes back as one of those statuses rather than a failure. Failures are separate: an Apple system app is rejected outright (terminal — never retry it), and the screen query itself can error or time out.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| udid | Yes | Simulator UDID | |
| bundleId | Yes | Bundle ID of the app | |
| skipClasses | No | Exact UIView class names whose entire subtree should be pruned (e.g. ["UIImageView"] to drop image-heavy branches) | |
| skipClassPrefixes | No | Class name prefixes to prune entire subtrees. For SwiftUI apps use ["_TtGC7SwiftUI"] to drop mangled SwiftUI generic type subtrees while keeping UIKit bridges. |