resulthack

llms.txt validator: check your file line by line

Paste the llms.txt you already have, hand-written or made by a CMS plugin, and see each line checked against the llmstxt.org proposal (v2, read 24 Sep 2026). It runs in this tab: nothing you paste is sent anywhere. No file yet? Build one in the generator.

The format, as the proposal gives it

The llms.txt proposal by Jeremy Howard (llmstxt.org, first published 3 Sep 2024, revised as v2 in August 2026, read 24 Sep 2026) is a Markdown file whose parts come "in the specific order":

  1. an optional byte-order mark (BOM);
  2. an H1 with the name of the site or project, "the only required section";
  3. a blockquote with a short summary;
  4. zero or more Markdown sections "of any type except headings" with more detail;
  5. zero or more H2 sections, each a "file list": a Markdown list whose items hold a required [name](url), then optionally a : and notes.
# Acme Tents

> Ultralight tents and tarps, sold by mail order across the EU.

Prices are in euros and include VAT.

## Products

- [Ultralight 2](https://example.com/tents/ultralight-2.md): two-person tent, 1.1 kg

## Optional

- [Company history](https://example.com/about/history.md)

An H2 named "Optional" holds secondary links an agent can skip. Since v2 that is a convention only; the proposal's changes page says it no longer carries "mechanical semantics". v2 also lets a file sit at a sub-path, such as /docs/llms.txt, covering the pages under that path, and it suggests rel="describedby" links pointing to it.

Errors: the file does not follow the format

Warnings: allowed, or not addressed, but probably not what you meant

Info

The number of characters, lines, links and sections; a BOM; CRLF (Windows) or bare CR line endings; trailing spaces; no summary; a missing final newline. None of these break the format. Line endings and a BOM survive only when you drop or open a file: a pasted text box always holds LF endings.

What the proposal does not say

The checker does not invent rules for these. Where it warns, the warning says why.

The cleaned version

It changes four things and nothing else: * and + bullets become -; runs of blank lines become one, with one blank line around each # heading; trailing spaces and tabs are removed; line endings become LF. Fenced code is left alone apart from trailing spaces, and a BOM is kept. It does not fix errors, reorder anything or touch your wording. Cleaning a cleaned file changes nothing. The test suite runs the generator's output for three sets of choices (a name only; a full file with summary, details, two sections and Optional; names full of * _ [ ] and backticks) through this checker: each comes back unchanged, with no errors and no warnings.

Who reads llms.txt

Publishing an llms.txt is cheap, but no search engine or AI operator we checked says it uses one to rank, crawl or cite a site. What the sources say, each checked on 24 Sep 2026:

So a valid llms.txt is useful to an agent or a tool that goes looking for one, for example a coding assistant pointed at your docs. This checker tells you whether yours can be read the way the proposal describes. It makes no promise about traffic, ranking or citations.

What this checker cannot see