sequence
Execute a series of pointer, keyboard, and UI actions in a single call, stopping on structural changes to prevent acting on outdated state.
Instructions
Run an ordered list of actions in ONE call, so a click/type/enter
micro-sequence costs one round-trip instead of several. Each step is
{"op": "pointer"|"keyboard"|"click_ui"|"hypr"|"wait_for", ...that tool's
args}, e.g. [{"op":"pointer","action":"click","x":800,"y":60},
{"op":"keyboard","action":"type","text":"hello","window":"0x.."},
{"op":"keyboard","action":"key","keys":"enter"}]. With stop_on_change
(default) the run stops, best-effort, when it notices a STRUCTURAL
change between steps that the step did not intend: a window opening
(e.g. a dialog), closing, or moving, a switch to an unexpected
workspace, or a seat-taking layer surface (a launcher or on-screen
keyboard) appearing, so later steps do not act on stale state.
Notification popups and bars are not treated as changes. It does NOT catch
a bare focus change, so to type into a specific window reliably give
that keyboard step a window= address (it focuses first). Bounded to 20
steps and ~30s total. then observes the final state ('desktop'
default, 'screenshot', 'ui', 'none').
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| then | No | desktop | |
| steps | Yes | ||
| stop_on_change | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |