跳转到内容
搜索文档

企业级 AI Vibe Coding 平台

最后更新 查看 MarkdownAgent 设置

介绍

氛围编码(Vibe coding)是一种软件开发实践,它使用大语言模型(LLMs)从自然语言描述中生成应用程序。企业级 AI vibe coding 平台是一个内部工具,员工可以在其中用自然语言描述他们想要构建的内容,平台将生成可运行的代码、显示实时预览并进行发布,所有这些都在组织控制的环境内进行。

这使得所有员工无论以前的软件开发经验如何,都能构建内部工具、仪表板和业务应用程序。在缺乏治理的情况下,每个由 AI 构建的应用程序都会面临不受控制的数据泄露、未经批准的 LLM 提供商使用以及安全态势未知的代码等风险。

本参考架构扩展了 AI Vibe Coding 平台,增加了针对身份、数据保护、成本归属、可发现性和审计日志记录的企业级控制。基础架构构建在 Cloudflare 的开发人员平台之上:使用 AI Gateway 进行 LLM 治理和防护,使用 Sandbox 进行代码执行,以及使用 Workers for Platforms 进行部署和托管。本文档重点介绍构建在这些基元之上的企业层。

安全模型

企业级 vibe coding 平台必须假设 AI 生成的代码是不可信的。安全模型在平台级别强制执行保护,而不是在代码级别。

  • 不可信代码执行:AI 生成的代码可能包含 bug、漏洞或意外行为。沙箱和容器将其与生产系统隔离。
  • 通过提示词泄露数据:员工可能会无意中在提示词中包含敏感数据。AI Gateway 和 DLP 会在提示词到达 LLM 提供商之前对其进行检查和阻止。
  • 提示词注入:恶意提示词可能企图操纵 AI 以生成有害代码。所有交互都会被记录并可供审计。
  • 凭据泄露:AI 生成的代码绝不会处理真正的机密。出站处理器或出站 worker 会在平台层注入凭据。
  • 权限提升:配置错误的连接字符串或网络访问可能会提供对更高级别资源的未授权访问。绑定(binding)模型强制执行基于允许列表的连接。
  • 未经授权的访问:在缺乏身份控制的情况下,部署的应用程序可能被组织内的任何人访问。Cloudflare Access 在平台和部署的应用程序上强制执行基于角色的策略。

核心架构

企业级 vibe coding 平台由三个系统组成,可以根据需要对现有的企业控制进行分层或扩展:

  • 开发平面:员工在此通过 AI 创建应用程序并进行迭代,可以受控访问 LLMs 和企业数据。
  • 部署流水线:将应用程序从开发阶段推向生产阶段的审批和验证工作流,包括安全检查、依赖项扫描以及在需要时进行的人工介入(human-in-the-loop)审查。
  • 生产平面:经批准的应用程序在隔离的、多租户环境中运行,具备完整的可见性、出口控制和访问策略。

可见性、可发现性和成本控制应当嵌入这三个组件中。资源标记(Resource tagging)在整个生命周期中提供了可见性,使平台管理员能够在一个地方跟踪和管理所有应用程序、用户和资源。

企业级 AI Vibe Coding 平台核心架构

开发平面

开发平面架构

Cloudflare Access 保护平台的入口点,无论那是基于 Web 的用户界面,还是通过 CLI 对编码测试环境进行经身份验证的访问。Access 通过 SAML 和 OIDC 与现有的身份提供商(Okta, Azure AD, Google Workspace)集成,允许组织使用其现有的 SSO。

平台将元数据(如用户配置文件、会话、成本标签、部门和团队权限)存储在数据存储中,例如用于结构化查询的 D1、用于快速键值查找的 KV 或用于对象存储的 R2。前端或智能体流查询此元数据以确定权限并跟踪使用情况。

开发流支持两条路径。在基于浏览器的环境中,员工通过 Web UI 进行交互,该 UI 在服务器端编排智能体。根据工作负载的不同, AI 生成的代码在两种隔离模型之一中执行。沙箱容器提供带有预览 URL 的完整开发环境,适合需要带有依赖项的完整运行环境的应用程序。Dynamic Workers 提供轻量级、即时的代码评估,而无需容器开销,适合对较小的脚本和函数进行快速迭代。开发服务可以独立使用任一选项,也可以将它们结合使用,使用 Dynamic Workers 进行快速代码验证,并使用容器进行完整的应用程序预览。

