Cloudflare запустила EmDash — open-source CMS на TypeScript, которая решает главную проблему WordPress
Cloudflare представила EmDash v0.1.0 — CMS нового поколения, где каждый плагин работает в изолированной песочнице и декларирует разрешения. Разбираем, как это устроено и стоит ли мигрировать.
Новости TprogerЕсли вы хоть раз обновляли WordPress-плагин и молились, чтобы сайт не упал — Cloudflare сделала кое-что для вас.
EmDash — это новая open-source CMS (система управления контентом) на TypeScript от Cloudflare, которую компания называет «духовным наследником WordPress». Главная идея: плагины работают в изолированных песочницах и не могут навредить сайту, даже если содержат уязвимости.
Ключевые выводы
- Cloudflare выпустила EmDash v0.1.0 — open-source CMS на TypeScript с MIT-лицензией
- Каждый плагин запускается в изолированной песочнице (Dynamic Workers) и декларирует нужные разрешения в манифесте
- 96% уязвимостей WordPress-сайтов приходится на плагины — EmDash решает эту проблему архитектурно
- Под капотом — Astro, serverless-архитектура, Portable Text вместо HTML, встроенный MCP-сервер для ИИ-агентов
- Проект создан за 2 месяца с помощью ИИ-агентов, доступен на GitHub (3200+ звёзд за сутки)
WordPress исполнится 23 года в этом году (основан в 2003 году). Платформа обслуживает более 40% всех сайтов в интернете, но её архитектура родом из эпохи, когда AWS EC2 ещё не существовал. Плагинная система WordPress — главное преимущество и главная боль одновременно.
Почему безопасность плагинов WordPress — нерешаемая проблема
В WordPress плагин — это PHP-скрипт, который встраивается напрямую в ядро и получает полный доступ к базе данных и файловой системе. Нет изоляции, нет ограничений. Установить плагин — значит полностью ему довериться.
Статистика Wordfence и других ИБ-компаний неутешительна:
- 96% уязвимостей WordPress-сайтов происходят из плагинов
- В 2025 году нашли больше критических уязвимостей в экосистеме WordPress, чем за два предыдущих года вместе
- Очередь ревью в маркетплейсе WordPress.org — 800+ плагинов, ожидание — минимум 2 недели
WordPress не может решить эту проблему, не переписав архитектуру с нуля. Cloudflare решила это сделать.
Как EmDash изолирует плагины
В EmDash каждый плагин запускается в собственном изолированном воркере (Dynamic Worker — легковесная v8-песочница, запускающаяся за миллисекунды). Вместо полного доступа ко всему, плагин декларирует в манифесте, какие возможности ему нужны:
Этот плагин запрашивает ровно два разрешения: чтение контента и отправку email. Ничего другого он сделать не может — ни обратиться к внешнему серверу, ни прочитать файловую систему, ни получить доступ к базе данных напрямую.
Модель напоминает OAuth: при установке плагина вы видите, какие именно разрешения он запрашивает, и принимаете осознанное решение. Администратор может задать политики — какие capabilities допустимы для каких ролей.
Архитектура и стек
EmDash построен на современном стеке:
- TypeScript — весь код, включая плагины и темы
- Astro — фреймворк для контентных сайтов, рендеринг тем
- Portable Text — структурированный JSON вместо HTML, контент не привязан к DOM
- Serverless — масштабируется до нуля, работает на Cloudflare Workers или любом Node.js-сервере
- Passkeys — аутентификация без паролей по умолчанию (WebAuthn)
- MIT-лицензия — без ограничений GPL, плагины могут иметь любую лицензию
Хранение и совместимость
На Cloudflare EmDash использует D1 (база данных), R2 (файлы), Workers (вычисления). Но абстракции портируемы: можно запустить на SQLite, PostgreSQL, AWS S3 или локальном файловом хранилище. Команда для развёртывания:
ИИ-нативная CMS: MCP, CLI, Agent Skills
EmDash спроектирован для работы с ИИ-агентами:
- Встроенный MCP-сервер — Claude, ChatGPT и другие ИИ-инструменты могут управлять сайтом напрямую через Model Context Protocol
- Agent Skills — файлы-инструкции для ИИ-агентов: как писать плагины, портировать темы с WordPress, работать со схемами контента
- CLI — программное управление контентом, медиа, схемами
По сути, рутинную работу — миграцию контента, создание плагинов, адаптацию тем — можно поручить ИИ-агенту, и EmDash даст ему весь необходимый контекст.
Встроенная монетизация через x402
Каждый сайт на EmDash поддерживает стандарт x402 — нативные интернет-платежи. Клиент (например, ИИ-агент) отправляет HTTP-запрос, получает ответ 402 Payment Required и оплачивает доступ к контенту на лету. Настроить монетизацию можно без единой строчки кода — указать, какой контент платный, и привязать кошелёк.
Миграция с WordPress
EmDash поддерживает импорт существующих WordPress-сайтов:
- Экспорт WXR-файла (WordPress eXtended RSS) из WordPress-админки
- Или установка плагина EmDash Exporter, который создаёт защищённый endpoint для миграции
- Автоматический перенос постов, страниц, медиафайлов и таксономий
Кастомные типы контента (которые в WordPress требуют Advanced Custom Fields) в EmDash задаются через визуальный конструктор схем в админке.
Что стоит учесть
EmDash находится в статусе бета-превью (v0.1.0). Несколько моментов:
- Проект молодой — 62 коммита, 4 контрибьютора, 34 релиза
- Песочница для плагинов через Dynamic Workers требует платного аккаунта Cloudflare (от $5/мес), но EmDash запускается и без неё — плагины будут работать в safe mode без изоляции
- Экосистема плагинов и тем ещё не сформировалась — на старте доступны формы, встраивания, SEO, аудит-лог
- Привязка к инфраструктуре Cloudflare — можно запустить на Node.js, но максимальную производительность даёт именно Cloudflare
Часто задаваемые вопросы
Что такое EmDash?
EmDash — это open-source CMS на TypeScript от Cloudflare, построенная на фреймворке Astro. Позиционируется как «духовный наследник WordPress» с фокусом на безопасность плагинов, serverless-архитектуру и интеграцию с ИИ-агентами. Лицензия MIT.
Чем EmDash отличается от WordPress?
Главное отличие — архитектура плагинов. В WordPress плагин имеет полный доступ к БД и файлам. В EmDash плагин запускается в изолированной песочнице и может делать только то, что явно задекларировал в манифесте. Кроме того, EmDash написан на TypeScript (а не PHP), использует serverless-архитектуру и хранит контент в структурированном JSON (Portable Text) вместо HTML.
Можно ли перенести сайт с WordPress на EmDash?
Да. EmDash поддерживает импорт через WXR-экспорт или специальный плагин EmDash Exporter. Переносятся посты, страницы, медиафайлы и таксономии. Кастомные типы контента можно пересоздать через визуальный конструктор схем.
EmDash работает только на Cloudflare?
Нет. EmDash можно запустить на любом Node.js-сервере с SQLite. Однако на Cloudflare доступны дополнительные возможности: изолированные песочницы для плагинов (Dynamic Workers), масштабирование до нуля, глобальная CDN. Платный аккаунт (от $5/мес) нужен для песочницы плагинов.
Что за x402 и зачем он в CMS?
x402 — открытый стандарт нативных интернет-платежей. Позволяет любому клиенту (включая ИИ-агентов) оплатить доступ к контенту через HTTP 402 Payment Required. В EmDash монетизация контента настраивается без кода — достаточно указать платный контент и привязать кошелёк.
Выводы
WordPress — триумф open source, который дал возможность публиковаться миллионам. Но экосистеме нужен вариант, который даёт ту же свободу и доступность, решая при этом проблемы, которые WordPress не может решить.
EmDash — амбициозная заявка Cloudflare на рынок CMS. За 24 часа после анонса проект набрал более 3200 звёзд на GitHub и 600+ баллов на Hacker News. Продакшн-готовности пока нет — это бета. Но идея изолированных плагинов с декларативными разрешениями решает реальную проблему, которая мучает WordPress-экосистему десятилетиями.
Попробовать EmDash можно в онлайн-песочнице или развернуть локально через CLI.