/ llmtxt.info

The llms.txt file

A plain Markdown map served at the root or a specific path for compatible agents. This page covers location, v2 structure, discovery and validation.

Last updated:

What the file is

The llms.txt file is a Markdown document that maps selected resources for compatible agents, with an optional note per link. It was proposed by Jeremy Howard (Answer.AI) in September 2024 as a convention, not an enforced standard. If you want the concept and the adoption picture, start with what is llms.txt; this page focuses on the file itself.

Where it lives

V2 allows the origin root, https://yourdomain.com/llms.txt, or a more specific path such as https://yourdomain.com/docs/llms.txt. The most specific applicable file describes a page's scope. Declare it with rel="describedby" in HTML or an HTTP Link header when possible. A companion llms-full.txt may carry consolidated page content for clients that explicitly support that convention.

Structure at a glance

  • One H1 with the site or project name. Required, first line.
  • An optional blockquote after the H1: a factual summary.
  • Optional free Markdown body for context (no headings).
  • H2 sections, each a list of - [name](url): note items. A section titled Optional may label secondary links editorially, without special v2 semantics.

The full rules with annotated examples are on the format reference.

Minimal valid example

llms.txt
# Acme

> Acme is a hosted analytics platform for product teams.

## Documentation

- [Quickstart](https://acme.example/docs/start): install, init, first dashboard.
- [API reference](https://acme.example/docs/api): full endpoint catalogue.

## Optional

- [Blog](https://acme.example/blog): product updates and tutorials.

Common mistakes

  • Ambiguous relative URLs. Absolute links are safer when the file may be copied.
  • Marketing copy in the summary. Keep the blockquote factual.
  • Dumping the whole sitemap. The file is a curated map, not an index.
  • HTML instead of Markdown. The file must be plain text Markdown.
  • Serving it with the wrong MIME type. Use text/plain (UTF-8).

Serving it correctly

On most stacks this is a static file in your public directory: see the per-stack guides for Next.js, Astro, WordPress, Hugo or Cloudflare Pages. Set Content-Type: text/plain; charset=utf-8 and a short cache so updates propagate.

FAQ

Is llms.txt the same as llm.txt?

The spec name is llms.txt (plural). llm.txt is a common misspelling; serve the canonical name.

Does the file need to be updated?

Yes, like a sitemap: stale links erode the trust of the tools that read it. Regenerate it when your key pages change.

What size should it be?

The proposal sets no byte limit. Keep it focused on the intended tasks, test the clients you support, and split real scopes into path-level files when useful.

Sources