Capability reference
This page lists capabilities that the current version exposes and can verify. Each entry identifies its invocation, required context, observable output, and fail-closed condition. Deployment-provided models, browsers, and remote workers affect runtime availability, so the presence of a type in source does not prove that the current machine has its backend.
Read the installed contracts first
agent schema returns the external-planner protocol, action revision, JSON Schema, and session invariants without starting a browser. capabilities --json probes the actual Web adapter and returns a test.driver.web.* error when that adapter is incompatible, missing, or unable to start. Callers must handle this result instead of substituting static documentation for machine discovery.
Capabilities have three delivery states.
Use these guides when you need procedure and implementation detail beyond the tables.
Core sessions
The persistent-session loop is start -> observe -> act -> observe -> finish. An action can change the DOM, focus, route, viewport, or browser context. Observe again after the change and never reuse an old @eN or @cN.
Surface execution
Page and interaction actions
Synchronization, network, and evidence actions
The action protocol revision is 15. Generate the complete schema with a3s-test agent schema. Unknown fields, missing required fields, invalid enums, and actions unsupported by the selected surface are rejected before execution.
Live control-state assertions
Web assertions read live DOM properties. Native checkbox and radio checked values take priority over contradictory ARIA, while custom controls can expose boolean state through valid ARIA. selected_values = [] is a valid exact empty-set assertion. GUI can compare an exact value only when CUA supplies one and otherwise fails closed; boolean and multi-selection state are currently unsupported there. TUI control-state assertions are unsupported. Page Context refs resolve to their current semantic target before dispatch, while a standalone ref that cannot expose the requested property returns a driver error rather than guessing.
Live semantic-state assertions
Native state takes priority over contradictory ARIA. Boolean ARIA accepts exactly true and false; aria-invalid additionally accepts grammar and spelling as invalid. The five dimensions are orthogonal, and every negative form requires one resolved target plus authoritative boolean evidence.
ACL rejects browser refs and visual points as test.spec.semantic_state_target_unstable; a current Page Context ref may resolve to a stable locator first. Semantic locators traverse open Shadow DOM and exclude accessibility-hidden ancestry, while CSS retains current-document semantics. Unsupported state returns test.driver.web.state_unsupported. GUI and TUI fail closed. Every form supports bounded stability; checked-in evidence covers 1,000/1,000 deterministic Web classifications, 100/100 sustained and 100/100 transient windows, plus 27 positive assertions and 17 negative or driver-error classifications in standalone Chromium.
Focus-ownership assertions
Web resolves one stable target and reads the deepest activeElement through nested open shadow roots in one page evaluation. Flat-tree containment follows assigned slots, DOM parents, and shadow hosts. Semantic locators traverse open Shadow DOM and exclude accessibility-hidden composed ancestry, including hidden slot wrappers. CSS retains current-document query semantics.
ACL rejects browser refs and visual points as test.spec.focus_target_unstable; a current Page Context ref may first resolve to a stable locator. A programmatic standalone browser ref returns test.driver.web.state_unsupported. GUI and TUI fail closed because their current protocols do not expose equivalent focus ownership. Checked-in evidence covers 600/600 deterministic Web classifications, 200/200 sustained and 200/200 transient windows, plus 17 positive assertions and 11 negative or driver-error classifications in standalone Chromium with forward/reverse Tab, open Shadow DOM, assigned slots, timed focus movement, and exact cleanup.
Rendered-output assertions
CSS collection probes use visual rendered geometry and do not treat aria-hidden alone as invisible. Semantic locators additionally exclude accessibility-hidden ancestry and traverse open Shadow DOM. Both exclude hidden, display-none, visibility-hidden, fully transparent, and zero-geometry targets. rendered_texts is bounded to 256 expected and observed items. GUI and TUI fail closed for all revision-9/revision-10 forms.
Rendered-layout assertions
The 17 relations cover four directions, containment/inside, overlap/non-overlap, six edge or center alignments, and width/height/size equality. Both targets must be stable semantic or CSS locators; browser refs and visual points fail admission, while current Page Context refs can resolve to stable locators before dispatch.
Web resolves both targets and reads both rectangles in one page evaluation. CSS keeps visually rendered aria-hidden elements, while semantic locators exclude accessibility-hidden ancestry and traverse open Shadow DOM. GUI requires both frames in one fresh CUA snapshot. TUI fails closed because terminal cells are not equivalent rendered-page geometry. Checked-in evidence covers 3,400/3,400 deterministic cases, 100/100 sustained and 100/100 transient windows, all 17 relations, and 15 negative/error classifications in standalone Chromium.
Viewport coverage and pointer-hit assertions
All forms require a repeatable semantic or CSS locator. Browser refs and visual points fail admission, while a current Page Context ref may resolve to a stable locator before dispatch. Coverage is intersection area divided by complete target area, so it proves geometry without claiming occlusion or pointer reachability. Web captures the target, visual viewport, and optional nine-point hit grid atomically. Semantic targets and deep hit testing traverse open Shadow DOM. Native hit testing treats a pointer-receiving transparent overlay as a blocker and skips pointer-events: none overlays. GUI and TUI fail closed because their current protocols do not expose equivalent evidence.
Checked-in evidence covers 1,000/1,000 base Core geometry cases plus 2,000/2,000 threshold cases, 4,000/4,000 Web protocol classifications, 300/300 sustained and 300/300 transient windows, plus 37 passing assertions and 25 negative or driver-error classifications in standalone Chromium with exact cleanup.
Page perception and Test Kit
Public ref authority remains fixed. @eN comes from browser accessibility, and @cN represents a uniquely actionable Page Context node. Both are actionable only in the latest observation. Within that observation, a Rust-validated complete delta may retain the stable locator behind an unaffected @cN; changed, removed, reset, legacy, or uncertain bindings fail closed. @uN connects style, layout, state, and motion evidence and is always read-only.
Human review and repair
Expectations, contracts, and models
Every provider is deployment-supplied. A3S Test downloads no weights, selects no inference backend, and stores no provider's long-lived credentials. Requests bind provider and model identity, deadline, bytes, candidate count, cost, and usage limits.
Evidence, regression, and scheduling
A remote request cannot select a worker executable, application, backend, credential, or network policy. Deployment startup fixes those values. GUI workers also use exclusive pools so concurrent sessions cannot compete for one physical desktop.
Current support scope
Outside built-in authority
- Test Kit does not edit the host DOM, source, or workspace.
- A model provider owns no browser observation, test verdict, or repair authorization.
- Submitting a finding grants no commit, push, release, or deployment permission.
- PRDs and designs do not become a fabricated browser accessibility tree.
- An unverified GUI backend is not presented as release-grade support.
To run a real flow, continue with From page exploration to stable regression. To expose rendered context, use Web Test Kit. When a run fails, use Troubleshooting to separate product, specification, driver, and infrastructure faults.
