sequence
Run ordered pointer, keyboard, and UI actions in one call to reduce round-trips for click/type/enter macros and stop when windows change unexpectedly.
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 (the keys go to that window).
Bounded to 20
steps and ~30s total. then observes the final state ('desktop'
default, 'screenshot', 'ui', 'none'). background applies to every
pointer, keyboard and click_ui step that does not set its own, and
background=true refuses a hypr step that takes the human's view.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| then | No | desktop | |
| steps | Yes | ||
| background | No | ||
| stop_on_change | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |