Схема контентного хаба на Directus: одна база данных, несколько сайтов и ИИ-агенты

Directus как контентный хаб: единая база для мультисайта и ИИ-агентов

ИИ-инструменты 22 июня 2026 г.

Контент в пяти разных системах — это не масштаб, а техдолг. Когда тексты, медиа и метаданные живут в разных CMS, базах и даже Google-таблицах, каждый новый сайт или канал превращается в ручную миграцию. Автор этого материала столкнулся ровно с такой ситуацией и в апреле поставил себе Directus в роли единого контентного хаба. За несколько месяцев система вышла на версию 12, и появилось достаточно новых возможностей, чтобы пересмотреть подход к организации контента для мультисайтовых проектов. Разберём, что изменилось, как это работает на практике и когда стоит попробовать.

Что такое Directus и почему он стал контентным хабом

Directus — это headless CMS с открытым исходным кодом, которая берёт любую реляционную базу данных и превращает её в API-платформу с админкой. В отличие от классических CMS вроде WordPress, здесь нет привязки к конкретному фронтенду: контент хранится в базе, а отдаётся через REST или GraphQL куда угодно — на сайт, в мобильное приложение, в Telegram-бот или ИИ-агенту.

Автор использует Directus как единый контентный хаб: одна база, к которой подключаются несколько сайтов, ИИ-агенты и сам автор для управления материалами. Идея простая — перестать держать контент в пяти местах и начать работать с одним источником правды.

Ключевые характеристики Directus:

Параметр Значение
Тип Headless CMS, open source
Лицензия BSD 3-Clause
Базы данных PostgreSQL, MySQL, SQLite, MS SQL, Oracle, CockroachDB
API REST + GraphQL
Админка SPA на Vue.js, доступна из коробки
Деплой Docker, облако, собственный VPS
Авторизация Ролевая модель, OAuth 2.0, SSO

Что нового в Directus 12: черновики, переводы и OAuth для агентов

Версия 12 принесла несколько изменений, которые сместили фокус с разработчиков на команду в целом. Вот что автор выделяет как наиболее значимое.

Черновики и публикация из коробки. Раньше для организации workflow с черновиками и ревью приходилось городить кастомную логику. Теперь статусы публикации — черновик, на ревью, опубликовано — встроены в систему. Это особенно полезно, когда в контент-процессе участвуют не только разработчики, но и редакторы, маркетологи или внешние авторы.

Перевод контента силами ИИ. Directus 12 добавил интеграцию с ИИ-переводчиками. Для мультисайтовых проектов с контентом на нескольких языках это означает, что перевод можно запускать прямо из админки, не выгружая данные в сторонние сервисы.

Фильтры по JSON в API. Для команд, которые работают через API, появилась возможность фильтровать данные по JSON-полям. Это расширяет гибкость запросов без необходимости менять структуру базы.

OAuth для ИИ-агентов. Автор называет это самым важным изменением для своего сценария. Раньше агенты подключались через статические токены — вечные, непривязанные к конкретному пользователю. Теперь агент работает через OAuth от имени конкретного пользователя и с его правами. Это решает сразу две проблемы: безопасность (токен можно отозвать) и аудит (видно, кто именно внёс изменение).

Directus vs Strapi vs Sanity: когда что выбрать

Выбор headless CMS зависит от того, кто будет работать с системой и какие ограничения у проекта. Автор сравнивает три популярных варианта.

Directus подходит, когда нужен полный контроль над данными и инфраструктурой. Система работает поверх существующей базы данных, не навязывает свою структуру. Хорошо масштабируется для мультисайтовых проектов, где контент нужно раздавать в несколько точек. Минус — требует самостоятельного хостинга и минимального понимания серверной инфраструктуры.

Strapi — более дружелюбен к разработчикам, которые хотят быстро собрать API. Админка проще в настройке, но при масштабировании на несколько сайтов могут возникнуть сложности с организацией ролей и прав. Лицензия двойная: ядро open source, но часть функций — проприетарная.

Sanity — облачное решение с мощным редактором контента (Portable Text). Удобен для редакционных команд, но зависит от облачного провайдера и может быть дороже при большом объёме данных. Менше подходит для сценариев, где нужен полный контроль над инфраструктурой.

Если проект предполагает несколько сайтов, подключение ИИ-агентов и работу с собственной базой данных, Directus выглядит наиболее логичным выбором.

Как раздать доступы людям и агентам

Одна из ключевых задач при развёртывании контентного хаба — настроить права так, чтобы каждый участник видел и редактировал только то, что ему положено.

Для людей. Directus использует ролевую модель доступа. Можно создать роли «Редактор», «Автор», «Модератор» и настроить для каждой права на чтение, создание, редактирование и удаление конкретных коллекций. Например, автор блога видит только свои черновики, редактор — все материалы на ревью, администратор — всё.

Для ИИ-агентов. С версии 12 агенты подключаются через OAuth 2.0. Агент получает токен от имени конкретного пользователя и работает в рамках его прав. Это значит, что агент-переводчик может иметь доступ только к коллекции переводов, а агент-публикатор — только к статусам публикации. Если агента нужно отключить, достаточно отозвать его токен.

Практический чеклист настройки доступов:

  • Определите роли: кто пишет, кто редактирует, кто публикует, кто только читает
  • Создайте роли в Directus и назначьте права на коллекции
  • Для агентов заведите отдельных служебных пользователей с минимальными правами
  • Подключите агентов через OAuth, а не через статические токены
  • Проверьте, что агент не может выйти за рамки своей роли
  • Настройте логирование действий для аудита изменений

Как поднять Directus на своём VPS: пошаговый план

Автор подготовил подробное руководство по развёртыванию Directus на собственном сервере. Вот сжатая версия для тех, кто хочет попробовать.

  1. Подготовьте VPS. Минимальные требования: 1 ГБ RAM, 1 vCPU, 20 ГБ диска. Подойдёт любой облачный провайдер с Ubuntu 22.04 или новее.
  2. Установите Docker и Docker Compose. Directus официально рекомендуется запускать через Docker — это упрощает обновления и откат.
  3. Создайте базу данных. Directus поддерживает PostgreSQL, MySQL и другие. Для продакшена рекомендуется PostgreSQL.
  4. Настройте docker-compose.yml. Официальный репозиторий Directus содержит готовый шаблон. Нужно указать переменные окружения: ключи базы, секрет админки, настройки почты.
  5. Запустите контейнеры и выполните первоначальную настройка. При первом запуске Directus предложит создать администратора.
  6. Настройте роли и коллекции. Определите структуру контента: какие коллекции нужны, какие поля, какие связи между ними.
  7. Подключите фронтенды и агенты. Используйте REST или GraphQL API. Для фронтендов — статические токены с ограниченными правами, для агентов — OAuth.
  8. Настройте бэкапы. Регулярные дампы базы данных и томов Docker — обязательны для продакшена.

Когда Directus как контентный хаб — правильное решение

Подход с единым контентным хабом имеет смысл в нескольких сценариях. Если у вас один сайт и один автор, Directus будет избыточным. Но если хотя бы два из следующих условий совпадают — стоит рассмотреть.

  • Контент используется на нескольких сайтах или платформах
  • В процессе участвуют несколько авторов с разными ролями
  • Нужно подключить ИИ-агентов для автоматизации (перевод, публикация, модерация)
  • Важна независимость от облачных провайдеров и полный контроль над данными
  • Требуется гибкая ролевая модель с гранулярными правами

Если же проект небольшой, команда из одного-двух человек, а контент живёт на одном сайте — проще начать с более лёгкого решения и переехать позже, когда сложность вырастет.

Источники

Теги