llms.txt
How Flux's auto-generated /llms.txt indexes the documentation surface for LLM consumption.
llms.txt is a small, opinionated proposal for making a documentation site legible to language models without scraping the rendered HTML. The standard is described at llmstxt.org. The idea: serve a single markdown file at the root of the site that lists the most important pages with one-line descriptions, so a model (or its agent harness) can pull the index, decide what is relevant, and fetch only those pages.
Flux serves one at docs.fluxhq.dev/llms.txt.
Shape of the file
The format is plain markdown with a fixed top:
# Flux Docs
> Documentation for the Flux durable workflow + agent framework.
## Pages
- [Get started: install](https://docs.fluxhq.dev/get-started/install): Install Flux from PyPI on Python 3.14+.
- [Defining workflows](https://docs.fluxhq.dev/build/workflows/defining-workflows): The `@workflow` decorator, signatures, and namespaces.
- ...
An H1 with the site title, a blockquote summary, then one or more ## sections of bullet-list links. Each link is [Title](URL): description — the title and description come straight from each page’s frontmatter.
How Flux generates it
The file is hand-curated in shape but auto-built in content. The Phase 1 chassis ships a generator (site/scripts/generate-llms-txt.mjs) that walks the content collection at build time, reads each MDX file’s frontmatter, and emits dist/llms.txt alongside the static site. Pages with draft: true are skipped. Sort order is lexicographic by slug, which keeps related pages adjacent without imposing editorial weight the docs do not have.
The generator runs on every deploy, so /llms.txt stays current with whatever shipped. There is no separate maintenance step.
How to use it
Three patterns cover most of what people do with it:
- Interactive chat with a coding assistant. Paste the URL into a Claude, ChatGPT, or Gemini conversation at the start of a session. The assistant fetches the index, decides which pages are relevant to the question, and pulls those individually. Context budget stays small because only the index is held in conversation.
- IDE coding assistants (Cursor, Continue, Aider). Reference
https://docs.fluxhq.dev/llms.txtin your project’s assistant config so the model fetches it at the start of each session. The Using Flux with Claude, Cursor, and friends page has worked examples. - Discovery for retrieval pipelines. A RAG ingestion job can read
/llms.txt, follow the links, fetch each page as markdown (every page is also available at/<slug>.mdvia the content collection), and embed only what was indexed. This avoids crawling assets, images, and generated pages that do not belong in the corpus.
For batch ingestion that needs the full text inlined, use /llms-full.txt instead.
What is and is not in the file
The index covers every published page across Get Started, Build, Agents, Concepts, Operate, Reference, Examples, Deployment, Integrations, and Resources. Auto-generated reference pages (SDK, CLI) are included with the same shape as hand-authored content. Drafts and stubs are excluded. The home page, the section landing pages, and per-page descriptions all come from the same frontmatter the site renders from, so what the model sees and what a human reader sees stay in lockstep.