Cursor Cloud Agent 原理简介

Cursor Cloud Agent 原理简介

作者:程序员罗尼 | 发布:2026-10-10


本地 Agent 有个毛病:它住在你的笔记本上。

你一合盖,它就停工。你开三个任务,风扇先抗议。它能改代码,但能不能跑通测试,全看你本机碰巧装了什么。

Cursor 的 Cloud Agent(以前叫 Background Agent)换了条路:给每个任务单独配一台云端电脑。你关电脑,它还能干。做完后通常以 Draft PR 交接手,你回来审。

这篇文章按这条线讲清楚:它是什么、为什么环境决定成败、一次任务怎么跑、底层怎么拆、Harness 怎么管、隐私怎么防、用它有什么风险。

一、是什么:本地 Agent 的亲戚,不是云端 Chat

Cloud Agent 和本地 Agent 用的是同一套 Agent 基本功——读代码、改文件、跑命令、调工具。

差别在干活的地方。

本地 Agent 继承你的开发环境,像借你家厨房做饭。Cloud Agent 要自己搭厨房:clone 仓库、装依赖、配密钥、连网络。官方文档的大意是:不给它配环境,就像不给工程师配电脑。

维度 本地 Agent Cloud Agent
住哪 你的 IDE / 本机 独立云端 VM(或自托管 Worker)
环境 白嫖你本机 必须重建一遍
并行 抢你的 CPU 按任务独占虚拟机,用完可回收
你离线 停 还能跑
交付 本机改动 常见路径:独立分支 + Draft PR

一句话:

Cloud Agent = 本地那套 Agent 能力 + 隔离的完整开发环境 + 扛得住长时间任务的编排。

它不是「把对话框搬到服务器」。它是「给 AI 配一台能下班也能干活的电脑」。

二、为什么:环境才是产品

模型变强之后,瓶颈经常不在「会不会写」,而在「写完能不能验」。

本地环境你已经配好了,Agent 白嫖。云端没有这份白嫖。缺依赖、缺密钥、出不了网——表面看像模型变笨,根因往往是环境不对。

所以 Cursor 把精力砸在环境上:快照、预热镜像、休眠恢复、密钥脱敏、出网策略。他们自己说,这事越做越像「给 Agent 做企业 IT」。

换个说法:模型是考生,环境是考场。卷子出得再好,不给笔、不给草稿纸,也交不出像样的答卷。

三、怎么跑:一次任务的主要阶段

下面这张图是主路径示意。持久化其实贯穿全程,不是 Loop 结束才存;Draft PR 是常见交接手,不是每次硬保证;回收多在空闲时触发。

图表
  1. 启动:Web、Desktop、CLI、API、Slack、GitHub 评论 @cursor、Linear、手机都能发任务。
  2. 供给:拉一台隔离 VM,clone 你授权的仓库,注入密钥和网络策略。
  3. 执行:在 VM 里改代码、跑测试,必要时操作桌面和浏览器。进度流式回你。
  4. 持久化:对话、截图、视频、日志边跑边存,方便续跑和复盘。
  5. 交接手:常见做法是推独立分支、开 Draft PR。合不合并,取决于你们仓库的审查和分支保护,不是 Cursor 替你点合并。
  6. 回收:空闲就休眠,再按生命周期删掉运行时资源。

权限很死:组织装 Git App,个人再绑自己的账号。Agent 只能碰你本来就能访问的仓库,不会因为开了 Agent 就多拿权限。

四、底层怎么拆:三件东西别绑死

早期他们把本地那套「Worker 抢任务、loop 到结束」硬搬上云,可靠性很差。后来迁到 Temporal 做 durable execution。

Temporal 是啥?你可以把它想成「给长时间任务用的记事本 + 监工」。

Agent 跑几小时很正常。中间模型会抖,机器会换,进程会挂。普通程序一挂,进度就丢。Temporal 把每一步进度记下来:哪步做完了、哪步该重试、换台机器从哪接着干。节点挂了,换人上场,剧本还在。按 Cursor 工程博客的说法,靠这套编排扛住了推理抖动、VM 休眠恢复、跨天甚至跨周的任务。

编排解决的是「别断」。接下来更关键:别把 Agent、机器、会话绑死在一块。先看组件关系,再看一个 Loop 里它们怎么互相喊话。

架构图:几个组件各管什么

图表

读图时抓住四条线就够:

  • 你 ↔ 前端 ↔ 会话:人只跟控制面说话,不直接操作 VM。
  • Temporal ↔ 模型:编排层把上下文送去推理,拿回 tool calls。
  • Temporal ↔ 执行面:真正改文件、跑命令发生在 VM / Worker,不在编排进程里。
  • 执行面 → Git:交接手时推分支、开 Draft PR;会话层只负责把过程播给你看。

时序图:一个 Loop 内怎么转一圈

图表

