返回 文章 学习 CMS 文章

Cloudflare OS:面向智能体、应用和工作的开放平台

了解 Cloudflare OS 如何通过代理工作区、安全治理和应用平台,让非技术人员也能安全地利用 AI 构建应用和自动化工作。

CloudflareAI代理开源平台安全治理
成长分 / 100 79 综合收获、行动、留存与影响

Cloudflare OS:面向智能体、应用和工作的开放平台
为什么值得读了解 Cloudflare 内部如何大规模使用 AI 代理,以及他们从中学到的经验。

学习 Cloudflare OS 如何解决 AI 代理访问内部系统时的安全与治理问题。

关键洞察
  1. Cloudflare OS 由代理工作区、安全与治理框架、个人可修改应用平台三部分组成。
  2. 代理默认无访问权限,通过 Gatekeeper 和类型化绑定安全访问资源,并记录观察日志以控制数据流向。
  3. 应用是动态 Worker,支持客户端和服务器代码,代理可以调用应用的方法,实现自动化。
转成行动

深入阅读

正文与原文对照

原文保真覆盖:全文原文字符:17103

Cloudflare OS:面向智能体、应用和工作的开放平台

每个组织都有其使命,即存在的理由。组织将其使命——连同其术语、流程、系统、标准和工作方式——传递给员工。员工则将这些背景与自身经验相结合,朝着使命努力。

工作可以采取多种形式,从代码到文档和幻灯片,到人际关系,再到现实世界中的成果。

其中一些是直接的:代码要么运行,要么不运行。在过去几年中,智能体一直利用这种反馈循环为开发人员生成“可用”的代码。但我们其他人呢?

将同样的杠杆作用带给组织的其他部分是一个更难的问题。智能体需要理解公司的背景,并能够访问人们用来完成工作的系统。他们需要将这些背景和访问权限转化为推动组织朝着使命前进的工作。

这就是我们创建 Cloudflare OS 的原因。它为每个人提供了一个围绕其公司构建的智能体和工作空间:公司如何运作、它知道什么,以及它依赖的系统。

今年五月,我们让 Cloudflare 的每个人都能使用 Cloudflare OS 的第一个版本。每个职能部门的数千人(其中许多人来自工程部门之外)每天都在使用它来创建文档和幻灯片、自动化重复性任务,以及构建小型应用来可视化数据并帮助他们完成工作。

Cloudflare OS 还为每个人提供了一个由 Cloudflare 团队构建的共享上下文和技能库。它捕获了我们的术语、流程和最佳工作方式,作为智能体可以遵循的指令。当一个人找到更好的做事方法时,其他人也可以使用。

今天,我们开源了一个新版本的 任何组织都可以部署它,将其连接到内部系统,并使其成为自己的系统。

Cloudflare OS

我们从第一个版本中学到了什么

我们今天开源的 Cloudflare OS 基于我们从内部运行第一个版本中学到的经验,我们的首席信息官 Sam Rhea 在他的 博客文章 中介绍了这一历程。

第一个版本侧重于个人通过私有工作空间与智能体协作。应用是静态的,而不是连接到内部系统的实时软件,而且大多数确定性任务仍然需要再次运行智能体技能并消耗更多模型令牌。

协作暴露了一个更根本的挑战。访问 MCP 服务器 告诉我们智能体可以调用哪些工具,但没有告诉我们智能体观察到了哪些底层资源。一旦人们开始共享工作空间、应用和输出,我们就需要确保协作不会暴露某人无权查看的信息。

我们在新的基础上重建了 Cloudflare OS 来解决这些问题。安全必须是平台的一部分,而不是每个构建应用或使用智能体的人都必须正确实现的东西。

结果是一个旨在属于运行它的公司的平台。您可以自定义界面、连接您的工具,并添加捕获您组织工作方式的技能和上下文。

介绍 Cloudflare OS

Cloudflare OS 像许多其他 AI 工具一样,从浏览器中的对话开始。它的不同之处在于,每次对话都基于您的组织策划的上下文和技能。为你的工作区设定一个目标,它就可以利用这些知识,并使用您的组织已经使用的工具和数据来实现目标。

BLOG-3379 2.png

Cloudflare OS 由三个部分组成:

一个代理工作区,基于您的公司策划的上下文和技能,并具有隔离的运行时,代理可以在其中编写和运行代码。一个新的安全与治理框架,用于安全访问内部数据和服务。一个个人可修改应用平台,人们可以构建、共享并持续更改这些应用。

从对话开始的内容可以变成文档、应用或工作流,并持续执行工作。

为您的公司中的每个人提供代理工作区

代理工作区旨在供您的组织中的每个人使用。您可以在浏览器中与之交互,因此您不必是开发人员或知道如何使用终端。

