llms.txt Case Studies: Inside Real Production Files
Specs and templates tell you how llms.txt should look. Real files show you how teams actually ship it. We fetched six production llms.txt files with curl on September 10, 2026 and broke down exactly what Vue.js, Nuxt, Cloudflare, OpenAI and Anthropic put in theirs — and what you can copy.
Six Production Files, Verified Live
Every file below was requested over HTTPS during research for this article. All of them responded with HTTP 200 and spec-shaped content:
| Site | File | Distinctive pattern |
|---|---|---|
| Vue.js | /llms.txt | Hierarchical table of contents, every link a .md page |
| Nuxt | /llms.txt + 4.7 MB llms-full.txt | Agent-first: MCP server, sitemap.md, openapi.json pointers |
| Cloudflare Developers | /llms.txt + per-product files | Hub-and-spoke index of subpath llms.txt files |
| OpenAI API docs | /docs/llms.txt + llms-full.txt | Markdown twin for every page, single combined export |
| Anthropic docs | /llms.txt | Multilingual hub with per-language page counts |
| llmstxt.org | /llms.txt | The spec site's own minimalist example |
Vue.js: A Clean Hierarchical Table of Contents
The first three lines of vuejs.org/llms.txt state the site name and tagline,
then the file becomes a pure navigation document — every framework topic grouped under
headings like Getting Started and Essentials, each link pointing at
the Markdown version of a page:
# Vue.js
Vue.js - The Progressive JavaScript Framework
### Getting Started
- [Introduction {#introduction}](/guide/introduction.md)
Note the details: URLs end in .md, and the anchor metadata in brackets matches
the HTML page's heading IDs so agents can link both formats. For full depth, Vue.js also
serves llms-full.txt (about 0.9 MB at the time of testing) — exactly the
two-file setup described in our
llms.txt vs llms-full.txt
guide.
Nuxt: The Agent-First File
Nuxt's file shows where the format is heading. After a one-sentence summary it tells agents that every page has a Markdown twin, then points to an unusually rich set of machine-readable resources:
# Nuxt Docs
> Nuxt is an open source framework that makes web development intuitive and powerful.
Every documentation, blog and deploy page is also Markdown. Append `.md` to a URL...
The rest of the file lists llms-full.txt — 4,756,574 bytes of single-file
documentation, which we downloaded to confirm — plus a sitemap.md, a public
OpenAPI spec and an MCP server endpoint. For an LLM agent, one llms.txt now opens the door to
the whole ecosystem. The file even includes a When to use this section that tells
the agent which tasks the docs are for — curation as copywriting.
Cloudflare Developers: A Hub of Subpath Files
Cloudflare's documentation is huge, so its root file does not try to list everything. It is a hub: one link per product area, each pointing at that product's own llms.txt one level down:
## Application performance
- [DNS](https://developers.cloudflare.com/dns/llms.txt): Deliver excellent
performance and reliability to your domain
This is the subpath pattern the
llms.txt v2 spec formally
defines: a file covers the URLs under its own path, and agents use the most specific one.
Cloudflare pairs the hub with a root llms-full.txt, giving agents both a
browseable directory and a complete dump.
OpenAI and Anthropic: AI Labs Publish Their Own Files
The biggest irony in the llms.txt ecosystem is that the AI labs themselves are early
adopters. OpenAI's API docs (platform.openai.com/docs/llms.txt, HTTP 200) opens
with # OpenAI API docs, states that every entry has a Markdown twin, and links a
combined single-file export. Anthropic's file goes multilingual, listing page counts per
language — English at 700 pages, others at 249 — so an agent knows which translations are
complete before fetching anything.
Neither file is a ranking hack: crawler studies we covered in
Which AI Engines Actually Read llms.txt?
show most AI bots never request the file. These companies ship it because their docs are
Markdown anyway and the file costs nothing to generate. Google's
ai.google.dev/llms.txt returns 404 — a reminder that adoption is real but not
universal.
What the Best Production Files Have in Common
Strip away the branding and five patterns recur in every case study above:
- One-line identity. H1 with the product name plus a sentence saying what the docs cover.
- Markdown-first links. Point agents at
.mdversions, not HTML pages. - A description on every link, so agents can decide before fetching — Cloudflare's one-liners and Nuxt's task guidance are both this idea.
- Curated H2 groups of five to forty links, never a URL dump.
- An escape hatch: llms-full.txt (or subpath files) for sites too big for one page.
None of these files is longer than a couple of hundred lines, and all of them are plain Markdown. Structure your file the same way — then check it the way we checked these, with curl, a validator, or both. Generate a spec-compliant draft from your sitemap with the llms.txt generator, run it through the checker, and publish it at your site root. If you need a refresher on any element, the complete llms.txt format guide covers every field.