Build websites for humans and agents
Make interfaces easier to interpret without degrading human experience.
Semantic HTML as a starting point
Agents often navigate through the DOM, accessibility tree or visual interface. Structured markup, stable field labels, unambiguous action names and clear heading hierarchy also help people using screen readers.
States and confirmations
An action should expose whether it is available, pending or completed. Errors should be localized and understandable. Destructive or consequential operations need explicit confirmation; a button is not blanket authorization.
Avoid dependence on a particular agent
A useful page should remain keyboard-accessible and readable without proprietary interfaces. Open APIs and formats complement semantic HTML, but no signal guarantees universal agent compatibility.
Combined testing
Test workflows with keyboard, assistive technology, end-to-end checks and different agents. Compare observed behavior with requested permissions and final server-side state.
Accessibility also helps machine interpretation
Sites with structured headings, meaningful control names, form labels and explicit status messages offer useful signals to assistive technology and DOM-observing agents. Interfaces should work without an agent, expose real controls and clearly communicate outcomes rather than relying on animation alone.
Auditing a real workflow
Test a search page: enter a query, select a filter, inspect results and navigate back. Check accessible names, keyboard operation, error messages and post-action state. If an agent fails, determine whether the cause lies in the DOM, permissions, data or its reasoning instead of changing the page arbitrarily.
Core steps
- 01Audit accessible names
- 02Test without a mouse
- 03Simulate error states
- 04Confirm consequential actions
Three questions to ask
Can controls without labels be understood?
Can an agent mistake a command for an outcome?
Does the human-facing workflow work without an agent?
Read the source documents
Versions, reuse terms and document status can change. Check them on the original sites.