# ui.tree

> Talos next · Since next

The live UI tree across the screen stack: per node its stable id (the one to press), role, classes, bounds (logical and device px), state, text with string key, computed style.

Filter by screen, id, depth or text; an unfiltered read of a large screen is refused.

| | |
|---|---|
| Title | What is on screen |
| Mode | `editor` |
| Token cost | about 193 tokens (in the default list, paid on every call) |
| Toolset | core |

## Arguments

| Argument | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
| `agent` | `string` | no |  |  | The name of the agent making the call, when several agents share one connection: each named agent is its own actor and plays its own game. Leave it out when there is one agent. |
| `depth` | `integer` | no |  |  | Levels below the root or id; 0 is that node alone |
| `id` | `string` | no |  |  | This node and its subtree: pause:resume or resume |
| `screen` | `string` | no |  |  | Only this screen's nodes |
| `text` | `string` | no |  |  | Text or string key contains this, any case |

## Example

An MCP `tools/call` with the required arguments (placeholders in angle brackets).

```json
{
  "name": "ui.tree",
  "arguments": {}
}
```
