Коротко (TL;DR)
- Blume — бесплатный open-source фреймворк, который превращает папку Markdown-файлов в готовый сайт для документации: навигация, поиск, светлая и тёмная тема, API-справочники и два файла для ИИ-агентов —
llms.txtиllms-full.txt. - Код вашего репозитория Blume не читает и текст не пишет. «Документация одним промптом» — это связка: агент (Claude Code, Codex, Cursor) со скиллом Blume пишет страницы, Blume собирает из них сайт, команда
blume evalпроверяет, отвечают ли доки на вопросы пользователей. - Статическая сборка бесплатна целиком (лицензия MIT, платного тарифа нет). Деньги появляются там, где нужен сервер: встроенному ИИ-ассистенту и MCP-серверу нужен серверный хостинг, а ассистенту — ещё и ключ платной модели.
llms.txt— оглавление сайта для языковых моделей, а не SEO-рычаг. Google 15 июня 2026 года прямо написал, что для поиска он не нужен и на ранжирование не влияет. Польза — когда агент разработчика уже читает вашу документацию.- Проект молодой: репозиторий создан 21 июня 2026 года, а к 17 октября вышла уже версия 2.2.4 после двух мажорных релизов. Для боевой документации это аргумент закрепить версию и читать changelog перед обновлением.
Что такое Blume и кому подойдёт сайт документации на нём
Сам проект описывает себя одной фразой: «The open-source docs framework for humans and agents» — фреймворк документации для людей и агентов. Автор — разработчик Hayden Bleasel. Вы кладёте файлы Markdown или MDX в папку, запускаете команду и получаете готовый сайт без собственного кода приложения. Собственная документация проекта — Blume documentation на useblume.dev — собрана на самом Blume: README прямо указывает, что папка apps/docs в репозитории и есть их документация.
- Коротко (TL;DR)
- Что такое Blume и кому подойдёт сайт документации на нём
- Как Blume превращает папку Markdown в сайт документации
- Что такое llms.txt и llms-full.txt и зачем они ИИ-агентам
- llms.txt и поиск: почему файл не поднимет сайт в ответах ИИ
- Как сделать сайт документации на Blume: от npx blume init до деплоя
- Документация «одним промптом»: как агент со скиллом Blume пишет текст
- Blume, Mintlify, Docusaurus, Fumadocs и Starlight: сравнение в таблице
- DeepWiki и Google Code Wiki: когда вместо сайта нужна вики по коду
- Риски Blume: когда не подходит и где ИИ-документация ошибается
- Blume в реальных PR: откат в Mixar и адрес сайта в zoom-chat-adapter
- FAQ
Пара терминов, без которых дальше будет трудно:
- Markdown — простой текстовый формат:
#делает заголовок,**— жирный текст. Так пишут README на GitHub. - MDX — тот же Markdown, в который можно вставлять компоненты (карточки, вкладки, шаги).
- Статический сайт — набор готовых HTML-файлов, которые хостинг просто отдаёт браузеру, без сервера и базы данных. Это самый дешёвый и надёжный способ держать документацию.
- ИИ-агент — модель, которая сама выполняет действия: читает файлы, запускает команды, открывает страницы. Например, Claude Code в терминале.
Цифры на 23 октября 2026 года. Лицензия — MIT, в FAQ проекта сказано: «no paid tier, no per-seat pricing, and no account» — ни платного тарифа, ни оплаты за места, ни регистрации. Последняя версия на npm — 2.2.4 от 17 октября 2026 года. У репозитория 1 803 звезды на GitHub, а пакет скачали 445 756 раз за период с 19 сентября по 18 октября 2026 года. Последняя цифра считает все скачивания, включая автоматические сборки, — это не число людей.
На странице репозитория (снимок 23 октября 2026 года) рамка 1 выделяет папку skills — там лежат инструкции для ИИ-агентов, о которых ниже. Рамка 2 — лицензия MIT и звёзды, рамка 3 — последний релиз blume@2.2.4.
Кому Blume подойдёт:
- автору open-source библиотеки или CLI-утилиты, которому нужен нормальный сайт документации вместо одного длинного README;
- команде, которая уже пишет код с ИИ-агентом и хочет, чтобы агент же вёл документацию — через Pull Request на проверку человеку;
- тем, кто хочет хостить доки сам (GitHub Pages, Vercel, Cloudflare) и не платить подписку за платформу.
Кому лучше взять другое:
- нужна управляемая платформа с веб-редактором для нетехнических авторов и встроенной аналитикой (у Mintlify она начинается с тарифа Pro) — это Mintlify;
- уже работает Docusaurus или Starlight с десятком плагинов — переезд ради моды не окупится;
- нужно не опубликовать доки, а понять чужой код — это задача DeepWiki или Google Code Wiki (отдельный раздел ниже).
Как Blume превращает папку Markdown в сайт документации
Механика описана в README. Утилита командной строки читает файл настроек blume.config.ts, сканирует папку с контентом, строит из неё граф страниц и генерирует скрытый проект на Astro в папке .blume/. Astro — популярный генератор сайтов на JavaScript; Blume использует его как движок, но вам его изучать не нужно. Папка .blume/ пересоздаётся при каждом запуске, поэтому руками её не правят.
Команда blume build выдаёт статический HTML в папку dist/ вместе с локальным поисковым индексом. Поиск работает на библиотеке Orama прямо в браузере читателя — без внешнего сервиса и без оплаты. Для больших сайтов есть адаптеры Pagefind, Algolia, Typesense и другие.
Что сайт получает без настройки:
- навигацию из структуры файлов — папки становятся разделами бокового меню;
- светлую и тёмную тему с переключателем в шапке, выбор читателя запоминается;
- компоненты без импортов — карточки, колонки, шаги, вкладки, аккордеоны, бейджи, группы кода, деревья файлов, диффы;
- API-справочники из спецификаций OpenAPI, AsyncAPI и GraphQL — по странице на каждый метод, со схемами и «песочницей» для запросов;
- SEO-набор: метаданные, картинки для соцсетей (Open Graph), sitemap,
robots.txt, RSS и разметку JSON-LD; - переводы, версии документации и экспорт любой страницы в PDF или EPUB прямо в браузере.
Минимальный проект после npx blume init выглядит так (из официального Quickstart):
docs/
index.mdx
.gitignore
blume.config.ts
package.json
А страница — это обычный файл с короткой «шапкой». Заголовок и описание из неё Blume сам выводит в начало страницы:
---
title: Introduction
description: Welcome to my docs.
---
Welcome! Use **Markdown** and built-in components — no imports required:
:::note
Blume ships callouts, cards, tabs, steps, and more.
:::
Для агентов Blume выкладывает больше, чем Docusaurus или Starlight из коробки: сырой Markdown любой страницы по адресу с .md на конце, JSON-API документации, кнопки «Copy as Markdown» и «Open in chat». Опционально — встроенный ассистент и MCP-сервер. MCP (Model Context Protocol) — стандартный способ подключить к ИИ-агенту внешний инструмент; подробно он разобран в материале «MCP: как ИИ подключается к вашим инструментам». MCP-сервер Blume даёт агенту четыре инструмента только для чтения: search_docs, get_page, list_pages и get_navigation.
Ассистент по умолчанию работает через Vercel AI Gateway на модели openai/gpt-5.5 (по документации Blume на 23 октября 2026 года), есть адаптеры для OpenAI, Anthropic, Gemini, Grok и OpenRouter. Обе функции — ассистент и MCP — требуют серверной сборки через адаптер vercel(), netlify(), cloudflare() или node(). Ключ провайдера модели нужен только ассистенту: MCP-сервер ищет по собственному полнотекстовому индексу и модель не вызывает. На чистой статике вроде GitHub Pages они не заработают.
Если захочется полного контроля, команда npx blume eject превращает скрытый проект в обычное Astro-приложение. Контент при этом остаётся переносимым Markdown — привязки к сервису нет.
Что такое llms.txt и llms-full.txt и зачем они ИИ-агентам
Если коротко отвечать на вопрос «llms.txt — что это», то это Markdown-файл в корне сайта, который даёт языковой модели краткое описание проекта и список ссылок на важные страницы. Человеку нужен красивый HTML с меню, модели — чистый текст без лишнего. Такой файл работает как оглавление, по которому агент находит нужную страницу и не тратит контекст на разбор вёрстки.
Формат предложил Jeremy Howard из Answer.AI 3 сентября 2024 года, сейчас действует вторая версия спецификации на llmstxt.org. Обязателен в ней только один элемент — заголовок H1 с названием проекта. Дальше по порядку идут:
- цитата (строка с
>) — короткое описание проекта; - абзацы или списки с подробностями — любые, кроме заголовков;
- разделы с заголовками H2, внутри — списки ссылок: название в квадратных скобках, адрес в круглых, после двоеточия короткое пояснение;
- раздел
## Optional— второстепенные ссылки, которые агент может пропустить, если контекст тесный.
Обычно файл лежит в корне, но по второй версии его можно положить и в подпапку, например /docs/llms.txt: тогда он описывает только страницы внутри неё. Спецификация также предлагает выкладывать чистую Markdown-копию каждой страницы по тому же адресу с .md на конце. Во второй версии автор отмечает, что Lighthouse в Chrome проверяет наличие файла в разделе «agentic browsing», а OpenAI, Anthropic и Gemini публикуют такие файлы для своих документаций для разработчиков.
Так выглядит настоящий файл сайта useblume.dev, открытый в браузере 23 октября 2026 года. Рамка 1 — обязательный H1 и цитата-описание. Рамка 2 — блок подробностей: когда брать Blume и как его установить. Рамка 3 — первый раздел H2, дальше идут ссылки с пояснениями через двоеточие.
Важная деталь, которую пропускают многие гайды: файла llms-full.txt в тексте спецификации llmstxt.org нет. Это соглашение платформ — его генерируют Mintlify, Blume, Fumadocs. Идея простая: вместо оглавления отдать весь текст документации одним файлом.
Вот как агент выбирает, что читать:Что Что внутри Когда агенту удобно Нужен сервер llms.txtназвание, описание, список страниц с короткими пояснениями первое знакомство с сайтом: найти нужную страницу, потратив минимум токенов нет llms-full.txtполный Markdown всех страниц с адресами в одном файле документация небольшая и целиком помещается в окно контекста модели нет .md-копия страницыодна страница в чистом Markdown агент уже знает, какая страница нужна нет MCP-сервер инструменты поиска и чтения страниц агент сам ищет ответ по запросу и не грузит лишнее да
Соседи по корню сайта — robots.txt и sitemap.xml. robots.txt задаёт правила доступа для роботов: куда можно, куда нельзя. sitemap.xml — полный список адресов для поисковиков. Оглавление для моделей ничего не разрешает и не запрещает: это курируемая карта с пояснениями, которую агент читает в момент работы.
Не путайте его и с AGENTS.md. Тот лежит внутри репозитория и объясняет агенту, как работать с самим кодом; подробнее — в разборе «AGENTS.md — файл проекта для Codex». Оглавление для моделей смотрит наружу: оно для агентов, которые пользуются вашим продуктом.
llms.txt и поиск: почему файл не поднимет сайт в ответах ИИ
Вокруг этого файла много SEO-маркетинга: «добавьте файл — и ChatGPT начнёт вас цитировать». Данные этого не подтверждают.
- Google. 15 июня 2026 года Google Search Central добавил в гайд по ИИ-оптимизации уточнение: такие файлы «aren’t needed for Google Search (and won’t negatively or positively impact your visibility or rankings)» — для поиска Google они не нужны и на видимость не влияют ни в плюс, ни в минус (журнал обновлений Google Search Central). Держать их для других систем при этом можно.
- SE Ranking. В выборке почти из 300 000 доменов файл нашёлся у 10,13%. Связи между его наличием и цитированием в ответах ИИ исследователи не нашли. Более того, когда этот признак убрали из модели, её точность выросла.
- John Mueller из Google (подкаст Search Off the Record, по пересказу Search Engine Journal от 15 июня 2026 года): файл не помогает языковой модели решить, какой сайт показать по запросу. Но «если кто-то уже на вашем сайте, какая-то автоматизированная система может быть полезна».
Последняя мысль и есть рабочий сценарий. Агент разработчика открыл документацию вашей библиотеки, чтобы правильно вызвать функцию, — и оглавление ведёт его к нужной странице. Для сайта документации файл полезен. Как способ попасть в ответы ChatGPT — нет.
Как сделать сайт документации на Blume: от npx blume init до деплоя
Многие ищут сайт для создания документации — онлайн-сервис, где текст пишут прямо в браузере. Blume устроен иначе: документация живёт файлами в вашем репозитории, а сайт собирается из них командой. Шаги ниже — по официальному Quickstart и README для версии 2.2.4.
Что понадобится:
- Node.js 22.19 или новее. Node.js — программа, которая запускает JavaScript на компьютере; вместе с ней ставится
npx— запускатель пакетов. Версию проверяет командаnode -v. Старый CI на Node 20 сборку не потянет. - Терминал и папка проекта (лучше — git-репозиторий).
- Аккаунт на хостинге, если сайт нужен в интернете, а не только локально.