借助本地智能体测试环境,开发人员使用集成到其现有 IDE 和终端工作流中的、基于 CLI 的工具(如 Cursor, Windsurf 或 OpenCode)。代码在开发人员的机器上进行本地迭代。准备就绪后,开发人员将其推送到 Cloudflare,在此处它会在沙箱容器或 Dynamic Worker 中执行以进行预览和暂存。MCP server portalsAI Gateway 可以集成到本地开发流中,以便甚至在代码到达平台之前就提供对工具使用情况、提示词日志记录和成本跟踪的可见性。

所有 LLM 交互都通过 AI Gateway 进行跟踪和管理,它提供了提供商路由、成本控制、提示词日志记录以及 DLP 检查成本跟踪将使用情况归于项目、团队、部门和个人用户。

从开发环境的所有出站都在平台层进行控制。对于容器,出站处理器会拦截 HTTP 流量。对于 Dynamic Workers,出口控制提供了等效的能力。下游连接所需的机密存储在 Secrets Store 中,并由出站处理器在平台层注入。沙箱环境绝不能直接访问凭据。通过此出站处理器,平台管理员可以允许或拒绝特定的源站目的地、重路由流量、对出站流量应用自定义策略,或者通过绑定连接到其他 Cloudflare 资源。为了访问本地或内部系统,Workers VPC 在不将这些系统暴露给互联网的情况下建立私有连接。

额外的安全控制可以通过打包版本锁定和内置在容器镜像中的组织控制分层到开发容器中。如果测试环境使用 MCP 服务器,MCP 门户会提供工具调用的审计日志记录、工具访问的权限管理,以及对智能体使用哪些工具以及它们访问什么数据的可见性。

部署流水线

部署流水线架构

在开发平面中生成的资产可以存储在现有的企业代码仓库中,也可以存储在 Artifacts 中,这是 Cloudflare 专为智能体构建的、与 git 兼容的存储。团队可以将氛围编码后的输出嵌入现有的代码审查流程中,以确保在将应用程序部署到生产环境之前,已应用最佳实践和开发控制。

该平台与现有的企业软件开发工作流相集成。Git 仓库、机密存储和 CI/CD 流水线都可以与 Cloudflare 原生服务配合使用。

生产平面

生产平面架构

部署的应用程序托管在 Workers for Platforms 上。Cloudflare Access 为整个自定义域名验证并保护员工或第三方的访问,通过分发 worker来控制对已部署应用程序的访问。可以在分发 worker 级别应用细粒度的访问控制,以确保用户访问与基于角色的访问控制和分配的权限相匹配。

Workers for Platforms 托管氛围编码后的应用程序,并由出站 worker控制所有出口流量。机密存储在 Secrets Store 中并由出站 worker 注入,确保用户 worker 绝不直接处理凭据。出站 worker 还会控制下游访问:绑定、外部 APIs、用于现有数据库的 Hyperdrive,或者带有 Workers VPCCloudflare Tunnel,以建立与本地或现有内部系统的连接。

每个用户 worker 都可以访问一组绑定,以便为每个氛围编码的应用提供存储和服务。为了实现彻底的按租户隔离,平台会为每个应用程序创建并附加一个唯一的 D1 数据库、KV 命名空间或 R2 存储桶。每个用户 worker 只能访问显式附加到它的绑定。

分发 worker 可以针对每次调用设置自定义限制,限制最大处理时间和子请求数,以防止滥用或无意循环消耗过多资源。平台可以根据用户级别、团队或应用程序分类分配不同的限制。如果超出了限制,用户 worker 会抛出异常,分发 worker 可以对其进行处理并记录日志。

可见性在两个层面上运行。在平台层,在分发 worker 上启用的 Workers Trace Events Logpush 涵盖了该命名空间中的所有用户 worker。GraphQL Analytics APIdispatchNamespaceName 查询以获取整个平台的聚合指标。在应用层,Tail Workers 可以附加到单个用户 worker 以进行细粒度日志记录。Workers Analytics Engine 允许平台按脚本标签写入和查询事件,将每个应用的用量指标呈现给单个用户。

随着氛围编码生成的应用程序数量不断增加,平台元数据存储会充当应用程序注册表,呈现每次部署的所有者、团队、描述、连接的数据源和使用指标。与开发平面一样,此元数据可以存储在任何首选的数据存储中(如 D1KVR2)。这允许员工在重复开发之前先寻找现有的工具。应用到基础 Cloudflare 资源的资源标记(Resource tagging)将每个用户 worker 与其所有者和成本归属关联起来。

这篇文档对您有帮助吗?