llms.txt Generator & Spec Guide
Learn what llmstxt.org defines, how llms.txt differs from llms-full.txt and robots.txt, then build a conformant file entirely in your browser. No uploads, no external API.
What is llms.txt?
An llms.txt file is a small, curated Markdown document intended to sit at your site root (/llms.txt). The proposal at llmstxt.org defines a predictable shape so coding agents, research assistants, and retrieval tools can discover the pages that best represent your product — without scraping every URL in your sitemap.
Think of it as an onboarding brief for machines that already have permission to read your public docs. It does not replace HTML, schema.org, or sitemaps. It answers a narrower question: If an LLM has limited context, which links should it open first?
Valerion Tech publishes a live llms.txt and a denser llms-full.txt as part of the Hierarchical Entity Graph (HEG) documentation stack. This L3 page keeps the working generator below and explains when each file type helps.
llms.txt vs llms-full.txt vs robots.txt
| File | Audience | Job | Typical size |
|---|---|---|---|
robots.txt |
Crawlers | Allow / disallow fetch paths; point to sitemap | Tiny ruleset |
llms.txt |
LLM agents | Curated index of primary docs (H1, summary, H2 link lists) | Short Markdown |
llms-full.txt |
LLM agents | Expanded context dump when the agent needs more than the index | Longer Markdown / concatenated docs |
robots.txt is about access policy. Misconfiguring it can hide pages from Googlebot. llms.txt is about preference and orientation; omitting a URL does not block crawling. llms-full.txt is optional depth — useful when your curated list links out to long guides that the agent may not fetch unless asked.
In an HEG site, keep these aligned: L0/L1 hubs appear in llms.txt; evidence pages and generators can live in llms-full.txt or under an ## Optional section so context-limited agents can skip them.
Spec shape (llmstxt.org)
- H1 — required project or site name.
- Blockquote summary — optional but strongly recommended; one idea per line after
>. - Details — optional paragraphs with no headings.
- H2 sections — each followed by markdown links:
- [title](url): notes(notes optional). - ## Optional — conventional section for secondary links.
# Acme Docs > Official documentation for Acme's API and SDKs. Acme builds payment infrastructure for platforms. ## Docs - [Getting started](https://example.com/docs/start): Install and authenticate - [API reference](https://example.com/docs/api) ## Optional - [Changelog](https://example.com/changelog)
Step-by-step: publish yours
- Inventory the 5–15 URLs a new engineer or agent must see (architecture hub, auth, API, pricing policy, status).
- Write the H1 and summary so a model can disambiguate your brand (Valerion Tech ≠ Valerion projectors).
- Group links by task, not by org chart. Sections like “Core architecture”, “Implementation”, “Evidence” beat “Marketing” / “Legal” as primary buckets.
- Generate with the tool on this page (client-side only) or author Markdown by hand.
- Serve at
https://your-domain/llms.txtwithContent-Type: text/plain; charset=utf-8. - Cross-link from your docs hub, footer, and any
ai-catalog.json/ well-known AI discovery files you maintain. - Revisit quarterly when L1/L2 URLs change — stale llms.txt is worse than none because agents will cite dead paths.
HEG hubs to read next
- SV L0 — HEG SEO-guide
- EN L0 — SEO Guide
- SV L1 — Teknisk SEO
- EN L1 — Technical SEO Infrastructure
- SV L2 — Schema Markup & JSON-LD
- Live site llms.txt · llms-full.txt
Examples that work in practice
A documentation site with a stable API should put authentication, rate limits, and error catalogs in primary sections — not buried under blog posts. A research site like Valerion should put the L0 hub, L1 pillars, and one or two L3 evidence tools first, then demote changelog-like pages to Optional.
Bad pattern: listing every blog URL. Agents will sample randomly and miss the canonical definition pages. Better pattern: three H2 sections — “Architecture”, “How to implement”, “Evidence & tools” — with 3–5 links each. If you maintain both SV and EN hubs, list both language entry points and keep hreflang on the HTML pages themselves; llms.txt is not a substitute for hreflang.
For brand disambiguation (critical when names collide), put a single sentence in the blockquote summary. Valerion Tech’s own file states the projector-brand distinction up front so an agent answering “What is Valerion?” does not invent a hardware FAQ from the wrong domain.
Validation checklist before you ship
- File is reachable at exactly
/llms.txt(and optionally/llms-full.txt) over HTTPS. - Response is
text/plain(or Markdown served as plain text), UTF-8, no forced download. - Every linked URL returns 200 and matches the live canonical (trailing slash policy included).
- No heading other than H1/H2 in the curated file — details paragraphs stay heading-free per spec spirit.
- Optional section is named exactly
## Optionalif you use the convention agents expect. - Your HTML docs hub links to the file so humans can audit what machines see.
After publish, fetch the file with curl -sI and a plain GET from an external network. CDN Workers sometimes rewrite content types; fix headers at the edge if HTML sneaks in.
Where this sits in the HEG model
Inside Hierarchical Entity Graph thinking, llms.txt is an egress map for agents — complementary to inbound schema (Organization, Person, TechArticle) and internal siloing. The generator on this page is an L3 tool under Technical SEO: it produces an artifact, it is not the topical definition of llms.txt as a concept. If you later add an EN L2 article on AI discovery files, keep this tool URL stable and point the article here for the hands-on step.
FAQ
Is llms.txt a Google ranking factor?
There is no public Google documentation treating llms.txt as a ranking signal. Its value is agent usability and citation accuracy — adjacent to SEO, not a substitute for crawlable HTML, clear titles, or entity-consistent schema.
Should every marketing page be listed?
No. Prefer durable technical and policy URLs. Campaign landing pages churn; they belong in sitemaps, not in a curated agent brief.
Can I block GPTBot with robots.txt and still publish llms.txt?
Yes — they solve different problems. If you disallow an agent in robots.txt, that agent should not fetch your docs regardless of llms.txt. Publishing llms.txt does not override robots rules.
Why a browser-only generator?
So drafts never leave your machine. Paste URLs, copy the Markdown, deploy through your own CI or Worker. Valerion’s generator stores nothing server-side.
Generator tool
Fill the fields, then copy or download. Generation is pure client-side JavaScript (buildLlmsTxt) — no network calls.
Site metadata
Sections (H2 + link lists)
Each section becomes ## Title followed by markdown links. Leave description empty to omit the : notes suffix.
Optional section
Conventionally named ## Optional for secondary links agents can skip.