Overview

/agents.txt is a root-level plain-text policy file for AI agents: what they may do with the content, where to start reading, and which standard the site follows. It is core item 4 of the LLM discoverability standard, and its key set is defined by that standard rather than by an IETF or W3C spec. Where llms-txt is an index and ai-txt is a training-consent declaration, agents.txt answers “what am I allowed to do here, and where do I go first” in one fetch.

Serve it at the origin root as text/plain

Serve https://<your-domain>/agents.txt as text/plain. Like the other machine files it is only read at the origin root; a project-subpath copy (user.github.io/project/agents.txt) is inert. Place it at the build output root and confirm the deployed URL returns 200.

Use the required keys, one per line

The format is Key: value, one per line, with # for comments. The standard requires:

Training: allow
Indexing: allow
Summarization: allow
Citation-Required: true
Start-here: https://example.com/llm-info
Machine-index: https://example.com/llms.txt
Sitemap: https://example.com/sitemap.xml
Standard-Followed: https://llmbestpractices.com
Updated: 2026-08-29
  • Training, Indexing, Summarization: the stance per use. The standard requires allow for all three.
  • Citation-Required: true: agents that quote the site must attribute it. Pair with an Attribution: line giving the exact string.
  • Start-here: the absolute URL of /llm-info.
  • Machine-index: the absolute URL of /llms.txt.
  • Sitemap: the absolute sitemap URL, the same value as the Sitemap: line in robots.txt.
  • Standard-Followed: https://llmbestpractices.com.
  • Updated: ISO YYYY-MM-DD of the last meaningful edit, never a prose date.

Optional keys: Owner: (the publication’s name; see the anonymity rule in llm-discoverability-standard), Contact:, License:, Full-corpus:, Agent-guide:.

Keep it consistent with the other machine files

Every URL uses the site’s one canonical origin: the same scheme, host, and apex-versus-www choice as the canonicals, sitemap, and llms.txt. A Start-here on a www host while canonicals use the apex is domain drift and fails an audit. If the file is generated, edit the generator, not the output.

Know what agents.txt does not replace

agents.txt is advisory, like ai.txt. It does not control crawl access (robots.txt, which the standard requires to allow AI agents explicitly), enumerate pages (llms.txt), or describe the site (/llm-info). Reference it from a robots.txt comment so crawlers that fetch only robots.txt learn it exists.

Validate it in the build

At build time confirm the file exists at the emitted root, every required key is present, Updated: matches ^\d{4}-\d{2}-\d{2}$, and Start-here and Machine-index resolve on the deployed origin. scripts/check_llm_layer.py covers this as its agents-txt item.