llms.txt в Angular

Выдача llms.txt из приложения Angular требует одного файла в папке public/ и не требует настройки.

Последнее обновление:

Куда помещать файл

Начиная с Angular 17, CLI создает шаблон public/ папку в корне проекта. Всё её содержимое копируется без изменений в корень результата сборки, поэтому файл в public/llms.txt обслуживается по адресу https://yourdomain.com/llms.txt без дополнительной настройки.

Метод: папка public/

  1. Создайте папку, если она не существует: mkdir -p public
  2. Добавьте файл: touch public/llms.txt
  3. Напишите содержимое (см. руководство и генератор для формата):
# Your Site Name

> One-sentence description of your site for LLM context.

## Core pages

- [Page title](https://yourdomain.com/page/): brief description.
- [Another page](https://yourdomain.com/other/): brief description.
  1. Сборка и развёртывание: ng build. Файл оказывается в корне результата.

Старые проекты (массив assets)

Проекты Angular, созданные до v17, используют src/assets/ и assets массиве в angular.json. Файлы оттуда обслуживаются по адресу /assets/, а не корень, который является неправильным расположением для llms.txt. Самое чистое исправление — добавить public/ каталог и убедитесь, что он указан в assets массив (новые конфигурации CLI включают его по умолчанию):

// angular.json (build options)
"assets": [
  { "glob": "**/*", "input": "public" }
]

Это копирует public/llms.txt в корень результата, доступный по адресу /llms.txt.

Проверка настройки

После публикации откройте https://yourdomain.com/llms.txt в браузере. Он должен загрузиться как обычный текст. Тип содержимого также можно проверить из терминала:

curl -sI https://yourdomain.com/llms.txt | grep -i content-type
# expect: content-type: text/plain

Далее: синхронизируйте файл с реальными страницами и рассмотрите более полный llms-full.txt. Не уверены, что формат правильный? Пропустите его через валидатор. См. также Vercel и Netlify руководства с примечаниями для конкретного хостинга.

Источники