# llms.txt в Starlight, VitePress, Docusaurus, MkDocs и Nuxt

> Как включить llms.txt в Starlight, VitePress, Docusaurus, MkDocs и Nuxt - рабочая настройка для каждого, какие файлы создаёт плагин и что проверить после сборки

Страница: https://llms-full-txt.ru/reference/configuration/
Указатель сайта: https://llms-full-txt.ru/llms.txt

В генераторах документации `llms.txt` создаёт плагин при сборке сайта. Настройка занимает несколько строк, а файл обновляется с каждой публикацией.

Ниже по одной рабочей настройке для пяти генераторов. Названия пакетов и версии проверены 3 октября 2026 года.

На платформах [Mintlify](https://www.mintlify.com/docs/ai/llmstxt) и [GitBook](https://gitbook.com/docs/getting-started/llm-ready-docs) настраивать нечего: файлы создаются автоматически.

## Что создаёт каждый плагин

| Генератор | Пакет | `llms.txt` | `llms-full.txt` | Markdown-версии страниц |
|---|---|---|---|---|
| Starlight | `starlight-llms-txt` | да | да, плюс `llms-small.txt` | не заявлены |
| VitePress | `vitepress-plugin-llms` | да | да | да |
| Docusaurus | `docusaurus-plugin-llms` | да | да | по настройке |
| Docusaurus | `@signalwire/docusaurus-plugin-llms-txt` | да | по настройке | да |
| MkDocs | `mkdocs-llmstxt` | да | по настройке | для перечисленных файлов |
| Nuxt | `nuxt-llms` | да | по настройке | нет |

## Настройка

**Starlight**

```bash
pnpm add starlight-llms-txt
```

```js
// astro.config.mjs
import starlight from '@astrojs/starlight'
import { defineConfig } from 'astro/config'
import starlightLlmsTxt from 'starlight-llms-txt'

export default defineConfig({
  site: 'https://example.ru/',
  integrations: [
    starlight({
      title: 'Документация',
      plugins: [starlightLlmsTxt()],
    }),
  ],
})
```

Поле `site` обязательно: без него плагин не построит абсолютные адреса. На выходе три файла: `llms.txt`, `llms-full.txt` и сокращённый `llms-small.txt`.

**VitePress**

```bash
npm install vitepress-plugin-llms --save-dev
```

```ts
// .vitepress/config.ts
import { defineConfig } from 'vitepress'
import llmstxt from 'vitepress-plugin-llms'

export default defineConfig({
  vite: {
    plugins: [llmstxt()],
  },
})
```

Плагин создаёт `llms.txt`, `llms-full.txt` и Markdown-версию каждой страницы.

Автор плагина советует подключать его только к английской документации. Для сайта на нескольких языках это ограничение стоит учесть заранее.

**Docusaurus**

Живых плагинов два. Первый проще в настройке:

```bash
npm install docusaurus-plugin-llms --save-dev
```

```js
// docusaurus.config.js
module.exports = {
  plugins: ['docusaurus-plugin-llms'],
}
```

Второй умеет больше и создаёт Markdown-версии страниц:

```bash
npm install @signalwire/docusaurus-plugin-llms-txt
```

```js
// docusaurus.config.js
module.exports = {
  plugins: [
    [
      '@signalwire/docusaurus-plugin-llms-txt',
      {
        outputDir: 'llms-txt',
        includePatterns: ['**/*.html'],
        excludePatterns: ['**/404.html'],
      },
    ],
  ],
}
```

Пакет с похожим именем `docusaurus-plugin-llms-txt` без приставки не обновлялся с декабря 2024 года. Брать его не стоит.

**MkDocs**

```bash
pip install mkdocs-llmstxt
```

```yaml
# mkdocs.yml
site_name: Мой проект
site_description: Описание проекта.
site_url: https://example.ru/

plugins:
  - llmstxt:
      markdown_description: Подробное описание проекта.
      full_output: llms-full.txt
      sections:
        Документация:
          - index.md: С чего начать
          - api.md: Справочник API
```

Поле `site_url` обязательно. Разделы и файлы перечисляются вручную: это единственный плагин из пяти, который заставляет сделать отбор. Строка `full_output` включает `llms-full.txt`.

Автор объявил, что проект в режиме сопровождения.

**Nuxt**

```bash
npm i nuxt-llms
```

```ts
// nuxt.config.ts
export default defineNuxtConfig({
  modules: ['nuxt-llms'],
  llms: {
    domain: 'https://example.ru',
    title: 'Мой сайт',
    description: 'Что это за сайт и для кого.',
    full: {
      title: 'Полная документация',
      description: 'Весь текст документации одним файлом.',
    },
  },
})
```

Обязательно только поле `domain`. Блок `full` включает `llms-full.txt`.

## Платформы, где настраивать нечего

| Платформа | Что создаётся само |
|---|---|
| Mintlify | `llms.txt` и `llms-full.txt` в корне проекта; очень длинный индекс делится на части |
| GitBook | `llms.txt`, `llms-full.txt` и Markdown-версия любой страницы по адресу с `.md` |

Этим объясняется, почему у множества сайтов документации файлы есть, хотя владельцы ничего не настраивали.

## Связи обнаружения

Плагины создают файлы, но не все добавляют на страницы связи из [второй редакции proposal](https://llmstxt.org/). Проверь, есть ли в коде страницы эти строки:

```html
<link rel="alternate" type="text/markdown" href="/docs/page.md">
<link rel="describedby" href="/llms.txt">
```

Если их нет, добавь через шаблон заголовка страницы. Подробно: [Обнаружение файла и Markdown-версий](https://llms-full-txt.ru/specification/discovery/).

## После сборки

1. Файл `llms.txt` появился в папке со сборкой и отвечает на сайте кодом `200`.
2. В нём есть название и описание сайта.
3. Адреса в ссылках абсолютные и с верным доменом.
4. Черновики и скрытые страницы в файл не попали.
5. Размер `llms-full.txt` разумный.
6. Markdown-версии страниц открываются, если плагин их создаёт.

Команды для проверки: [Проверка файлов и разметки](https://llms-full-txt.ru/guides/validation/).

## Что читать дальше

- [Генераторы и инструменты](https://llms-full-txt.ru/tools/generators/) - расширения для систем управления и утилиты
- [Markdown-версии страниц](https://llms-full-txt.ru/guides/markdown-pages/) - зачем они и как их отдавать
- [Что такое llms-full.txt](https://llms-full-txt.ru/guides/llms-full-txt/) - когда нужен полный файл
- [llms.txt и MCP](https://llms-full-txt.ru/reference/mcp-relationship/) - как файл связан с протоколом