一圈的本质很简单:编排问模型 → 模型要工具 → 执行面干活 → 结果写进会话 → 再问模型。失败就 rewind 后重来;做完就走 Git 交接手。

Loop 不在 VM 里。
Agent 循环的编排活在 Temporal;推理则是去调模型服务。VM 可以休眠、换机、换成预热机。Agent 和机器不用绑一辈子。

Machine 是完整工位。
仓库(可多仓)、依赖、Secrets、受限出网、终端、浏览器、MCP、Hooks。

隔离这块,官方安全文档里的说法比较硬,拆开讲:

  • 一个 Agent,一台 VM:这里的 Agent 指一次云端任务运行,VM 指虚拟机。规则是:每开一次 Cloud Agent,就单独起一台虚拟机,不跟别人的任务拼车。不是很多人挤同一台机器、靠进程沙箱拉帘子隔开;你的代码、环境变量、磁盘,隔壁任务和其他用户都看不见。像酒店一客一房,退房再回收,不是通铺。
  • Firecracker microVM:上面那条是规则,这条是实现技术。Firecracker 是 Amazon 给 Serverless 用的轻量虚拟机。比普通虚拟机起得快、吃得少,但仍是真虚拟机边界,不是「同一个内核里开个容器」那种软隔离。
  • 和 Cursor 其他生产服务分账号:跑 Agent 的那批机器,放在单独的 AWS 账号里,不跟 Cursor 网站、账号系统、计费那套生产服务挤在同一个云账号。设计目标是缩小爆炸半径:一边出事,另一边默认够不着。像公司把「写代码的工位」和「前台收银」分到两栋楼,钥匙也不通用。

三层加起来:任务与任务隔开,用户与用户隔开,Agent 工位和 Cursor 自家其他系统也隔开。

Conversation 单独流。
对话不跟 VM 绑在一起,而是单独存、单独往 Web / Desktop 推。这样 Loop 可以重试、机器可以换,界面却还得跟得上真实进度。

问题来了:Agent 打字是流式往外吐的。吐到一半,这一步失败,Temporal 安排重试——屏幕上已经留下半截旧字。不管的话,旧半截和新答案会叠在一起,看着像完成了,其实对不上。

所以客户端要会 rewind(倒带):发现「这一步重来了」,先撤回那半截旧输出,再接上重试后的新内容。像录像播错了倒回去重播,而不是错着接着播。

这三件拆开了,才有休眠续跑、并行、子 Agent、跨天任务。绑在一起,机器一抖,整条链都断。

五、Harness:缰绳松一点,还是勒紧一点

前面说的是 VM、Temporal、会话怎么拆。拆完之后还有一个问题:谁来管 Agent 怎么干活?

答案是 Harness(马具)。你可以把它想成套在 Agent 外面的缰绳和鞍具:哪些步骤写死在程序里,哪些交给模型自己判断,哪些工具能用,卡住了要不要停下来问人——都在这层定。

没有 Harness,模型就像没鞍的马,力气大,方向随机。Harness 太死,又变成遥控脚本,模型的判断用不上。Cursor 这一年多,主要就在调这根缰绳:松一点,还是勒紧一点。

早期:勒得很紧。
那时候不太信模型。Harness 会在每步后面复查,写完强制 commit、强制 push。多仓库怎么切分支、CI 挂了怎么捞日志,很多都写死在脚手架里。稳,但笨:模型变强了,这些硬逻辑反而变成绊脚石。

现在:能放的交给 Agent。
多仓协作不再靠一堆写死的分支流程,而是告诉它仓库长什么样,再给它开分支、开 PR 的工具,让它自己决定怎么干。CI 修失败也类似:以前 Harness 负责把失败日志塞进 VM;现在把 GitHub CLI 给它,大段输出落到文件里让它自己搜。通知变简单了,决策权还给 Agent。

还有放不掉的。
不是所有事都能撒手。比如 Computer Use——要操作桌面和浏览器——模型还没稳到「自己看着办」。所以 Harness 仍保留专用子 Agent:单独的模型路由、提示词、录屏;VNC 和 Chrome 属于环境,父子 Agent 共用。Agent 决定什么时候调用,脚手架保证调用时不翻车。

云端为什么比本地更松。
本地 Agent 一卡权限,你盯着屏幕,马上点允许或拒绝。云端你可能几小时后才回来看。Harness 要是动不动停下来等人,任务就干耗在那。所以云端提示更鼓励它自己往前推:能测就测,能改就改,最后常以 Draft PR 交人审。松的是执行过程;出网、密钥、合并闸门,要靠下一节的边界来勒。

Harness 不是固定剧本,而是一条持续挪动的边界:模型够用的地方往外放,还不稳的地方留脚手架,无人值守的地方用策略兜底。

六、隐私怎么防:代码进云了,靠什么兜底

Cloud Agent 要干活,代码和会话必然进云。这不是「零存储」,而是「有存储、有边界」。隔离结构(一任务一 VM、Firecracker、分账号)第四节讲过了,这里只补隐私相关闸门——依据 Cursor 官方安全说明:

1. 不扩大权限。
Agent 只能碰发起人本来就能访问的仓库。组织装 Git App,个人再绑自己的账号。开 Agent 不会多拿权限。

2. 加密与生命周期。
传输用 TLS,落盘 AES-256,会话按 Agent 分钥。运行中的工作区空闲会回收;快照默认闲置约 90 天删除;对话可按需删,企业还能设留存策略。按官方安全说明,Cursor 员工不应访问这些 VM 里的代码,相关访问尝试会被监控。

3. 模型侧 Privacy Mode。
Cloud Agent 跑在 Privacy Mode 下:Cursor 不用这些代码和对话训练。多数模型路径还有零留存协议。注意:Cloud Agent 需要在云端保存运行期代码和环境,所以不走旧版 Legacy Privacy Mode 那套假设。

4. 防外泄,不只靠「相信模型」。
Cloud Agent 会自动跑终端命令,比前台 Agent 更自主。仓库里若被人埋了恶意指令(prompt injection),理论上可能诱导它把代码往外送。官方给出的防线包括:

  • 出网 allowlist,可收紧到「只能访问你批准的域名」(默认是开公网的,要自己收)
  • Runtime Secrets:密钥进环境变量,但从 transcript、工具输出、commit 里抠掉,不进模型
  • 敏感路径写进 .cursorignore
  • 常见交接手是 Draft PR;合不合并看你们自己的审查规则
  • Agent 提交可用 HSM 签名并显示 Verified,方便审计和开启「必须签名提交」的分支保护

企业还能上 CMEK/BYOK、组织级锁出网。代码执行不能出内网时,可以走 Self-hosted:推理和编排仍在 Cursor,改文件、跑命令发生在你内网 Worker 上;Worker 只出站 HTTPS 连回去,不用开入站端口。

一句话:隐私不是「云上没数据」,而是「数据进得去、权限扩不开、外网可收紧、合并要人点头」。

七、用 Cloud Agent 有什么风险

官方自己也说:Cloud Agent 和本地 Agent 不是谁更安全,而是风险画像不同。第六节是「对方提供了哪些边界」;这一节是「边界之外,你还得自己扛什么」。

代码进第三方云。
整仓会被 clone 进隔离 VM,快照还会短期留着加速启动。信不信 Cursor 的隔离、加密和删除策略,是使用前提。信不过,走 Self-hosted,或干脆别上敏感仓。

无人值守 = 攻击面更大。
它能自己跑命令、自己迭代测试。好处是闭环验证;坏处是 prompt injection 时,你不在旁边喊停。默认开公网出站,不配 allowlist,就等于后门开着。

密钥可能被读到。
注入进 VM 的环境变量,Agent 运行时要用。别指望「看不见就不存在」——靠 Runtime Secrets 脱敏、别把密钥写进仓库、能用 OIDC 短时凭证就别用长寿命 key。

自主过头会干蠢事。
改错模块、乱依赖、测一半推分支——都可能发生。Draft PR 是交接手,不是免检通行证。合入前还是得按你们的流程审。

成本与留存。
按模型 API 计价,上下文开大就更贵。对话默认长期可回看;不需要的跑完记得删,企业记得配留存策略。

怎么用更稳一点:

  • 先从非核心仓练手,敏感仓上 blocklist 或 Protected Git Scopes
  • 出网收紧到 allowlist,Secrets 标 Runtime
  • 合入前走你们自己的人审;需要的话再挂 Bugbot / Security Agent
  • 合规要求严的,优先 Self-hosted

工具能替你写代码,替不了你担责。Cloud Agent 把「干活」搬进云,把「拍板」仍留给你。

八、记住这几句就够

  1. 它是什么: 不是云端 Chat,是带完整工位的云端 Agent。
  2. 为什么能成: 环境才是产品;没有可验证的环境,模型再强也交不出答卷。
  3. 怎么跑: 启动 → 供给 → 执行 → 边跑边存 → 常见以 Draft PR 交接手 → 空闲回收。
  4. 底层怎么拆: Temporal 管编排别断线;Loop、机器、会话别绑死;客户端会 rewind。
  5. Harness 怎么管: 能放给模型的放出去,不稳的留脚手架,云端执行松、边界要勒。
  6. 隐私怎么防: 权限不扩大、外网可收紧、密钥可脱敏;不行就 Self-hosted。
  7. 用它有什么风险: 风险换了形态,没有消失——哪些仓能进云,得你先想清楚。

你不是在养一个「永远在线的聊天框」。你是在给 AI 配工位、配流程——同时把门锁、监控和签字笔留在自己手里。


如果你也在试 Cloud Agent,评论区聊聊你卡在环境上,还是卡在安全和审查上。

觉得有用,点个在看,转给那个还在合盖就丢任务的同事。

END

END