注意:Kenton Varda 今天刚刚发布了 Cloudflare OS:https://x.com/KentonVarda/status/2084990137180590572 本次演讲录制于发布前一个月。

Claude 发现演示文稿应用缺少删除线功能,于是自行添加了该功能。当被要求从 Google 文档生成演示文稿时,它又添加了文本居中功能,并增加了一个接受原始 SVG 的框,随后生成了应用原本无法绘制的图表的 SVG 代码。这就是 Kenton Varda 的核心论点:如今的软件由开发者交付给用户,而用户的功能请求往往在 Jira 中石沉大海;开发者寻求的“逃生舱”是一种需要数年开发且最终往往无法落地的插件架构重写方案。如果用户自己的智能代理能够添加功能,核心应用就能保持简洁,且无需任何人等待。

当前没有任何基础设施支持这种模式。移动平台不允许运行未签名的代码,而二十五年的云架构使得开发者服务器上仅存在每个应用的唯一受信任版本。Gadgets 是他的解决方案,基于 Cloudflare Workers 构建,无需容器,也无需数据库。每个 Gadget 都是应用的一个独立实例,例如一个演示文稿或一个看板,分享功能由平台实现,因此应用本身无法错误地配置访问控制。

用户界面运行在 null origin 的 iframe 中,它只能向父级发送 postMessage 消息,并通过 Cap'n Web RPC 会话与动态 Worker 沙箱中的服务器代码通信,因此即使在 Vibecoded 代码中存在 XSS 漏洞,也没有任何数据可泄露。整个演示都在本地的 workerd 上运行,因此会议网络的故障仅导致需要模型调用的那一次调用失败。

演讲者信息: - https://x.com/KentonVarda - https://lanparty.house - https://github.com/cloudflare/workerd

时间戳: 0:00 - 个人 AI 代码生成破坏了云基础设施 1:16 - 功能请求如何消亡 2:35 - 插件系统重写的陷阱 3:27 - 如果用户能添加自己的功能 5:11 - 权限控制,以及为何 Web 是逃生舱 7:11 - Kenton Varda 与 Cloudflare Workers 8:39 - Gadgets 作为办公套件,而非部署目标 9:58 - 蓝图与幻灯片构建器 11:03 - 每个文档一个 Gadget,平台内置分享功能 12:21 - Claude 为应用添加功能以构建幻灯片 14:04 - 为何 XSS 漏洞在此无关紧要 16:22 - 无容器,无数据库,在 workerd 上运行 17:24 - 为何尚未开源

引言

“个人 AI 代码生成破坏了传统的云基础设施。”(0:38) “在美国,买一把枪几乎比获取自己手机的访问权限以安装未签名软件更容易。”(5:11) “我想知道 Claude 的训练数据中哪里学到了你可以让文字抖动以强调它们。”(6:33) “它们糟糕的原因完全在于我的责任。这不是软件的错。”(11:57) “如果你有 XSS 漏洞,实际上它并不重要,因为这些漏洞无法泄露任何内容。”(15:26)