browser_fill
Fill or replace text in an input, textarea, or contenteditable element, then verify the retained value, with safeguards that reject known editor proxy textareas.
Instructions
Replace one ref/selector input/textarea/contenteditable and verify retained text. Known Monaco/CM5 proxy textareas are rejected before focus/writes. verification_basis identifies the expectation; verification_source identifies DOM value, selected text or innerText. Native contenteditable readback temporarily selects/reads plain text, then restores selection. CR/CRLF count as LF; requested spaces may retain NBSP. No editor model write, paste, blur or dropdown commit.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| nth | No | Selector only: zero-based DOM index, AX tree order for role. | |
| ref | No | ||
| mode | No | native: focus/select and insert without character keydown. dom: write visible line breaks without focus, emit synthetic input/change. | native |
| name | No | role only: exact AX name; empty allowed. | |
| text | Yes | ||
| 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. | |
| 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". | |
| 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. | |
| expected_value | No | Expected retained text, default text. Verification only; insertion unchanged. No normalization or blur/async wait. |