# critic.check_ui

> Talos next · Since next

UI critic over every screen on the stack across themes, UI scales and locales: text overflow, off-screen or overlapping controls, contrast, unreachable focus, missing strings, no way back, undefined theme tokens.

Needs play.start first and the engine's Node CLI. Answers counts by code and cell, then each distinct finding once with cells and node ids, paged.

| | |
|---|---|
| Title | UI critic |
| Mode | `editor` |
| Token cost | about 286 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. |
| `full` | `boolean` | no |  |  | `true` returns every finding. |
| `locales` | `string` | no |  |  | Comma-separated; the engine's own when absent |
| `only` | `string` | no |  |  | Comma-separated check codes to run |
| `page` | `integer` | no |  |  | A page of the last findings, counted from 0, read without running the check again. |
| `scales` | `string` | no |  |  | Comma-separated; 1,1.25,1.5 when absent |
| `skip` | `string` | no |  |  | Comma-separated check codes not to run |
| `themes` | `string` | no |  |  | Comma-separated; the engine's own when absent |
| `viewport` | `string` | no |  |  | <w>x<h>: resizes Play for the run, then restores it; the Play surface when absent |

## Example

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

```json
{
  "name": "critic.check_ui",
  "arguments": {}
}
```
