
多数 JavaScript 开发者倾向于沿用熟悉框架,但在 AI 代理承担主要编码工作时,这种惯性可能成为效率阻碍。对人类友好的工具,未必是驱动型模型的最优解。
西雅图 AI 安全公司 Socket 开发者 Nolan Lawson 指出,Web 开发社区长期受主观偏好主导,框架选型往往基于“感觉”而非实证。为消除这一偏见,Lawson 建立了一套基准测试,评估不同 JavaScript 框架在相同 AI 代理模型下的表现,重点考察构建成本、可维护性及最终用户性能。
测试结果揭示了一个关键趋势:相较于客户端繁重的“单页应用”(SPA)框架,AI 代理在使用以服务器为中心、注重约定和 API 稳定性的框架时,效率显著更高。
测试方法:标准化 AI 构建任务
实验中,Lawson 指示 Claude Code 代理使用 PokéAPI 构建基础宝可梦 Web 应用。测试覆盖 12 种主流技术栈:Angular、Astro、Gracile (with Lit)、Hono (with htmx)、原生 JavaScript (with Vite)、Next.js、Nuxt、Qwik、React Router、TanStack Start、SolidStart 和 SvelteKit。
每个技术栈经过五次独立沙盒运行,以平滑模型性能波动。为确保生成代码的真实性,Lawson 部署自动化测试套件查询浏览器无障碍树,验证交互元素非伪造;同时利用 Google Lighthouse 测量传输大小及运行时性能。若框架提供官方 MCP 服务器或插件,则作为资源提供给代理。
成本与性能分化:服务器端框架胜出
数据显示,最高效与最低效框架间的成本差异巨大。
Hono 搭配 htmx 以平均 2.67 美元的单应用构建成本位居榜首。由于两者均在服务器端运行,消除了客户端与服务端同步的复杂检查,代码量最小化从而降低了输出令牌消耗。
Astro 以 2.76 美元紧随其后。同样采用全服务端模式,Astro 实现了最快的中位数构建与测试时间(8.2 分钟),其应用加载速度(LCP)也最快,仅为 810 毫秒。
Nuxt(2.82 美元)是采用类 SPA 架构中最具成本效益的选项。作为基于 Vue.js 的“有观点”框架,Nuxt 通过内部处理数据传输和路由,减少了样板代码。值得注意的是,Nuxt 消耗的令牌总数最少(385 万),生成代码行数(1,415 行)仅次于 Hono/htmx,但因 Claude 对输入输出令牌定价不同,其总成本略高于前两者。
相比之下,传统框架表现滞后。SvelteKit 应用生成成本为 4.28 美元,代理需频繁查阅文档以适应 Svelte 更新。Angular 则是最昂贵的选择,单次构建成本达 4.97 美元,耗时 17.2 分钟,消耗 976 万个令牌,且在五次尝试中有两次未能完成任务。
在性能方面,Next.js(2,090 毫秒)和 TanStack Start(2,028 毫秒)的内容交付时间比 Astro 多出一倍以上,这归因于它们向客户端发送了大量 JavaScript。所有生成应用在 Lighthouse 无障碍和性能测试中均获满分,但这主要得益于测试应用的简单性。
社区反响:效率并非唯一考量
Lawson 希望此项工作能为 AI 时代的框架选型引入更多严谨性。然而,Hacker News 上的讨论显示,开发者仍重视人为因素。
有开发者表示,出于对现有技能栈的依赖及调试便利性,不愿为新项目转向 htmx 等工具。另一观点则认为,框架差异将随时间缩小,除了重写,利用 AI 现代化现有框架也是可行路径。