一句话定位:EmDash 是 Cloudflare 开源的全栈 TypeScript CMS——用 AI 编码智能体从零写成,官方称之为「WordPress 的精神续作」:插件跑在隔离沙箱里不再有安全噩梦、天生 serverless 按需伸缩、原生 MCP 接口让 AI 智能体直接帮你管站,MIT 协议,4 个月拿下 1.2 万 star,Cloudflare 自家博客已经率先迁移上去了。

一、EmDash 是什么来头

EmDash 出自 Cloudflare 之手,仓库 emdash-cms/emdash 创建于 2026 年 4 月 1 日。Cloudflare 在官宣里说得很直白:此前他们用 AI 编码智能体一周重建了 Next.js,接着让智能体干了件更有野心的活——把 WordPress 从零重写一遍。两个月后,EmDash 出来了。

几个关键事实先摆清楚:

  • 纯 TypeScript 全栈,底层是内容驱动网站框架 Astro,没有一行 PHP;
  • 完全开源、MIT 协议——因为没复用任何 WordPress 代码,不必像 WP 插件那样被 GPL 绑定;
  • 定位是「精神续作」而非分叉:功能对标 WordPress(自定义内容类型、草稿、修订、定时发布、全文搜索、分类法、菜单、实时预览、媒体库),但架构完全是现代的;
  • 不锁 Cloudflare:跑在 Cloudflare Workers 上体验最佳,但也能部署到任意 Node.js 服务器,数据库/存储通过 Kysely 和 S3 API 抽象,SQLite、PostgreSQL、Turso、AWS S3、本地文件都行。

最有说服力的是:2026 年 8 月 24 日,Cloudflare 官方博客自己迁移到了 EmDash,还发了一篇《The Cloudflare Blog – Brought to you by EmDash》,标题就叫「We are Customer Zero」——自己吃自己的狗粮,改版加了暗色模式,迁移后还实测了性能与 MCP 场景。

Cloudflare 官方博客迁移到 EmDash 的公告

顺带一提,上面截图里那个深色圆角方块、蓝色「m」加橙色横线的图标,就是 EmDash 的官方 LOGO——「m」后面那道橙色横线正是破折号「—」(em dash),项目名就这么来的。

二、最大亮点:把 WordPress 的插件安全噩梦关进沙箱

Cloudflare 做这个项目的核心动机,是 WordPress 没解决掉的老大难:插件安全。

官方博客引用的数据相当扎眼:WordPress 站点 96% 的安全问题源自插件;2025 年 WordPress 生态发现的高危漏洞数量,超过了前两年的总和。根因在于架构——WordPress 插件是一段直接挂钩内核的 PHP 脚本,没有隔离,装一个插件就等于把整站数据库和文件系统的钥匙都交给它。

EmDash 的解法是把每个插件跑在独立的沙箱 isolate(Cloudflare 的 Dynamic Worker)里:

  • 插件不能直接碰底层数据,只能通过 bindings 拿到自己声明的权限;
  • 插件清单(manifest)里必须静态声明能力,比如 read:content、email:send,装之前就能看清它要干什么——类似 OAuth 授权第三方应用时的权限确认;
  • 默认无外网访问,需要联网也只能声明访问特定域名;
  • 主题同理:Astro 主题永远无法执行数据库操作,不像 WordPress 的 functions.php 那样权力无边。

这个模型还顺带解决了插件市场的锁定问题:EmDash 插件独立运行、不共享代码,可以采用任意许可证,插件作者不必为了进市场把代码按 GPL 白送。

三、天生 serverless:流量来了秒起、没流量归零

WordPress 不是 serverless——你得买 VPS、预配实例、扛流量峰值,闲时也在烧钱。EmDash 则是为 serverless 而生:请求来了,Cloudflare Workers 运行时立刻起一个 isolate 处理,没请求就缩到零,只按实际 CPU 时间计费。个人博客可以近乎零成本跑在 Cloudflare 免费档上,大平台也能用 Cloudflare for Platforms 跑起百万级实例。

对个人站长来说,这意味着建站链路变成:一个域名 + 一个 Cloudflare 账号,不再需要服务器和解析配置。

四、AI 原生:每个实例都自带 MCP 服务器

这是 EmDash 和传统 CMS 拉开代差的地方。WordPress 对 AI 的支持主要靠 REST API 和第三方插件缝缝补补,EmDash 则是按「人机共管」设计的:

  • 内置 MCP 服务器:每个 EmDash 实例都自带一个远程 MCP Server,把内容、Schema、媒体、分类法、菜单、修订版本全部暴露给 AI 智能体——丢进 Claude 或任何支持 MCP 的工具就能用;
  • Agent Skills:实例自带说明文档,教智能体怎么写插件、怎么把旧 WordPress 主题移植成 EmDash 原生主题;
  • CLI:上传媒体、搜索内容、管理 Schema,管理后台能做的命令行都能做。

换句话说,批量改字段、迁移内容格式这类 CMS 里最枯燥的活,现在可以直接扔给智能体干活。

五、怎么上手

三种玩法,成本从低到高:

1. 在线试玩(零成本):打开官方 Playground,直接体验管理后台。

2. 本地起一个:

1
npm create emdash@latest

脚手架自带 Blog / Marketing / Portfolio 三套起始模板,选一个改就行。已有的 Astro 项目里也可以直接 npx emdash dev,管理后台挂在 /_emdash/admin。

3. 部署上线:GitHub 仓库提供一键部署到 Cloudflare 的按钮,整个栈(Workers + D1 数据库 + R2 存储)一条命令拉起;也可以部署到任意 Node.js 服务器自托管。

六、现状与几个提醒

EmDash GitHub 仓库实况

写这篇时我重新核对了仓库实况(2026-09-24):12,458 star / 1,163 fork,4 个月破 1.2 万 star 的增速相当可观;最新版本 emdash@0.39.1(2026-09-23 发布),1,400+ commits,提交记录里能直接看到 cherenkov and claude 这样的共同作者——确实是 AI 智能体在持续写代码,迭代非常活跃。

上手前有几点要清楚:

  • 还在 0.x 阶段:从 4 月的 0.1.0 预览版到现在 0.39.x,API 和功能仍在快速演进,生产使用需要自己评估稳定性;
  • 不兼容 WordPress 插件/主题:这是全新代码库,WP 生态里那 6 万多个插件和海量主题都用不了,迁移等于重建;
  • 插件沙箱依赖 Dynamic Workers:这是 Cloudflare 的付费能力,社区资料指出沙箱插件场景需要付费账户——纯静态展示类站点受影响不大,但要以官方文档为准;
  • 中文资料目前还很少,遇到问题基本要啃英文文档和 Discord 社区。

七、适合谁 / 不适合谁

适合:想尝鲜下一代 CMS 的开发者;本来就用 Astro 的内容站作者;想搭个人博客/小微站点、不想买服务器的 Cloudflare 用户;喜欢用 AI 智能体管理内容的技术玩家。

不适合:依赖成熟 WP 插件生态的现有站点(电商、会员站等,迁过去等于重做);追求开箱即用、不想碰命令行的纯小白;需要稳定长期生产环境的保守型项目——再等等 1.0。

EmDash CMS开源TypeScript / Astro

Cloudflare 出品的开源全栈 TypeScript CMS,基于 Astro,定位 WordPress 精神续作:插件沙箱隔离、serverless 按需伸缩、内置 MCP 支持 AI 智能体管理。MIT 协议,4 个月 12.4k star,官方博客已率先迁移。

★ 12.4k
GitHub Star
⌖ 1.1k
Fork
MIT
开源协议
CMSAstroServerlessAI 原生