Skip to content

A11y Tools (3)

Enable with --caps=a11y.

Accessibility tools expose the browser's accessibility tree to the LLM. The accessibility tree is a structured representation of the page that includes role, name, value, and state for each element — the same tree used by screen readers.

Unlike raw DOM queries, the accessibility tree provides LLM-friendly element references (e.g., el-1, el-2) that can be passed directly to other tools like wavexis_click or wavexis_fill. This means the LLM doesn't need to know CSS selectors — it can reason about elements by their semantic role and name.

This tier is also the foundation for wavexis_act (natural language interaction), which takes an a11y snapshot and matches natural language instructions to elements.

Tool Parameters Description
wavexis_a11y_snapshot session_id, selector Capture the full accessibility tree. Returns a tree of nodes with ref, role, name, value, state, and children. Optional selector to scope to a subtree.
wavexis_a11y_node session_id, ref Get a specific accessibility node by its ref (e.g., el-3). Returns the node's properties and its immediate children.
wavexis_a11y_ancestors session_id, ref Get the ancestor chain of a node by its ref. Returns a list of nodes from the root to the target's parent.

Use a11y refs for interaction

wavexis_session_open(backend="cdp")
wavexis_navigate(session_id="abc-123", url="https://example.com")

# Get the accessibility tree
wavexis_a11y_snapshot(session_id="abc-123")
→ {"tree": {"ref": "el-1", "role": "button", "name": "Login", "children": [...]}}

# Click using the a11y ref
wavexis_click(session_id="abc-123", selector="el-3")

wavexis_session_close(session_id="abc-123")

Relationship to wavexis_act

The wavexis_act tool (M1, natural language interaction) uses wavexis_a11y_snapshot internally. It takes the snapshot, matches the instruction to an element by keyword scoring on role + name, and executes the action. You don't need to call a11y tools manually when using wavexis_act.