browser_scroll
Scroll a page, container, or viewport by pixel offsets, or search until specified text appears in visible DOM content. Returns a fresh ref and reports stop reason and confirmed progress.
Instructions
Scroll one ref/selector container or viewport x/y (default center). DOM emits no wheel events; wheel sends native wheel input. until returns a fresh ref. Stopped searches report stop_reason, scroll_pending and confirmed progress; a boundary/miss does not prove end of data.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | ||
| y | No | ||
| nth | No | Selector only: zero-based DOM index, AX tree order for role. | |
| ref | No | ||
| mode | No | dom | |
| name | No | role only: exact AX name; empty allowed. | |
| frame | No | Child frame: at least one of url/title/path. url/title exact; path=unique nested CSS iframe steps (e.g. ["#frame"]); exclusive with frame_id. | |
| until | No | DOM-only search of visible elements' textContent; selector is a CSS filter within the container. | |
| delta_x | No | ||
| delta_y | No | Vertical delta, positive down; required without until. | |
| observe | No | Read this explicit control after the action within its remaining budget; observation is separate from delivery. No assertion or automatic replay. | |
| frame_id | No | Selector frame; default main. | |
| selector | No | Query by selector_type; role example: selector="link", name="Claim". | |
| max_steps | No | ||
| tab_handle | Yes | ||
| timeout_ms | No | Total preparation/dispatch/verification and optional observation budget. | |
| dialog_policy | No | accept/dismiss auto-handle dialogs and return their messages. | ask |
| selector_type | No | Default css. label: exact associated HTML label, whitespace normalized. placeholder: exact attribute. |