AI browser agents read your page much like a screen reader does. Anthropic's browser use tool for Claude, generally available on the Claude API, works with a page "through its structure (the accessibility tree, elements, forms, and tabs)" as well as through screenshots and viewport coordinates. Chrome's agent-ready toolkit goes further: agents rely on the accessibility tree "as their primary data model".

What an agent cannot see

An icon-only button without a label shows up in the tree as a button with no name. A clickable div often does not show up as a button at all. An input without a label is a text box nobody can describe. The screenshot may still show the heart icon, but the structure the agent leans on has nothing to say about it.

The fixes are the old basics

<!-- icon-only button: give it a name -->
<button type="button" aria-label="Save to wishlist">
  <svg aria-hidden="true">…</svg>
</button>

<!-- inputs: a real label -->
<label for="email">Email</label>
<input id="email" type="email" />

Use real <button> and <a> elements instead of clickable divs, give icon-only buttons an aria-label, and connect every input to a <label>. Chrome checks the same things for agents: every interactive element needs a programmatic name, and the accessibility tree should be well-formed. Its Lighthouse "Agentic browsing" category is available from Chrome 150, and the score is informational.

Check what an agent sees

Open DevTools, select an element and look at the Accessibility pane. The computed role and name there are what assistive technology gets, and now agents too. In Angular, Angular Aria and the CDK take care of roles and keyboard behaviour, but the names are still yours to write.

Sources

I post short notes like this on LinkedIn.

Need help with this?

Blueprint drawing: on the page, an Add to cart button, a heart icon button and an Email field; below, the accessibility tree an agent reads, where the heart button appears as a button with an empty name, highlighted. The fix underneath: <button aria-label="Save">.

Have an Angular app that needs a senior hand?

Tell me about your app and what is slowing your team down. We go through it on a call and you leave with concrete next steps.