Cloudflare OS:面向 AI Agent 和协作应用的开源平台
介绍 Cloudflare OS —— 一个结合了协作工作空间、隔离沙箱运行环境和 Gatekeeper 的企业级开源 AI Agent 平台。
如果你们公司的每个人都能安全地使用 AI Agent 来自动执行任务、分析数据并构建自定义 Web 应用程序,会怎么样?
通常情况下,要让 AI Agent 访问公司内部系统,我们需要提供 API 密钥。然而,API 密钥的权限往往过宽、有效期过长,直接暴露它们非常危险。如果 Agent 出现异常或接收到恶意的提示词注入(Prompt Injection),安全防线可能在几秒钟内崩溃。
为了解决这一问题,Cloudflare 推出了 Cloudflare OS —— 一个开源平台,旨在让企业能够安全地部署 AI Agent、运行确定性工作流,并根据其业务逻辑构建协作应用。
轻松理解 Cloudflare OS (ELI5)#
把你们公司想象成一个高度安保的“机密图书馆”。
通常,如果 AI Agent 想要利用禁书区里的资料写一份报告,你必须给它一把图书馆的 “万能钥匙”(即 API 密钥)。一旦 Agent 拿到了钥匙,它就能打开任何房间、阅读任何书籍,甚至有可能把敏感信息复制并泄露给外界。
Cloudflare OS 的工作方式完全不同。它不给 Agent 发放万能钥匙,而是引入了两个机制:
- 沙箱阅览室(隔离运行环境): Agent 会被带入一个安全的封闭房间。它可以在里面看书并完成工作,但不能离开房间,也不能与外界进行任何直接通信。
- 图书管理员(Gatekeeper): 门口站着一位“图书管理员”。当 Agent 需要阅读某本书时,它必须向管理员提出申请。管理员只会取来特定的那一本书,遮盖住其中的极度敏感页面,并详细记录 Agent 读过了什么。如果 Agent 试图把敏感信息写在明信片上邮寄出去,管理员会立即拦截。
通过这种方式,我们可以极其安全地让 Agent 编写工具、读取数据库并运行代码。
核心架构#
Cloudflare OS 构建在三大支柱之上:
graph TD
User[用户浏览器] -->|Capn Web RPC| Workspace[Agent 工作空间]
Workspace -->|隔离的 V8 运行环境| Runner[Dynamic Worker / 沙箱]
Runner -->|TypeScript API 绑定| Gatekeeper[Gatekeeper Worker]
Gatekeeper -->|OAuth 与 审计| ExternalService[(内部数据库 / Github / API 等)]
style Gatekeeper fill:#ff5f07,stroke:#333,stroke-width:2px
style Runner fill:#ff9910,stroke:#333,stroke-width:2px
1. Agent 工作空间 (Agent Workspace)#
工作空间是浏览器中的主要用户界面。它融合了:
- 活跃的对话会话。
- 用于管理输入、输出及生成文件的文件系统。
- 基于 V8 Isolate 的独立代码执行环境。这使 Agent 能够通过自行编写并运行代码来分析数据,而无需将庞大的数据集直接加载到大语言模型(LLM)的上下文窗口中。
2. Gatekeeper:安全的访问控制#
Cloudflare OS 使用 Gatekeeper(门禁节点),而不是直接将 API 凭证交到 Agent 手中。
- Gatekeeper 是介于 Cloudflare OS 和外部 API(如 GitHub 或 PostgreSQL 数据库)之间的轻量级 Worker。
- 它为沙箱环境中的代码提供了一套受限的 TypeScript API(例如
env.PROJECT.listIssues())。 - API 凭证永远不会离开 Gatekeeper,这极大地便利了审计日志记录、敏感字段脱敏以及请求速率限制的实施。
3. 个人化的可定制应用#
在 Cloudflare OS 中,用户可以让 Agent 构建完整的 Web 应用程序。
- 每个应用都作为与 Durable Object Facet 关联的 Dynamic Worker 运行,并拥有专属的隔离 SQLite 数据库用于状态管理。
- 浏览器前端与服务器后端之间的通信使用的是 Cap’n Web(一款开源的、基于对象能力的安全 RPC 协议)。
- 构建的应用可以直接与同事共享,也可以打包成 蓝图(blueprints) 派发(仅复制结构化代码,不包含任何个人数据或 API 凭证)。
观察日志与数据溯源 (Observation Logs)#
Cloudflare OS 最强大的特性之一是能够追踪 “Agent 曾经看过什么”。
当 Agent 通过 Gatekeeper 读取数据时,该资源将被追加到其 观察日志(Observation Log) 中。如果你创建了一个展示此数据的仪表盘并分享给同事,Cloudflare OS 会检查观察日志,自动核实该同事是否拥有源数据的访问权限。如果没有,访问将被拒绝。
同样,如果观察日志中包含敏感数据,平台的策略引擎会自动禁用其向外发送的网络请求,以防止数据泄漏。
如何开始#
Cloudflare OS 完全开源,仅需几分钟即可部署到你的 Cloudflare 账户中。
1. 克隆 Starter 仓库#
git clone https://github.com/cloudflare/cloudflare-os-starter.git
cd cloudflare-os-starterbash2. 安装依赖项#
bun installbash3. 部署到 Cloudflare#
在 wrangler.toml 中配置你的 Cloudflare Account ID,然后运行部署命令:
bun run deploybash[!TIP] 请务必配置 Cloudflare AI Gateway 来路由大模型推理请求。这不仅方便你监控 API 成本、设定 Token 限制,还可以支持在不同的模型(如 Llama 3、Claude、GPT-4)之间无缝切换。