Agent readiness tools
llms.txt checker
Enter a domain to check its /llms.txt and /llms-full.txt. The report opens on those files, with the evidence for each and the change to make.
The llms.txt checker runs the full scan of 60 checks, not one request. The five exemplar scans of 20 October 2026 sent 29 to 89 requests each and took 3 to 8 seconds. A scan that reaches its 60 s deadline is reported as not measured.
A stored result: vercel.com, measured on 20 October 2026. Its report opens on the same panel yours will.
What is checked
The report opens on 2 checks of rubric v0.9. Each is described here in the rubric's own words.
/llms.txt published and well-structured
A 2024 proposal for a markdown index of a site. Google Search does not use it.
llms-txt is a scored check. Agent conventions: 30% of the score. A convention never holds a level.
The scanner fetches /llms.txt on the measured origin (the exact path this check probes) and reads the markdown against the llmstxt.org proposal. It then requests up to 6 same-origin links the file names, beyond the paths the scan already requests. A link on another origin is not requested, and a link that gets no answer, or answers 406, which refuses the scan's Accept header, is not measured. Present = a 2xx file served as text/plain or text/markdown that opens with an H1, in the # form or underlined with =, where no requested same-origin link answered a status other than 2xx. The detail states how many links were requested, and suggests a blockquote summary and H2 link sections when they are missing. Served with an error = an HTML page served for the path, another content type, no H1, an H1 after other lines, or a requested same-origin link that answered a status other than 2xx and 406. Not used = a 404 or any other status below 500 that is not 2xx or 406. Not measured = 401, 403 or 429; 406, which refuses the scan's Accept header; a 5xx status; or a request for the file that gets no answer. Present earns the check's points in the agent-conventions part; Served with an error and Not used earn none.
Run the same measurement against your own site. Set the origin on the first line:
ORIGIN=https://example.com
curl -sSL -D - -A 'AgenticWebScore/0.3 (+https://agenticwebscore.com/bot)' -H 'Accept-Language: en' -H 'Accept: text/plain, text/markdown;q=0.9, */*;q=0.5' "$ORIGIN/llms.txt" | head -40 Read the llms-txt check page for its sources and the change to make.
/llms-full.txt expanded context
A convention that puts a site's text in one file. The llms.txt proposal does not define it.
llms-full is a scored check. Agent conventions: 30% of the score. A convention never holds a level.
The scanner requests /llms-full.txt on the measured origin when /llms.txt is served: a 2xx answer that is not an HTML page. It scores the file only when /llms.txt is in use, where llms-txt reads Present, and reads /llms.txt to see whether it links the file. Present = a 2xx file served as text/plain or text/markdown with at least 150 words of text that is not mostly links; the detail says whether /llms.txt links it. Served with an error = an HTML page served for the path, another content type, fewer than 150 words, or at least 4 link lines that make up half of its lines or more. Not used = a 404 or any other status below 500 that is not 2xx or 406. Not scored = /llms.txt is not served, or is served with an error. Not measured = 401, 403, 429 or a 5xx status, 406, which refuses the scan's Accept header, or no answer, from /llms.txt or /llms-full.txt. Present earns the check's points in the agent-conventions part; Served with an error and Not used earn none.
Run the same measurement against your own site. Set the origin on the first line:
ORIGIN=https://example.com
curl -sSL -o /dev/null -w 'status=%{http_code} type=%{content_type} bytes=%{size_download}\n' -A 'AgenticWebScore/0.3 (+https://agenticwebscore.com/bot)' -H 'Accept-Language: en' -H 'Accept: text/plain, text/markdown;q=0.9, */*;q=0.5' "$ORIGIN/llms-full.txt"
curl -sSL -A 'AgenticWebScore/0.3 (+https://agenticwebscore.com/bot)' -H 'Accept-Language: en' -H 'Accept: text/plain, text/markdown;q=0.9, */*;q=0.5' "$ORIGIN/llms.txt" | grep -i 'llms-full' Read the llms-full check page for its sources and the change to make.
Questions about the llms.txt checker
Does Google Search use llms.txt?
A 2024 proposal for a markdown index of a site. Google Search does not use it. It is read today by some documentation tools and coding agents. Lighthouse audits it.
What does the scan request?
It requests /llms.txt and /llms-full.txt on the measured origin, and up to 6 same-origin links that /llms.txt names. llms-full is scored only when /llms.txt is in use.
How do these checks count in the score?
llms-txt and llms-full are in the agent-conventions part: 30% of the score, and none of its checks holds a level. The methodology says what each state earns.
Why does it run the full scan?
The form starts the same scan as /scan, so the result is a scan record with a fingerprint you can verify. The report opens on llms-txt and llms-full, and the full report follows. A stored record younger than 6 hours opens instead of a new scan.
Read next
Related checks in the rubric:
-
markdown-negotiation: Markdown content negotiation -
link-headers: Discovery via Link response headers -
sitemap-xml: XML sitemap
The methodology is the scoring contract for all 60 checks, including the rule for a site that is not measured.