NanoFile

llms.txt

llms.txt is a small markdown file at the root of a website that gives a language model a map of the site: what this is, and which pages are worth reading. Jeremy Howard proposed it in September 2024.

Checked against the official documentation in August 2026. These tools change quickly, so the date is part of the answer.

The format
# Title

> Optional description goes here

Optional details go here

## Section name

- [Link title](https://link_url): Optional link details

Title

Optional description goes here

Optional details go here

Section name

The H1 is the only required part. The blockquote should carry enough for the rest of the file to make sense on its own.

A real one
# NanoFile

> A markdown viewer that runs entirely in the browser. Drop a .md file in
> and read it rendered. Free, no account, and the file is never uploaded.

Rendering happens client-side. There is no upload endpoint, so a document
opened here cannot be read by the operator or anyone else.

## Tools

- [Markdown table generator](https://nanofile.app/markdown-table-generator): grid in, markdown table out.
- [Markdown checker](https://nanofile.app/markdown-checker): finds what renders wrong.

## Reference

- [Cheat sheet](https://nanofile.app/cheatsheet): every syntax with a rendered example.

NanoFile

A markdown viewer that runs entirely in the browser. Drop a .md file in and read it rendered. Free, no account, and the file is never uploaded.

Rendering happens client-side. There is no upload endpoint, so a document opened here cannot be read by the operator or anyone else.

Tools

Reference

Where it goes

At the root, as /llms.txt. It can also sit at a subpath, such as /docs/llms.txt, in which case it covers the URLs under that path. Where more than one applies, an agent should use the most specific.

The order is part of the spec

An optional byte-order mark, then an H1 with the project name, then a blockquote summary, then optional detail in paragraphs and lists but no headings, then H2 sections containing lists of markdown links with optional descriptions after a colon.

The H1 is the only required element. Everything else is optional, but a file without the blockquote is much less useful, because that line is what an agent reads to decide whether the rest is relevant.

What usually goes wrong

  • It is not robots.txt. It grants nothing and blocks nothing: it is a courtesy map, and adoption is up to whoever is reading.
  • Do not paste your whole site into it. The point is a curated index of what is worth reading, and a wall of text defeats it.
  • Headings inside the optional detail section break the format, because an H2 starts a link section.
  • Generate it from the same source as your navigation. A hand-maintained copy goes stale on the first page you add.

Questions

Does anything actually read llms.txt?

Some documentation tooling and some agents do, and adoption is growing rather than settled. The cost of publishing one is close to zero if you generate it, and that is the honest case for doing it: cheap, not decisive.

How is it different from a sitemap?

A sitemap is an exhaustive machine list for crawlers with no opinion about what matters. An llms.txt is short, curated and human-readable, and it explains what the site is before it lists anything.

Related