Good Citizens · Usability Harness · Simulator ·
LLM view: the page, as an AI model reads it
There is a new reader on every page we make. It doesn’t look at the layout; it is given text, a list of named controls, or a screenshot, and it often reads on behalf of a person who asked it to.
This tool doesn’t show what a model thinks. It shows what a model is given, so you can see whether your page still makes sense when that is all there is.
I · Who is reading
A new reader, often working for someone
In December 2024, OpenAI’s crawler made 569 million requests a month1 across Vercel’s network, and Anthropic’s made 370 million. Google’s search crawler made 4.5 billion.
Crawlers gather pages for training and for search. Agents are different: they open a page because a person asked them to, to compare prices, fill in a form or summarise a long document. Many of those people are disabled. In WebAIM’s 2026 survey2 of screen reader users, six in ten use AI to describe images, and four in ten use it for guidance through a task online. Since 2023, Be My Eyes3 has let blind people ask an AI model what their camera sees.
So when a model reads your page badly, it is often a person who goes without.
II · What they get
Pixels, a tree, or the first HTML
The major AI crawlers don’t run JavaScript1. They fetch the script files and never execute them, so anything a page builds in the browser never reaches them.
Agents see more, in one of two ways. Some look at screenshots: Claude’s computer use4 works from images of the screen, and OpenAI’s Computer-Using Agent5 perceives the browser as pixels. Others read the accessibility tree, the same list of roles and names a screen reader uses. Playwright MCP6, which many agents use to drive a browser, hands the model lines like textbox “What needs to be done?” and needs no vision at all.
Google’s own Lighthouse guidance7 puts it plainly: agents rely on the accessibility tree as their primary data model, and semantic HTML is the machine-eye view of your page. A button that a screen reader can’t name, an agent can’t name either.
III · How well they do
Agents stumble where people are made to
On WebArena8, a benchmark of 812 everyday web tasks, people succeeded 78% of the time and GPT-4 14%, in 2023. By 2025, OpenAI’s agent reached 58%.
Agents are improving quickly, and they still fail in familiar places. In A11y-CUA9, a computer-use agent completed 78% of everyday tasks as usual, 42% when it had to work by keyboard alone, and 28% through a screen magnifier: the same conditions many disabled people work in every day. In a three-week diary study10 with blind participants, the best agent succeeded about half the time.
That is the honest picture. An agent is not yet a fix for an inaccessible page. An accessible page is still the fix, for people and for the agents working for them.
IV · Hidden words
Text people can’t see is read in full
OWASP ranks prompt injection11 the first risk for applications built on language models, and web pages are one of the main ways in.
A line written in white on white, or pushed off the screen, is invisible to people and plain to a model. Some pages use that gap to give agents orders. In Anthropic’s own tests of an agent in the browser, such attacks succeeded 23.6% of the time12 before safeguards and 11.2% after. Researchers have shown the same trick working through the accessibility tree13.
The design rule is old and simple: say the same thing to everyone. Words kept for screen readers are right to keep. Words that tell a machine something different from what people see are not.
V · What to do
What it means for your design
- 01
Put the words in the first HTML
Render content on the server, or at build time, so the page arrives with its words in it. Crawlers that skip scripts, and people on slow connections, both get the page.
- 02
Use real controls, with names
A button that is a <button>, a link that is an <a>, each with words or a label. Agents find them by role and name, as screen readers do (WCAG 4.1.2).
- 03
Prefer HTML to ARIA
Native elements carry their roles, names and states for free. A clickable div is invisible to anything reading roles.
- 04
Say the same thing to people and machines
Keep structured data true to the visible page: the same price, the same date, the same author. Google asks for exactly this14.
- 05
Hide nothing you wouldn’t show
No text in the background colour, no instructions meant only for machines. If it matters, show it; if it is for screen readers, make sure it says what the screen says.
- 06
Choose your robots.txt rules by purpose
AI companies name their crawlers by what they do: training, search15, or fetching for a person16. Block training if you like, and still let people’s assistants in.
VI · Prototypes
On prototypes: once it is built
This tool reads the page’s structure, so it needs real text, headings and buttons. A Figma prototype is drawn as a picture, with nothing underneath to read, and the tool will say so rather than report nonsense.
It does work on prototypes built as real pages: Axure, UXPin and Justinmind exports, Framer and Webflow previews, Storybook stories, and apps generated by tools like Figma Make or v0. If the content sits in a frame from another site, the tool offers to open the frame on its own.
VII · Myths
What people get wrong
- You need an llms.txt
- It is a proposal, not a standard. Google’s John Mueller said in 2025 that no AI system uses it, and Google says its AI features need no special files. Lighthouse does check for one, so it does no harm.
- AI crawlers see what browsers see
- The major ones don’t run JavaScript. If the words arrive by script, they don’t arrive.
- Blocking GPTBot keeps you out of ChatGPT
- Training, search and fetching for a person are separate crawlers, and fetches a person asks for may not follow robots.txt at all.
- Agents will make accessibility unnecessary
- They fail most where pages are least accessible. The fix for both is the same page, built well.
Click it on any page and a panel opens with the page as a model receives it: as Markdown with its token count, as first sent before JavaScript, as a map of the controls an agent can name, its facts for machines, and every hidden word. Click again to close it.
Works in Chrome, Safari, Firefox and Edge on a computer.
Or all 10 at once
Download the bookmarks fileOne Good Citizens folder with every tool in it. Download it, then import it:
- Chrome: Bookmarks › Import bookmarks and settings › Bookmarks HTML file
- Safari: File › Import From › Bookmarks HTML File
- Firefox: Bookmarks › Manage bookmarks › Import and Backup › Import Bookmarks from HTML
Every time you check a design against the people who will use it, you are doing what Good Citizens is for. Thank you for that.
More tools: Fovea · Colour vision · Ageing eyes · all 10
VIII · Sources
The research behind this page
Every figure above comes from one of these 18 sources. The small numbers in the text point here, and each source points back.
Vendor data
The rise of the AI crawler·
Vercel, with MERJ
Survey
Screen Reader User Survey #11 results·
Article
Introducing Be My AI (formerly Virtual Volunteer) for People who are Blind or Have Low Vision, Powered by OpenAI’s GPT-4·
Guidance
Computer use toolClaude Platform Docs
Vendor data
Computer-Using Agent·
Reference
Playwright MCPGitHub
Guidance
Lighthouse agentic browsing scoring·
Chrome for Developers
Peer-reviewed study
WebArena: A Realistic Web Environment for Building Autonomous Agents·
ICLR 2024
Article
A11y-CUA Dataset: Characterizing the Accessibility Gap in Computer Use Agents·
arXiv
Peer-reviewed study
Are We There Yet? Assessing Computer-Use Agents for Blind Users’ Accessible Interaction with Desktop Applications·
EMNLP 2026
Standard
LLM01:2025 Prompt injection·
OWASP Top 10 for LLM Applications
Vendor data
Piloting Claude in Chrome·
Peer-reviewed study
Manipulating LLM Web Agents with Indirect Prompt Injection Attack via HTML Accessibility Tree·
EMNLP 2025 Demos
Guidance
AI features and your website·
Google Search Central
Guidance
Overview of OpenAI CrawlersOpenAI Platform
Guidance
Does Anthropic crawl data from the web, and how can site owners block the crawler?Claude Help Center
Reference
The /llms.txt file·
llmstxt.org
Article
No AI system currently uses llms.txt·
Bluesky