EmDash 1.0:稳定版 CMS,配备安全插件注册表
内容提要
EmDash 1.0 正式发布,这是一个基于 Astro 的免费开源 CMS,支持开发者、编辑与 AI 代理协作。它推出了基于 AT Protocol 的去中心化插件注册表,插件在沙箱中运行且权限受限。Cloudflare 博客已迁移至 EmDash,验证其可承受每秒 5000 次请求。项目已有超 175 名贡献者,并开源了 AI 建站工具 EmDash Build。
延伸解读
插件安全模型:从信任到验证
EmDash 1.0 的插件在沙箱中运行,默认无法访问站点内容、媒体、用户、密钥、文件系统或网络,仅能使用自身私有存储。插件需声明所需能力,经管理员批准后才能获得相应权限。这种基于能力的安全模型将信任从插件作者转移到运行时强制隔离,降低了恶意或疏忽插件带来的风险。
去中心化插件注册表:所有权与分发分离
EmDash 插件注册表基于 AT Protocol 构建,发布者使用 Atmosphere 账户发布插件,包和发布记录由发布者签名并存储在自己的账户中。注册表仅提供发现和安装入口,不拥有插件所有权。即使注册表服务停止,发布者仍可保留身份和发布历史,其他服务也可索引相同发布并建立自己的目录。
生产验证:Cloudflare 博客迁移与性能表现
Cloudflare 博客已迁移至 EmDash,作为“Customer Zero”验证其稳定性。该博客每周有数百万页面浏览量,需应对高达每秒 5000 次合法请求的峰值以及零星 DDoS 攻击。迁移过程中催生了可选的 KV 对象缓存、Hyperdrive 数据库适配器和 Workers Cache 兼容性等功能,这些功能现已向所有用户开放。
生态与平台化:从单站点到多租户
EmDash 不仅适用于单个 Astro 站点,还面向构建网站创建和托管产品的公司。通过 Workers for Platforms,平台可为每个客户站点运行独立 Worker,无需自行配置服务器。平台可直接使用管理界面,或基于 API、CLI 和内置 MCP 服务器构建自有界面,甚至让代理以自然语言处理内容更新。沙箱插件模型也让平台能更安全地提供扩展。
Q&A
EmDash 1.0 是什么?它和 WordPress 有什么关系?
EmDash 1.0 是一个稳定、免费且开源的 CMS,基于 Astro 构建,被描述为 WordPress 的“精神继承者”。它支持开发者用 Astro 构建、编辑通过管理后台管理内容,AI 代理可通过 API、CLI 或内置 MCP 服务器协作。
EmDash 的插件注册表有什么特别之处?它是如何保证插件安全的?
EmDash 的插件注册表基于 AT Protocol 构建,是去中心化的。发布者保留对插件包和发布历史的控制权,注册表仅提供发现和安装的目录。插件在沙箱中运行,只能访问自身私有存储,无法访问站点内容、媒体、用户、密钥、文件系统或网络,除非插件声明所需能力并经管理员批准。注册表通过签名 Merkle 搜索树验证发布记录,确保代码未被篡改。
EmDash 能承受多大的流量?Cloudflare 博客迁移到 EmDash 后表现如何?
Cloudflare 博客已迁移至 EmDash,验证其可承受每秒 5000 次请求(RPS)的合法流量,并能应对每周数百万页面浏览量和零星的 DDoS 攻击。迁移过程中还催生了可选的 KV 对象缓存、Hyperdrive 数据库适配器和 Workers Cache 兼容性等功能。
EmDash 的插件沙箱机制是如何工作的?在 Cloudflare 和 Node.js 上有什么不同?
EmDash 插件在隔离的运行时中运行,只能访问自己的私有存储,无法访问站点内容、媒体、用户、密钥、环境、文件系统或网络。在 Cloudflare 上,每个插件作为 Dynamic Worker 通过 Worker Loader 运行;在 Node.js 上,EmDash 启动 workerd 作为独立进程,每个插件作为隔离服务运行。两种平台使用相同的清单和能力门控 API。
EmDash Build 是什么?它如何帮助用户建站?
EmDash Build 是一个开源的 AI 建站工具(alpha 版),托管服务商、网站构建器和平台可以自行运行并集成。它通过聊天框接收用户需求,由 AI 代理设计内容模型、通过 EmDash 的 MCP 服务器填充内容并编写页面。每个项目在独立的 Cloudflare Sandbox 容器中运行,代理可验证自己的工作,所有更改通过 git 提交跟踪。发布时内容迁移到生产 EmDash 站点并部署到 Workers for Platforms 命名空间。
EmDash 项目有多少贡献者?社区参与情况如何?
截至文章发布时,已有超过 175 人贡献了超过 1800 次提交,社区 Discord 有超过 800 名成员。贡献者将 EmDash 翻译成 25 种语言。核心贡献者包括 @swissky、@danielmlr、@MA2153、@marcusbellamyshaw-cell 等。实习生 Noah Pham 成为项目第二位维护者,贡献了 80 多项更改。
EmDash 的插件注册表未来会支持付费插件吗?
目前注册表支持免费插件,但 EmDash 计划未来添加对付费插件的支持,并保持相同的去中心化模式。他们正在关注 Atproto Spaces Alpha,希望任何人都能运行安全的付费插件市场,让发布者能从软件中获利。