Agent Ready HTML

How to see your site as a plain-fetch client

In short

Request the page with a plain client, read the status line, then look for your H1 and your answer in the bytes that come back. Do the same with an Accept header for markdown, for /llms.txt and for a path that should not exist. The viewer on this site runs all four at once.

A plain-fetch client sends one request, reads the response and stops. It never runs your scripts. Seeing what it receives takes four commands, and the viewer on this site runs the same four for any public URL.

What the evidence says

  • The guide test is curl -iL -A 'Claude-User/1.0' against a page; the request should end in 200 and the HTML should contain the answer. [primary source] source, read 4 November 2026.
  • A 403, an empty app shell or a JavaScript-only answer prevents fetch-only agents from reading the page. [primary source] source, read 4 November 2026.
  • A curl request cannot prove a real agent is allowed, because bot blockers weigh source IP more than user agent; server logs and published crawler IP ranges are the check. [primary source] source, read 4 November 2026.
  • Ora's lab found (2026-10-19) that hiding the answer in JavaScript and returning 403 to agent user agents were the only two of 19 configurations that stopped retrieval. [vendor claim, 2026-10-19] source, read 4 November 2026.
  • The homepage was the agent's first step in 92 percent of runs that reached it. [primary source] source, read 4 November 2026.
  • Framer documents previewing what agents see by adding a md query parameter to any page URL. [primary source] source, read 4 November 2026.

Steps

  1. Fetch the page the way the Vercel and Ora guide does: with an agent-style user agent, following redirects, printing headers. The request should end in 200 and the body should hold the answer.
  2. Search the body for your H1 and for a sentence from the first screen of the page. If neither is there, the page depends on JavaScript for its content.
  3. Ask for markdown with an Accept header and read the content type that comes back. text/markdown means negotiation works; text/html means the header was ignored.
  4. Request a path that does not exist and read the status. 404 is correct. 200 is a soft 404.
  5. Run the same URL through the viewer to see the H1 and the first 200 words marked in the raw HTML.

The four requests

curl -iL -A 'Claude-User/1.0' https://example.com/ | head -40
curl -sL https://example.com/ | grep -i -m1 '<h1'
curl -sIL -H 'Accept: text/markdown' https://example.com/ | grep -i '^content-type'
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/agent-ready-html-missing-path-check

Check the result

A clean result is 200, an H1 in the output, a markdown content type or an honest text/html, and 404 for the made-up path. A curl from your own network does not prove a real agent is let in: bot protection weighs the source address, so server logs and published crawler address ranges are the check for that. Open the viewer to run it on your own URL.

Related: all guides, initial HTML, llms.txt, checking the initial HTML like an agent.

Sources

  1. Vercel and Ora: Make your site readable by AI agents https://vercel.com/kb/guide/make-your-site-readable-by-ai-agents, read 4 November 2026
  2. Ora: AgentReady launch post, findings 01 to 04 https://ora.ai/blog/agentready-launch, read 4 November 2026
  3. Framer help: Make your site readable by AI agents https://www.framer.com/help/articles/make-site-readable-by-ai-agents/, read 4 November 2026

Last reviewed 4 November 2026