Генератор llms.txt
Компонент создаёт в корне сайта два файла по спецификации llmstxt.org. llms.txt — короткое оглавление сайта для ИИ-агентов и ассистентов. llms-full.txt — полные тексты материалов одним файлом. Файлы собираются из ваших типов контента и обновляются сами после изменений на сайте.
Что делает компонент
- Собирает llms.txt. В файле название сайта, краткое описание, раздел с главными страницами, свежие записи каждого типа контента с короткими описаниями, категории и раздел
Optionalдля второстепенных ссылок. - Собирает llms-full.txt. Тексты записей переведены в Markdown: заголовки, списки, таблицы, код, цитаты. У каждой записи адрес, раздел и категория, даты, теги, описание и характеристики.
- Обновляет файлы сам. После публикации, правки или удаления записи компонент отмечает, что файлы устарели. Планировщик пересобирает их в течение 15 минут, а раз в сутки собирает заново полностью.
- Проверяет сайт. Запрашивает файлы так же, как их получит агент: ответ сервера, кодировку, формат, первые ссылки. Показывает, какие ИИ-боты закрыты в
robots.txt. - Не выдаёт лишнего. В файлы попадает только то, что видит гость сайта. Подробно — в разделе «Что попадает в файлы».
Чего ждать от llms.txt
llms.txt — открытое предложение, а не стандарт поисковых систем. Честно о том, что он даёт:
- Не влияет на позиции в поиске. В июне 2026 года Google официально подтвердил, что поиск этот файл не использует. Яндекс о поддержке llms.txt не заявлял.
- Помогает ИИ-агентам и ассистентам, когда им дают адрес вашего сайта: ChatGPT, Claude, Perplexity, агенты в браузерах и редакторах кода. Им не нужно разбирать вёрстку, меню и рекламу: структура и тексты уже готовы.
- Учитывается в Chrome Lighthouse 13.3 и новее, в разделе «Agentic Browsing»: корректный файл даёт отметку PASS.
- llms-full.txt удобно загрузить в ассистента целиком, чтобы задавать вопросы по материалам сайта.
robots.txt, индексация в поиске и свежие материалы. Проверка robots.txt встроена в компонент.Что понадобится
- InstantCMS 2.18.2 или новее.
- PHP 7.4 и новее, расширения
domиcurl. Безcurlнедоступна только проверка сайта. - Корень сайта доступен для записи: файлы лежат по адресам
/llms.txtи/llms-full.txt. - Настроенный планировщик (cron). Без него включите в опциях режим обновления «Сразу».
Установка и обновление
- Откройте Дополнения → Установить пакет и загрузите архив
llms_generator_0.2.2.zip. - Подтвердите установку. Компонент появится в Компоненты → Генератор llms.txt.
Обновление с предыдущей версии — так же, архивом llms_generator_0.2.2-update.zip. Настройки сохраняются. При переходе с 0.1.0 «Префикс проекта» становится кратким описанием сайта.
Настройка за 5 минут
- Откройте Генератор llms.txt → Опции → О сайте. Напишите краткое описание сайта: одно-два предложения о том, что это за сайт и для кого.
- В том же разделе заполните «Главные страницы»: о компании, контакты, доставка, цены, частые вопросы.
- На вкладке «llms.txt» отметьте типы контента. Оставьте 10–30 ссылок на тип.
- Сохраните опции и откройте Файлы и проверка. Нажмите «Обновить файлы», затем «Проверить сайт».
Опции
О сайте
| Опция | Что делает |
|---|---|
| Название сайта | Заголовок H1 файла. Пусто — название сайта из настроек InstantCMS. |
| Краткое описание сайта | Строка «> …» под названием, агент читает её первой. Пусто — meta description сайта из настроек InstantCMS. |
| Подробнее о сайте | Свободный текст после описания: регион работы, контакты, условия. Заголовки внутри превращаются в жирный текст: спецификация не допускает заголовков до первого раздела. |
| Главные страницы | По одной в строке: Название | адрес | описание. Адрес можно указать от корня сайта: /pages/about.html. Раздел выводится первым. |
llms.txt
| Опция | Что делает |
|---|---|
| Типы контента | «Все» — все включённые типы, открытые для гостей. |
| Ссылок на записи в каждом типе | Сколько записей типа попадает в основной раздел, с описаниями. |
| Ещё ссылок в раздел Optional | Следующие записи каждого типа уходят в раздел Optional без описаний. Агент может пропустить его, если ему не хватает контекста. 0 — раздела не будет. |
| Какие записи выводить первыми | Новые, недавно обновлённые, самые просматриваемые или с наибольшим рейтингом. |
| Название записи в ссылках | Заголовок записи или SEO title. Хвост с названием сайта («… | Мой сайт») убирается. |
| Описание к ссылке | Автоматически: SEO description записи, если его нет — анонс, если нет и его — начало текста. Можно оставить только SEO description или отключить описания. |
| Ссылка на список записей | Первая строка раздела: «Статьи — все материалы» с описанием типа контента. |
| Выводить категории | Отдельный раздел «Тип: категории» с полным путём «Родитель / Дочерняя». Описание берётся из SEO description категории или из её описания. |
llms-full.txt
| Опция | Что делает |
|---|---|
| Записей из каждого типа | Сколько свежих записей типа попадает в файл. |
| Максимальный размер файла | По умолчанию 2048 КБ — около миллиона символов. Лимит делится между типами поровну, поэтому каждый тип получает свою долю. |
| Текст одной записи | Длинные тексты обрезаются по абзацу и заканчиваются ссылкой «Читать полностью на сайте». 0 — без ограничения. |
| Раздел, даты, теги | Строки «Адрес», «Раздел: Тип / Категория», «Опубликовано · Обновлено», «Теги». |
| Описание записи | Короткое описание под адресом. Если текст записи начинается с той же фразы, описание не повторяется. |
| Характеристики | Значения коротких полей: строки, числа, списки, флажки, ссылки, города, даты. Для каталогов это цена, размеры, материал или адрес сервиса. |
Обновление
| Опция | Что делает |
|---|---|
| Обновлять после изменений контента | Публикация, правка, удаление, корзина, восстановление, отложенная публикация и сохранение опций компонента отмечают, что файлы надо пересобрать. |
| Когда обновлять | «Планировщиком» — в течение 15 минут, рекомендуется. «Сразу» — в конце того же запроса: удобно без cron, но на больших сайтах замедляет сохранение записей. |
| Запуск по секретной ссылке | Для внешнего cron или мониторинга: /llms_generator/generate?key=КЛЮЧ отвечает JSON с итогом. Ключ создаётся при сохранении опций. Чтобы сменить его, очистите поле. |
Файлы и проверка
Главная страница компонента в админке.
- Состояние: когда файлы обновлялись, сколько в них разделов, ссылок и записей, когда последний раз работал планировщик. Здесь же видно, какие типы контента не попали в файлы и почему.
- Обновить файлы — пересобрать сейчас.
- Проверить сайт:
- ответ сервера на
/llms.txtи/llms-full.txt— 200 без редиректа, типtext/plain, кодировка UTF-8; - формат llms.txt по спецификации;
- первые 25 ссылок файла;
- правила
robots.txtдля 12 ботов: GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, Claude-User, PerplexityBot, Google-Extended, YandexBot, YandexAdditional (ответы Нейро и Алисы), Bytespider, CCBot.
- ответ сервера на
- Просмотр обоих файлов.
Что попадает в файлы
Компонент берёт записи штатной выборкой InstantCMS, как в списках на сайте. Поэтому в файлы попадают только записи, которые:
- опубликованы и прошли модерацию;
- не в корзине;
- не приватные;
- не скрыты вместе с родительской записью.
Дополнительно:
- Тип контента пропускается, если гостям закрыт просмотр его списка (правило «Просмотр списка»).
- Из полей берутся только те, что показываются на странице записи и доступны гостям. Служебные поля и поля для отдельных групп в файлы не попадают.
- Скрытые категории не выводятся.
- У типа контента «по умолчанию» ссылки ведут на короткие адреса без префикса, без лишнего редиректа.
llms.txt уже был на сайте или вы правили файл вручную, перед перезаписью компонент сохраняет копию в cache/llms_generator/.Как выглядит llms.txt
# Название сайта
> Сайт про нейросети и искусственный интеллект: новости, статьи и каталог AI-сервисов.
## Главное
- [О проекте](https://site.ru/pages/about.html): кто мы и как с нами связаться
## Новости
- [Новости — все материалы](https://site.ru/news): новости мира ИИ
- [Заголовок новости](https://site.ru/news/zagolovok.html): короткое описание
## Каталог ИИ: категории
- [Видео](https://site.ru/products/video): нейросети для создания и обработки видео
## Optional
- [Старая запись](https://site.ru/news/staraja.html)
Если что-то не так
| Признак | Что проверить |
|---|---|
| «Корень сайта недоступен для записи» | Права на папку сайта. PHP должен создавать файлы в корне. |
| Файлы не обновляются сами | В «Состоянии» строка «Планировщик». Если задача не запускалась, настройте cron (Настройки → Планировщик) или включите режим «Сразу». |
| «Сервер не указывает кодировку» | Русский текст может отображаться «кракозябрами». nginx: добавьте в блок server charset utf-8; charset_types text/plain text/markdown;. Apache: AddDefaultCharset utf-8 в .htaccess. |
| «Редирект на …» | Адрес сайта в настройках InstantCMS (http или https, с www или без) не совпадает с адресом, на который ведёт сервер. |
| «Сайт не ответил на запрос с самого сервера» | Сервер не видит сам себя по внешнему адресу. Это настройка хостинга. Файлы при этом работают: откройте их в браузере. Формат llms.txt проверяется по файлу на диске. |
| Тип контента не попал в файлы | Причина указана в «Состоянии»: гостям закрыт просмотр списка или нет опубликованных записей. |
| В llms-full.txt не все записи | Достигнут лимит размера. Увеличьте его или уменьшите «Текст одной записи». |
| Описания у ссылок обрезаны многоточием | Тексты длиннее опции «Длина описания». Сократите SEO description или увеличьте длину. |
| «Файл создан не текущей версией компонента» | Файл оставила прошлая версия или его правили вручную. После «Обновить файлы» предупреждение пропадёт, копия старого файла останется в cache/llms_generator/. |
Удаление
Компоненты → Генератор llms.txt → Удалить. Компонент удаляет свои файлы и таблицу состояния, задачу планировщика и llms.txt с llms-full.txt. Файлы, которые вы правили вручную после последней генерации, остаются на месте.
Папку docs/_shared удалять не нужно: это общее оформление руководств других дополнений автора.