Vibe Coding
Vibe Coding 平台让终端用户通过自然语言创建、修改并发布应用。平台负责理解需求、生成代码、运行验证和持续迭代,最终交付可长期访问的应用。Vercel v0、Lovable 等产品都属于这一形态。
EdgeOne Makers 将生产、部署、合规检测、访问及多租户隔离等核心能力整合于一体,帮助平台方无需自建和维护底层基础设施,即可打通「对话生成 → 实时预览 → 应用上线 → 多租户隔离」的完整 Vibe Coding 链路。
方案价值
价值 | 具体表现 |
一体化生产环境 | Agent 编排、模型调用、会话状态与沙箱工具访问在同一运行时内闭环,减少跨服务拼装与运维工作。 |
隔离与生命周期兼顾 | 工作区按会话隔离,同时通过外部持久化保留项目代码,兼顾运行安全与持续开发体验。 |
云边一体交付 | 统一承接静态、动态、全栈与 Agent 应用,并根据应用形态将负载运行在边缘或云端。 |
项目自动审核 | 提供项目级内容安全检测与风险处置能力,并在风险变化后通过事件机制联动平台方。 |
整体架构:1 个 Vibe Coding 平台 + N 个项目应用
生产端 Coding Agent 通过调用大模型,使用沙箱工具生成代码,部署端将生成的应用发布至 Makers 云边一体运行环境,审核端对线上页面、部署产物及域名进行多层合规检测,访问端依托边缘接入同步实现低延迟访问与安全防护,多租户隔离让每个 AI 生成的项目都独立部署和运行。

核心能力
生产端:Coding Agent
Agent 运行时 负责大模型调用与业务决策,并驱动 Sandbox 工作区完成文件读写、依赖安装和代码执行,生成可访问的预览链接,供用户持续对话、反馈与迭代。生产过程同时支持多模型选择、对话存储全链路可观测,确保项目可持续开发、恢复与追踪。

Agent 运行时
承载 LLM 调用、Agent 循环编排与业务逻辑,支持长时任务、按会话路由和自动扩缩容。
agents/ 目录下的每个公开文件对应一个 Agent 端点,平台负责路由并注入运行时上下文:// agents/chat.tsexport async function onRequest(context: any) {context.store // 对话存储context.tools // 沙箱工具,LLM 视角context.sandbox // 沙箱原子 API,开发者视角}
特性 | 说明 |
长时任务 | 支撑 Agent 多轮工具调用、依赖安装和构建 |
会话路由 | conversation_id 绑定对话上下文与沙箱工作区,多轮请求复用同一项目 |
框架可替换 | 可接入 DeepAgents、LangGraph、CrewAI、OpenAI Agents SDK、Claude Agent SDK 等框架 |
职责分离 | agents/ 承载 AI 逻辑;cloud-functions/ 承载普通业务 API |
接入模型
方式 | 配置 | 适用场景 |
内置模型 | 配置 Makers Models API Key 和网关地址,使用平台提供的模型额度 | 无需外部模型供应商账号,适合快速验证 |
自带 API Key | 绑定自有模型供应商 | 需要特定模型,或希望自主控制成本与配额 |
沙箱工具
能力 | 说明 |
会话隔离 | 每个会话使用独立工作区,异常不应影响其他租户 |
按需创建 | 首次需要执行时再创建,并在超时后自动回收 |
命令与文件操作 | 安装依赖、构建、启动服务以及读写项目文件 |
端口预览 | 将沙箱内服务映射为临时公网地址 |
持久化 | 通过 Blob 将生成的代码持久化,确保跨对话、跨实例保留 |
实例控制 | 查询状态、延长超时、获取地址或主动销毁实例 |
实时预览
预览是 Vibe Coding 体验的核心——用户需要在生成代码后看到效果,预览地址由沙箱端口映射而来,随沙箱回收失效。

沙箱持久化
沙箱是会随超时回收的临时工作区。要支持用户跨时段继续开发,必须持久化项目文件。因此在同一会话需要跨沙箱实例继续时:调用
persist() 保存快照,实例重建后调用 restore() 恢复。
保存工作区代码
在每轮代码修改完成后调用
persist():try {const persist = await context.sandbox.persist();} catch (error) {// 保存失败不影响当前沙箱继续工作,可记录日志并稍后重试console.warn('Failed to save workspace:', error);}
persist() 无需传入 conversation_id,当前沙箱已与会话绑定,每次调用都会更新该会话的最新快照。建议在以下时机调用:每轮代码修改完成后;
长任务执行期间定时保存。
恢复工作区代码
新沙箱创建后,Agent 开始读写项目文件前调用
restore():const result = await context.sandbox.restore();
注意:如果
restore() 返回 failed,本轮不要再调用 persist(),否则可能用不完整的工作区覆盖上一次可用快照。部署端:云边一体化
面向 Vibe Coding 平台,Makers 为 AI 生成的多形态应用提供可扩展、可交付的云边一体化生产运行环境。

应用形态 | 典型技术 | 运行与交付方式 |
前端应用 | React、Vue、SSG、SPA | 静态资源托管,通过边缘网络缓存与加速 |
全栈框架 | Next.js、Nuxt、SSR、ISR、PPR | 静态内容通过静态资源托管,动态逻辑由云函数承载 |
后端能力 | Functions、API、定时任务 | 运行于 Cloud Runtime,按请求弹性伸缩 |
Agent 应用 | Claude、OpenAI、LangGraph、CrewAI | 运行于 Agent Runtime,并使用模型、沙箱、存储等平台能力 |
项目自动审核
Makers 为 Vibe Coding 平台提供项目级内容安全检测与风险处置能力,在作品公开前完成审核,并在风险变化后通过事件机制联动平台。

Makers 负责平台侧安全检测与风险处置,平台方负责作品展示、业务运营以及审核状态与自身业务状态的映射。
协作能力 | 作用 |
统一 SDK 接入 | 将部署、状态查询和处置申请接入平台现有发布流程 |
标准 Webhook 协同 | 主动同步审核结果与风险变化,避免平台持续轮询 |
授权范围内处置 | 按项目执行复核、恢复、封禁与删除,降低误操作风险 |
访问端:边缘接入与安全
项目上线后,请求通过 EdgeOne 全球边缘节点(3200+)就近接入,使访问加速与安全防护同步生效。

多租户隔离:一租户多项目

开源项目示例
vibe-coding-agent 是 Makers 基于 Claude Agent SDK + TypeScript 实现的代码生成模板,您可以基于它快速搭建自己的 Vibe Coding 平台。
开箱能力
能力 | 当前实现 |
Agent 运行时 | 使用 Claude Agent SDK 任务编排,工具调用 |
模型调用 | 基于 Makers Models 可切换多个大模型调用 |
代码沙箱与实时预览 | LLM 生成的代码在隔离环境中安全运行,沙箱可获取预览地址,代码生成后即可看到运行效果 |
工作区持久化 | 从源码快照恢复工作区、重新安装依赖并重启预览 |
文件浏览 | /file 路由按需读取工作区文本文件,前端展示文件树和源码 |
源码导出 | 打包工作区并下载源码归档,配置 GitHub OAuth 后可推送到用户仓库 |
快速开始
npm install -g edgeoneedgeone makers create --template vibe-coding-agentcd vibe-coding-agent && edgeone makers dev# runtime: http://localhost:8088# devtools: http://localhost:8088/agent-metrics