На странице Quickstart (снимок 23 октября 2026 года) рамка 1 показывает требование к Node.js, рамка 2 — первую команду. Рамка 3 — меню действий страницы: «Copy as Markdown», «Export», «Open in chat» и «Connect to MCP». Первые три пункта Blume добавляет на каждую страницу собранного сайта, последний — когда включён MCP-сервер и задан адрес сайта.
Шаг 1. Создать проект командой npx blume init
npx blume init
Команда задаёт несколько вопросов (где создать проект, как назвать сайт, какой шаблон, где лежит контент), затем создаёт docs/index.mdx, blume.config.ts, package.json со скриптами dev, build и doctor, .gitignore и ставит зависимости. Флаг --yes пропускает вопросы.
В проекте, где package.json уже есть, init его не трогает. Поставьте пакет сами (npm install blume) и добавьте в скрипты "dev": "blume dev" и "build": "blume build". На pnpm 12 нужен флаг: pnpm dlx --allow-build=esbuild blume init.
Шаг 2. Написать первую страницу в docs/index.mdx
Откройте docs/index.mdx, впишите title и description в шапку и текст ниже — пример есть в разделе выше. Новые страницы — новые файлы, разделы — подпапки. Меню и поиск Blume достроит сам.
Шаг 3. Запустить локальный сервер и посмотреть сайт
npm run dev
Сайт откроется на локальном адресе и будет перезагружаться при каждом сохранении файла.
Шаг 4. Собрать статический сайт командой npm run build
npm run build
Готовый сайт появится в dist/. Перед публикацией полезны ещё три команды: npx blume validate проверяет внутренние и внешние ссылки, npx blume doctor ищет проблемы в настройках и контенте, npx blume audit проверяет собранный сайт на SEO-ошибки.
Шаг 5. Прописать адрес сайта в deployment.site
Ссылки в sitemap, канонические адреса и, главное, ссылки внутри файлов для агентов должны быть абсолютными. На Vercel и Netlify Blume по документации сам берёт постоянный адрес продакшена. Но на практике превью-сборка Vercel однажды вписала свой временный адрес (кейс в конце статьи), а локальная и CI-сборка адреса не знают вовсе, поэтому надёжнее прописать его явно на любом хостинге. На GitHub Pages, S3, Cloudflare Pages и Workers без этого не обойтись:
// blume.config.ts
import { defineConfig } from "blume";
export default defineConfig({
deployment: {
site: "https://docs.example.com",
// base: "/docs", // если сайт живёт в подпапке, как у проектных сайтов GitHub Pages
},
});
Без этого шага превью-сборка может записать в файлы для агентов свой временный адрес — реальный случай разобран в конце статьи.
Шаг 6. Выложить сайт на GitHub Pages, Vercel или Cloudflare
Содержимое dist/ подходит для любого статического хостинга: Vercel, Netlify, Cloudflare Pages, GitHub Pages, S3 с CloudFront. Если вы ни разу не выкладывали проект, по шагам это разобрано в гайде «деплой на Vercel через GitHub»: подключаете репозиторий, и каждый пуш пересобирает сайт сам. Ассистент или MCP-сервер нужны — подключите серверный адаптер:
import { defineConfig } from "blume";
import { vercel } from "blume/deploy";
export default defineConfig({
deployment: vercel(),
});
Как создать llms.txt: что включить, что исключить, как проверить
В Blume генерация включена по умолчанию — после blume build в корне сайта лежат /llms.txt и /llms-full.txt. Проверка простая: откройте первый файл по адресу сайта в браузере и убедитесь, что ссылки абсолютные и ведут на боевой домен.
Чем можно управлять:
- Убрать страницу из обоих файлов — добавить в её шапку
ai: { exclude: true }. Страница при этом останется на сайте, в поиске и в sitemap. Черновики, скрытые из меню иnoindex-страницы исключаются сами. - Добавить блок подробностей — опция
agents.llmsTxt.details: абзац о том, когда агенту брать ваш продукт и как его установить. - Подложить свой файл — положить собственную версию в папку
public/, и она заменит сгенерированную. - Выключить совсем —
agents: { llmsTxt: false }вblume.config.ts.
Без Blume файл легко написать руками по спецификации и положить в корень любого сайта. Скелет такой:
# Название проекта
> Одна-две фразы: что это и для кого.
Как установить, на какой версии всё описано, что важно знать агенту.
## Документация
- ссылка на «Быстрый старт»: установка и первый запуск
- ссылка на «Настройки»: все параметры конфигурации
## Optional
- ссылка на Changelog
Каждую строку «ссылка на …» оформите как обычную Markdown-ссылку — так же, как строки раздела Changelog на скриншоте выше. Адреса пишите полностью, с https://, и по возможности ведите на .md-версии страниц.
Документация «одним промптом»: как агент со скиллом Blume пишет текст
Формулировка «сайт документации из репозитория одним промптом» верна наполовину. Сайт действительно собирается одной командой. А вот текст пишет агент, которому Blume даёт инструкцию в виде скилла. Скилл — папка с файлом SKILL.md, где описано, как выполнять определённую работу; механика подробно разобрана в статье «скиллы Claude Code».
Порядок работы по официальной документации Blume:
- Поставить скилл в проект. Команда
npx skills add haydenbleasel/blumeучит агента (Claude Code, Codex или Cursor), что такое Blume, как создать сайт, настроить конфиг и пользоваться компонентами. Полную документацию скилл берёт из установленного пакета. - Дать агенту задачу в корне репозитория. Пример формулировки (наш, не официальный): «Используй скилл blume. Заведи сайт документации в docs/: установка, конфигурация, основные сценарии и справочник API по коду этого репозитория. Ничего не выдумывай: у каждой команды и параметра укажи файл, откуда он взят».
- Проверить результат как обычный Pull Request. Читать изменения глазами, прогнать
blume validateиblume build. - Проверить документацию тестом через
blume eval. Вы пишете вevals.yamlвопросы, которые реально задают пользователи, и факты, которые должны быть в ответе. Агент-«читатель» отвечает только по документации, без доступа к коду; агент-«судья» сверяет ответ с фактами. Нет ответа в доках — проверка падает и называет страницу, которую надо дописать. По умолчанию с версии 2.0.1 работает Codex, для Claude Code — флаг--agent claude. Каждый вопрос — две сессии модели, то есть реальные деньги, поэтому разработчики советуют гонять eval на изменениях документации, а не на каждом коммите. - Поддерживать доки в актуальном состоянии скиллом
blume-update-docs. По расписанию он сверяет смёрженные PR, changelog, схемы конфигов и справку CLI с текстом документации, правит только фактически устаревшие страницы, проверяет сборку и открывает PR. Если ничего не разошлось, PR не создаётся. Само расписание Blume не хостит: нужен планировщик агента или обычный cron.
Вопрос в evals.yaml выглядит так (пример из документации Blume):
questions:
- id: install-node-version
question: What is the minimum Node.js version required?
expected:
- Node 22.19 or newer
routes: /docs/quickstart
Официальный пример еженедельного промпта для blume-update-docs по смыслу такой: посмотри PR, смёрженные за 7 дней, сравни с документацией, игнорируй работу за фича-флагами, обнови нужное, проверь сборку и открой PR blume/*; если обновлять нечего — отчитайся, что проверил, и PR не открывай.
Переезд с другой платформы. npx blume migrate отдаёт агенту Claude Code или Codex ваш нынешний сайт документации — на Mintlify, Docusaurus, GitBook, MkDocs, ReadMe или другой платформе — для переноса на Blume. Скилл миграции переводит структуру на идиоматичный Blume, ставит редирект для каждого адреса, который поменялся, и отчитывается, что не перенёс. Правки агента вы подтверждаете по ходу.
Сам Blume ключей не хранит и модели не вызывает. Команды blume migrate, blume translate, blume eval --fix и blume skill только запускают ваш локальный Claude Code или Codex с нужной инструкцией, так что тексты и в этих случаях пишет агент — и за его работу платите вы.
Итог: агент пишет, Blume публикует, blume eval проверяет. Так это работает на практике — «один промпт» запускает процесс, но не отменяет проверку человеком. Если же нужен не сайт документации, а лендинг или сайт продукта, смотрите отдельный гайд «как сделать сайт с помощью Claude Code».
Blume, Mintlify, Docusaurus, Fumadocs и Starlight: сравнение в таблице
Данные на 23 октября 2026 года (цены — со страницы Mintlify, звёзды — GitHub API).Blume Mintlify Docusaurus Fumadocs Starlight Что это фреймворк-шаблон: только ваш Markdown хостинговая платформа генератор сайтов на React React-фреймворк документации (Next.js, React Router, TanStack Start) тема документации на Astro Лицензия MIT закрытое ядро MIT MIT MIT Цена $0; платите за хостинг и ключ модели для ассистента Starter $0 (5 мест редактора), Pro $450/мес при оплате за год или $540 помесячно, Enterprise по запросу $0 $0 $0 Свой хостинг да, любой статический нет, инфраструктура Mintlify; self-hosting — только Enterprise, по запросу да да да llms.txt встроен, вкл. по умолчанию, плюс llms-full.txt генерирует автоматически, плюс llms-full.txt сторонний плагин docusaurus-plugin-llms npx @fumadocs/cli feature llms (индекс и полный корпус)плагин starlight-llms-txt MCP-сервер опционально, нужен серверный адаптер есть уже на Starter из коробки нет npx @fumadocs/cli feature mcp (серверный роут)из коробки нет Звёзды GitHub 1 803 — 66 572 13 452 9 457
Для сравнения: у MkDocs Material 27 587 звёзд, у VitePress — 18 436, у Nextra — 13 941, все три под MIT (GitHub API, 23 октября 2026 года).
Как читать таблицу:
- Mintlify — когда нужен готовый сервис: веб-редактор для команды и хостинг без DevOps. Starter бесплатен (до 5 редакторов), ассистент и аналитика — с тарифа Pro; некоммерческим open-source проектам Mintlify по заявке даёт Pro бесплатно. Сайт при этом живёт на инфраструктуре Mintlify.
- Docusaurus — зрелый выбор с огромной экосистемой плагинов: у проекта почти в 37 раз больше звёзд, чем у Blume. Файлы для моделей добавляются плагином сообщества.
- Fumadocs — если сайт и так на Next.js или другом React-фреймворке и доки должны жить внутри приложения.
- Starlight — если вы уже на Astro и хотите контролировать проект целиком.
- Blume — когда хочется минимум кода вокруг документации и максимум «агентной» выдачи из коробки, и вы готовы мириться с молодостью проекта.
Сравнение «Blume против Mintlify» в FAQ Blume написано самим Blume — заинтересованной стороной. Цены и функции в таблице взяты со страниц цен и из документации каждого инструмента; из FAQ Blume — только пометка «закрытое ядро» у Mintlify.
DeepWiki и Google Code Wiki: когда вместо сайта нужна вики по коду
DeepWiki и Code Wiki часто ставят в один ряд с Blume, но задача у них другая. Это вики для понимания кода: модель сама читает репозиторий и генерирует описания модулей, диаграммы и чат со ссылками на строки. Blume публикует документацию, которую написали вы или ваш агент.Blume DeepWiki Google Code Wiki Задача опубликовать доки проекта разобраться в коде разобраться в коде Кто пишет текст вы или агент со скиллом модель по коду модель по коду Цена (23.10.2026) бесплатно публичные репозитории — бесплатно; свои в Devin: Low бесплатно, Medium ~5–10 ACU, High ~20–40 ACU на вики публичное превью для публичных репозиториев (по анонсу Google от 13 ноября 2025 года) Приватный код ваш хостинг через Devin на момент анонса — лист ожидания расширения Gemini CLI
DeepWiki делает Cognition, авторы агента Devin. ACU — внутренняя единица оплаты вычислений Devin. Генерацией можно управлять файлом .devin/wiki.json в корне репозитория. Code Wiki от Google пересобирает вики после изменений в репозитории, чат работает на Gemini.
Генерированная по коду вики не заменяет документацию проекта: в ней нет ваших намерений, ограничений и рекомендаций — только то, что модель вывела из кода. Пользоваться ею полезно, чтобы быстро войти в чужой проект, а публиковать доки для пользователей — удобнее через Blume или аналоги.
Риски Blume: когда не подходит и где ИИ-документация ошибается
Чек-лист перед внедрением:
- Проекту четыре месяца. Репозиторий создан 21 июня 2026 года, 1.0.0 вышла 13 июля, 2.0.0 — 24 сентября. Во второй версии поиск, деплой и ассистент переехали в адаптеры, а для перехода понадобилась команда
blume upgrade. Закрепляйте версию пакета и читайте changelog. - Node.js 22.19+. CI-образы на Node 20 придётся обновить.
- Ассистент и MCP требуют сервера, ассистент — ещё и оплаты модели. На GitHub Pages — только статика: поиск работает, ассистента не будет.
- Без
deployment.siteфайлы для агентов могут указывать не туда — на временный адрес превью-сборки. - ИИ-тексты бывают неверными. Авторы исследования DocAgent (arXiv 2504.08725) пишут, что существующие подходы на языковых моделях дают «incomplete, unhelpful, or factually incorrect» документацию — неполную, бесполезную или фактически неверную. Отсюда обязательное ревью человеком,
blume validateиblume evalс вопросами реальных пользователей. - llms-full.txt публикует всё. Любая страница, которую вы не исключили, уйдёт в один файл, удобный для массового скачивания. Внутренние заметки в публичную документацию не кладите вовсе:
ai.excludeубирает страницу из файлов для ИИ, но не с сайта. - Чужие скиллы — это код и инструкции, которым вы доверяете агента. Перед установкой откройте
SKILL.mdи посмотрите, что он разрешает; как не поставить вредоносный скилл — в разборе «где брать скиллы».
Куда уходит ваш код. Когда агент пишет документацию по репозиторию, он отправляет фрагменты кода провайдеру своей модели — Anthropic для Claude Code, OpenAI для Codex. blume eval тоже гоняет сессии через ваш агент: Blume сам ключей не хранит и модели не вызывает. Встроенный ассистент отправляет вопросы читателей и куски документации выбранному провайдеру. Для закрытого кода проверьте условия своего тарифа: используются ли данные для обучения и сколько хранятся. Ключи API держите в .env.local — Quickstart добавляет его в .gitignore. Чтобы подключить к агенту MCP-сервер готовой документации, удобно следовать гайду «MCP в Claude Code» — там же о том, как не перегрузить контекст.
Blume в реальных PR: откат в Mixar и адрес сайта в zoom-chat-adapter
Mixar, PR #606 от 22 октября 2026 года. Автор предложил заменить самописную сборку документации (Astro и собственные утилиты) на Blume. Сохранить хотели фирменную тему, аналитику и деплой на GitHub Pages. Решение по шагам из описания PR:
- контент вынесен в
/docs, маркетинговые страницы остались на своих адресах; - фирменная палитра и шрифты подключены через
theme.css, аналитика — через подмену компонента подвала вcomponents.ts; - порядок страниц перенесён из шапок отдельных файлов в файлы
meta.ts; - llms.txt, каталоги страниц и файл скилла включены, MCP-сервер выключен, потому что деплой статический.
Слияния не было. 22 октября 2026 года автор сам закрыл PR с пометкой «Reverting this one»: по его словам, интерфейс документации Blume смотрелся чужеродно рядом с остальным сайтом («read as out of place»), несмотря на подключённые палитру и шрифты. Документация вернулась на свою вёрстку, а поиск взяли из соседнего PR #598 — собственный статический индекс вместо Orama. Ветку автор оставил, чтобы позже забрать файлы для агентов (llms.txt, .md-копии страниц, JSON-API и скилл) поверх своего дизайна. Урок двойной: без сервера Blume даёт всю выдачу для агентов, кроме MCP и ассистента, но в сайт со своим сложившимся дизайном его интерфейс встраивается хуже, чем в отдельный сайт документации.
zoom-chat-adapter, PR #10, смёржен 19 октября 2026 года. Проблема: превью-деплой на Vercel вписывал свой временный адрес вида *-git-*.vercel.app в llms.txt и sitemap. Агент, который прочитал такой файл, получал ссылки, исчезающие вместе с превью. Локальные и CI-сборки адреса не знали вовсе. Решение — закрепить канонический адрес в blume.config.ts (site: process.env.DOCS_SITE || SITE_URL) и оставить переменную окружения для будущего своего домена. Обратная сторона, которую автор описал сам: превью теперь отдают агентам адрес боевого сайта, а не свой.
Вывод из обоих кейсов: Blume снимает рутину, но адрес сайта, что публиковать для агентов, нужен ли сервер и впишется ли его интерфейс в ваш дизайн, решаете вы.
FAQ
Blume бесплатный или есть платный тариф?
Бесплатный. Blume распространяется под лицензией MIT, и в FAQ проекта прямо сказано: платного тарифа, оплаты за места и обязательного аккаунта нет. Платить придётся только за то, что вы подключите сами: хостинг с серверными функциями — для встроенного ассистента или MCP-сервера, и ключ модели — для ассистента. Статический сайт на GitHub Pages обходится в ноль.
Генерирует ли Blume документацию из кода автоматически?
Нет. Blume собирает сайт из уже написанных Markdown-файлов и код репозитория не анализирует. Текст по коду пишет ИИ-агент — Claude Code, Codex или Cursor — с установленным скиллом Blume. Результат надо проверять как обычный Pull Request, а полноту доков — командой blume eval, где агент отвечает на вопросы пользователей только по документации.
Чем llms.txt отличается от robots.txt и sitemap.xml?
robots.txt говорит роботам, какие разделы сайта можно обходить. sitemap.xml перечисляет адреса страниц для поисковиков. Третий файл не управляет доступом и не претендует на полноту: это короткая карта с пояснениями для языковых моделей, которую агент читает, когда ему нужна информация о вашем продукте. Все три файла лежат в корне сайта и друг другу не мешают.
llms.txt или MCP-сервер: что выбрать для документации?
Начинайте с файла-оглавления: он бесплатный, работает на любом статическом хостинге, и агент сам дойдёт по ссылкам до нужной страницы. MCP-сервер даёт агенту поиск и чтение страниц по запросу, что удобнее на большой документации, но требует серверной сборки. В Blume можно включить оба: файлы генерируются по умолчанию, MCP — опционально.
Можно ли разместить сайт на Blume на GitHub Pages?
Да. Команда blume build выдаёт статический HTML, который GitHub Pages отдаёт без дополнительных настроек. Пропишите в blume.config.ts адрес сайта в deployment.site, а для проектного сайта в подпапке — ещё и base. На GitHub Pages не заработают только серверные функции: встроенный ассистент и MCP-сервер.
Нужен ли llms.txt обычному сайту, чтобы попасть в ответы ИИ?
Для этого — нет. Google 15 июня 2026 года написал, что для Google Search файл не нужен и на ранжирование не влияет, а исследование SE Ranking почти на 300 000 доменах не нашло связи между наличием файла и цитированием в ответах ИИ. Файл имеет смысл там, где его реально читают агенты: в документации к библиотекам, API и инструментам разработчика.


