LLMs.txt для AI-агентов
Что такое llms.txt
Заголовок раздела «Что такое llms.txt»llms.txt — Markdown-файл в корне сайта или отдельного раздела, который кратко описывает проект и даёт ссылки на основные материалы. Это развивающееся соглашение сообщества, а не обязательный веб-стандарт. Файл может упростить агентам поиск нужного контекста, но не гарантирует обход сайта, его индексацию или цитирование.
Для базы знаний он помогает агенту быстро понять структуру сайта и найти релевантный контекст для промпта или RAG-пайплайна. В отличие от robots.txt, он не задаёт правила доступа; в отличие от sitemap.xml, он не предназначен для полного перечисления URL.
Формат и структура
Заголовок раздела «Формат и структура»Предложенная спецификация использует Markdown и задаёт последовательность основных элементов:
- Заголовок первого уровня с названием сайта или проекта — обязательная часть.
- Краткое описание в цитате (
>), если оно нужно. - Дополнительные пояснения: аудитория, терминология, важные ограничения или принципы работы.
- Разделы второго уровня со списками ссылок на подробные документы. Ссылку можно дополнить пояснением после двоеточия.
- Необязательный раздел
Optionalдля второстепенных материалов.
Пример компактного файла:
# Пример сервиса
> Сервис помогает командам управлять заявками и проектами.
Основная аудитория — небольшие продуктовые команды. Цены указаны в рублях.
## Документация
- [Начало работы](https://example.com/docs/start/): установка и первый запуск- [Тарифы](https://example.com/pricing/): актуальные планы и ограничения
## Optional
- [История обновлений](https://example.com/changelog/)Файл обычно публикуют в корне сайта по адресу /llms.txt. Спецификация также допускает файл внутри пути: он может описывать страницы, расположенные под этим путём.
Зачем это AI-агентам
Заголовок раздела «Зачем это AI-агентам»Обычная HTML-страница неудобна для агента:
- в ней есть навигация, боковые панели, служебные блоки и лишний шум
- контент разбит на десятки URL
- агенту трудно понять, какие страницы главные, а какие второстепенные
llms.txt решает эту задачу так:
- даёт краткое описание проекта в одном месте
- показывает канонические ссылки на ключевые материалы
- помогает начать с сокращённого контекста и только потом расширяться
- упрощает подключение документации к IDE-агентам, чат-ботам и RAG-ассистентам
Какие файлы обычно используются
Заголовок раздела «Какие файлы обычно используются»Некоторые проекты публикуют несколько файлов для разных объёмов контекста:
llms.txt— обзорный индекс: что это за проект и какие материалы читать дальшеllms-small.txt— короткий контекст для быстрого ответа или первичной маршрутизацииllms-full.txt— полный контекст, когда агенту нужен максимум деталей
llms-small.txt и llms-full.txt — распространённые варианты реализации, но они не входят в базовую спецификацию llms.txt. Полный дамп всего корпуса редко бывает полезен: он занимает место в контексте целиком, даже если агенту нужна одна статья.
Для этой базы знаний доступны:
- llms.txt — курированный индекс: разделы, обзоры и ссылки на Markdown-версии страниц
- llms-index.txt — дерево всех разделов и статей до третьего уровня: у каждой записи заголовок, описание и ссылка на
.md-версию - Markdown-версия любой страницы — тот же адрес с
.md: например llms-txt-for-ai-agents.md
Вместо полного дампа корпуса индекс ведёт по дереву: агент открывает нужный раздел, а обзор раздела перечисляет все свои страницы — дальше читается только то, что относится к вопросу.
Markdown-версии страниц
Заголовок раздела «Markdown-версии страниц»У каждой опубликованной страницы есть Markdown-сосед: к адресу HTML-страницы добавляется .md. Такая версия содержит только текст статьи — заголовок, описание, код, таблицы и ссылки на другие статьи в их Markdown-виде, без меню, оглавления, кнопок и служебных элементов. Изображения и внутренние ссылки в ней абсолютные, поэтому файл можно читать вне сайта.
Страница сама сообщает о своей Markdown-версии в <head>:
<link rel="alternate" type="text/markdown" href="/kb/ai/context/llms-txt-for-ai-agents.md">Это позволяет агенту, который уже открыл HTML-страницу, перейти к чистому тексту без повторного обхода сайта. Обратный переход — llms.txt → нужная статья — основной путь: индекс даёт только карту разделов, а не весь корпус.
Как подключать к AI-агентам
Заголовок раздела «Как подключать к AI-агентам»Вариант 1. Подключать URL как внешний источник контекста
Заголовок раздела «Вариант 1. Подключать URL как внешний источник контекста»Подходит для агентов и чатов, которые умеют читать URL напрямую.
Практика:
- сначала передавайте агенту
https://wpcraft.ru/kb/llms.txt - по индексу выбирайте нужный раздел и открывайте Markdown-версии только тех статей, которые относятся к вопросу
llms-index.txt— когда нужен точный адрес: там дерево всех разделов и статей до третьего уровня
Такой маршрут дешевле полного экспорта: в контекст попадают две-три страницы по теме вместо нескольких мегабайт текста.
Вариант 2. Использовать в RAG или knowledge ingestion
Заголовок раздела «Вариант 2. Использовать в RAG или knowledge ingestion»Подходит для внутренних AI-ассистентов, support-ботов и агентов в IDE.
Рекомендуемый поток:
- Забрать
llms.txtкак entrypoint. - Извлечь из него ссылки на разделы и нужные
.md-страницы. - Загрузить эти страницы и разбить их на чанки — они уже очищены от навигации.
- Если нужен полный список страниц для обхода, взять
llms-index.txt: там дерево до третьего уровня, дальше — по ссылкам обзоров.
Такой подход лучше, чем слепо индексировать весь сайт, потому что llms.txt уже задаёт curated-структуру материалов.
Вариант 3. Использовать в system prompt или инструкциях агента
Заголовок раздела «Вариант 3. Использовать в system prompt или инструкциях агента»Если агент работает по инструкции, можно явно прописать источник:
Если вопрос касается базы знаний WPC, сначала прочитай https://wpcraft.ru/kb/llms.txt.Выбери нужный раздел и открой Markdown-версии релевантных статей (адрес с .md).Если нужен точный адрес страницы, прочитай https://wpcraft.ru/kb/llms-index.txt — там дерево разделов до третьего уровня.Отдавай приоритет этим файлам перед случайным HTML-скрапингом сайта.Это особенно полезно для:
- кастомных GPT/assistants
- Claude Projects
- Copilot/Cursor workflows
- агентных пайплайнов с retrieval step
Как подключить llms.txt в Starlight
Заголовок раздела «Как подключить llms.txt в Starlight»Для сайтов на Astro Starlight удобнее всего генерировать эти файлы автоматически через плагин starlight-llms-txt.
Базовая схема:
import { defineConfig } from "astro/config";import starlight from "@astrojs/starlight";import starlightLlmsTxt from "starlight-llms-txt";
export default defineConfig({ site: "https://example.com/", integrations: [ starlight({ title: "My Docs", plugins: [starlightLlmsTxt()], }), ],});После сборки сайт получает маршруты llms.txt, llms-small.txt и llms-full.txt автоматически.
Если нужны отдельные Markdown-версии страниц и собственный индекс, плагины разделяют: starlight-md-txt добавляет .md-соседей и rel="alternate", а llms.txt и дерево разделов собирают отдельные endpoint’ы по данным коллекции и сайдбара. Так и устроена эта база знаний: llms.txt ведёт на обзоры, llms-index.txt даёт дерево до третьего уровня, а текст берётся из .md нужной страницы — вместо мегабайтных наборов.
Практические рекомендации
Заголовок раздела «Практические рекомендации»- Используйте
llms.txtкак точку входа, а не как замену всей документации. - Давайте агенту короткий контекст первым, полный — только по необходимости.
- Включайте только полезные, доступные и актуальные страницы; короткие названия и пояснения помогают выбрать подходящий источник.
- Проверяйте ссылки, кодировку UTF-8 и публичную выдачу файла после деплоя.
- Не добавляйте закрытые материалы и данные, которые не должны быть публичными.
На WordPress файл можно добавлять при деплое в публичный корень сайта или генерировать подходящим инструментом. Генерация упрощает обновление, но состав ссылок и точность описаний всё равно нужно проверять.
Lighthouse включает проверку доступности llms.txt в набор проверок agentic browsing. Если сервер возвращает ошибку, проверка отмечает проблему; если файл отсутствует и сервер отвечает 404, результат считается неприменимым (N/A), поскольку файл необязателен. Эта проверка подтверждает доступность, а не качество содержимого или его влияние на видимость в AI-поиске.
Связь с AEO и GEO
Заголовок раздела «Связь с AEO и GEO»Для маркетинговой роли llms.txt в обнаружении и представлении контента см. отдельный раздел «llms.txt как способ продвижения». Там разобраны сценарии применения и метрики; формат и подключение агентов рассматриваются в этой статье.
Когда llms.txt особенно полезен
Заголовок раздела «Когда llms.txt особенно полезен»- документация продукта
- база знаний
- developer portal
- support center
- сайт со сложной архитектурой разделов
- контентный проект, где агенту нужно быстро находить authoritative pages
Управление llms.txt на WordPress
Заголовок раздела «Управление llms.txt на WordPress»На self-hosted WordPress файл можно вести через AI-агента: плагин Enable Abilities for MCP даёт две abilities — ewpa/get-llms-txt (чтение, определение источника файла и валидация по спецификации llmstxt.org) и ewpa/update-llms-txt (запись с авто-маршрутизацией через SEOPress Pro или виртуальный /llms.txt). Это позволяет агенту проверять и обновлять файл без доступа к файловой системе.
Связанные материалы
Заголовок раздела «Связанные материалы»- Контекст для агентов — какие ещё файлы-контракты нужны агенту в проекте
- RAG — место
llms.txtсреди способов дать модели нужный контекст - MCP — как ассистент получает доступ к сайту, где опубликован файл
- AEO и GEO — роль
llms.txtв оптимизации для AI-поиска