工作区结合了代理会话、持久状态、输出和文件、资源访问以及代理可以编写和运行代码的隔离运行时。

它们预装了您的团队或公司收集的策划上下文和技能。不再需要为每个任务重新发明轮子——如果您的团队中有人找到了做某事的最佳方式,每个人都会受益。人们不再需要在每次开始任务时向模型解释相同的过程、术语和最佳实践。

您可以做的一些事情:

研究和提问

要求工作区使用公司上下文和您提供给它的资源来研究主题。代理可以编写代码来搜索、过滤、连接和分析信息,而不是将整个数据集拉入模型的上下文窗口。

创建文档、幻灯片和电子表格

工作区可以将其研究转化为文档、演示文稿或电子表格,您可以继续编辑。这些输出不必是静态文件。它们可以保持与实时数据的连接,随着其来源的变化而更新,并且仍然可以导出为熟悉的格式或服务,如 Google Drive。

为您的团队创建协作式、连接的应用

当文档或电子表格不够用时,代理可以构建具有自己的界面、逻辑和状态的应用。该应用可以使用连接的公司资源,并支持多人协作。

运行确定性工作流

并非每项工作都需要完整的代理会话。许多工作是已知的步骤序列,其中有一两个地方需要判断。工作区可以将这些工作转变为大多是确定性的工作流,对可预测的步骤使用代码,仅在增加价值的地方使用模型。工作流可以按需运行、按计划运行,或在连接系统中发生事件时运行。

Cloudflare OS 通过 Gatekeepers(更多内容见下文安全部分)为代理和应用提供对记录系统的受治理访问。它还支持您的组织已经使用的现有 Model Context Protocol (MCP) 服务器,通过

.

MCP 服务器门户## 一个新的安全与治理框架,用于安全访问内部数据和服务

当人们开始在工作中尝试使用AI时,他们的首要请求之一往往是获取公司系统的API密钥。这很合理:如果AI无法访问人们工作所用的系统,那么它在工作中就没什么用。

但是,将API密钥交给人员和代理是危险的,并且无法扩展。密钥通常提供广泛、长期的访问权限,难以限制、安全共享和审计。

MCP为代理提供了一种更好的方式来使用这些系统。MCP服务器可以持有凭证,并暴露一组定义好的工具,而不是直接将密钥交给代理。但控制代理可以调用哪些工具只是第一步。仅靠MCP并不能告诉我们代理观察到了哪些底层资源。代理可以跨系统组合信息,将其发送到限制较少的地方,或通过应用程序和输出暴露给可能无权查看原始资源的人员。授权必须考虑数据的下一步去向。

代理从无访问权限开始

Cloudflare Access控制谁可以进入Cloudflare OS。在内部,每个代理和应用一开始都没有任何访问权限。代理可以请求访问特定资源,您可以授予或拒绝。生成的代码会以类型化绑定的形式接收该资源:

const issues = await env.PROJECT.listIssues({
teamId: "ENG",
state: "open",
});

env.PROJECT

是一种能力,代表在特定策略下使用特定资源的权限。凭证与代理及任何生成的代码完全隔离。

服务器代码在禁用全局出站网络的动态 Worker 中运行。客户端代码在浏览器的沙箱框架中运行。除非通过你明确提供的能力,否则两者都无法访问互联网。

守门人管理资源和操作

守门人是一个特定于服务的 Worker,位于 Cloudflare OS 和外部服务之间。它理解服务的 API、其资源以及可对其执行的操作。

让代理访问你的整个 GitHub 账户可能过于宽泛。守门人可以赋予它访问单个仓库的权限,允许它读取问题但不能读取源代码,屏蔽特定字段,应用速率限制,并在合并拉取请求前要求批准。

代理及其应用看到一个小的 TypeScript API。守门人处理 OAuth,持有凭证,执行策略,记录读取内容,并调解任何具有外部可见副作用的事务。

BLOG-3379 3.png

策略跟随代理所见

控制初始读取是不够的。例如,代理读取数据仓库中的敏感表并用它生成实时仪表板。共享仪表板绝不能成为与无法直接访问该表的人共享该表的方式。

Cloudflare OS 记录代理观察到的每个资源。这些观察记录仍然附加到代理及其工作。当其他人尝试打开工作区、与代理交互或查看其产出时,守门人会验证该人对所观察资源的访问权限。

BLOG-3379 4.png

相同的观察日志用于告知策略,以确定代理何时可以发出外部请求。读取敏感数据可以防止代理向某些来源写入数据、邀请新协作者、将工作交给另一个代理或发出出站请求。

使用代理或构建应用的人不必担心犯这些错误。平台现在可以用来处理这个问题。

一个用于构建和共享个人可修改应用的平台

大多数生产力套件提供固定的应用集:文档、电子表格和演示文稿。在 Cloudflare OS 中,每个“文件”都可以是它自己的应用,由代理为一个人、一个项目或一个团队编写。

这些不是需要导出并部署到其他地方的原型。每个都是全栈应用,包含客户端代码、服务器代码、API 和持久状态。应用默认是私有的,但可以像文档一样共享。

每个应用都是一个 Worker

当你要求你的工作区构建一个应用时,代理会编写两个部分:

  • 在浏览器中渲染应用 UI 的客户端代码
  • 存储状态并实现应用行为的服务器代码

服务器按需加载为 动态 Worker,并实例化为

(这两个都是我们为此项目构建的功能。该 facet 为应用提供了自己的 SQLite 数据库,与管理它的 Cloudflare OS 运行时分离。动态 Worker 使用轻量级 V8 隔离,因此每个应用都可以拥有自己的隔离运行时,而无需专门的服务器或容器闲置。

Durable Object FacetBLOG-3379 5.png

浏览器客户端使用 Cloudflare 的开源对象能力远程过程调用(RPC)系统 Cap'n Web 与服务器通信。可以从客户端像调用普通 JavaScript 函数一样调用服务器方法:

const issues = await app.listIssues({
status: "done",
});

特别之处在于,代理也可以调用同样的方法。

因此,如果你能自己构建一个工具来完成某项工作,那么当你不在时,代理可以使用你的工具来完成这项工作。

分享应用,或分享构建方式

当你在 Cloudflare OS 中构建应用时,有两种分享方式:

  • 分享应用本身,让其他人可以使用相同的状态进行实时协作。
  • 分享应用的蓝图,让其他人可以创建自己副本的应用。

BLOG-3379 6.png

从蓝图实例化的应用包含原始应用的代码,但不包含其 SQLite 数据、对话历史、凭据或已连接资源。每个新应用都从独立的状态和资源开始。

这意味着当你与团队分享应用时,他们可以自己使用 AI 修改应用,而无需提交功能请求并分配给你。

使用任何模型,并控制成本

Cloudflare OS 可以与任何模型一起使用。每次推理调用都通过 Cloudflare AI Gateway 运行,让你的组织有一个地方来决定哪些模型可用,以及哪个模型应处理每项工作。

BLOG-3379 7.png

并非每个任务都需要最昂贵的模型。你可能不希望每天早晨使用最昂贵的前沿模型来总结未读邮件。AI Gateway 为你提供了所需的控制,确保昂贵的模型仅用于最困难的工作。

每个请求都归属于发起请求的个人、团队或工作区。管理员可以查看推理支出的去向,设置预算和速率限制,并决定达到限制时会发生什么。

开源,让你可以定制

Cloudflare OS 现已可用,并且是开源的。查看 cloudflare-os GitHub 仓库。你可以将其部署到自己的 Cloudflare 账户中,并使用自己的 Access 策略、AI Gateway 配置、数据和集成。

我们的内部部署反映了 Cloudflare 的系统、术语、政策和工作方式。你的部署应反映你所在组织的情况。

Cloudflare OS 的设计允许你自定义界面、添加内部 Gatekeeper,并构建组织特定的功能,而无需更改核心产品。

我们发布了两个仓库:Cloudflare OS 核心示例部署(基于我们在 Cloudflare 内部的运行方式)。部署仓库在不修补核心的情况下使用核心,为配置、自定义 UI、内部集成、分析和部署管道提供了一个位置。

与合作伙伴共同交付

源代码只是起点。上下文、技能、工作流、内部系统和政策才是让 Cloudflare OS 对你的组织更有用的关键。

Cloudflare 的战略合作伙伴 Presidio 和 Happy Cog 将与你合作,根据你的组织运营方式定制 Cloudflare OS,并在你的员工队伍中推广。

合作伙伴可以帮助你策划共享技能和机构上下文,构建自定义界面,通过 Gatekeeper 和 MCP 服务器门户连接内部系统,并配置安全、模型和成本控制。

您将获得一个属于您自己品牌的 Cloudflare OS,它连接到您的系统,运行在 Cloudflare 上,并根据您团队的实际工作方式进行定制。

开始使用

Cloudflare OS 现已可在 GitHub 上获取。您可以浏览源代码、尝试演示,或使用我们的

.

__入门仓库__在几分钟内将其部署到您自己的 Cloudflare 账户中。我们才刚刚开始。我们正在努力将 Cloudflare OS 作为完全托管的产品引入 Cloudflare 仪表板,添加用于开发工作流的容器,并将工作区集成到 Slack 和其他聊天工具中。

如果您有兴趣与我们的团队交流,我们很乐意与您沟通。请使用 此表单 联系我们!