云端环境设置与智能体窗口中的云端子智能体

此版本更新了 Cursor 桌面应用智能体窗口中的云端智能体功能。

云端环境设置

现在,Cursor 可以帮助您在不到 10 分钟内完成云端开发环境的设置。您可以在共享终端会话中查看智能体的进度,了解它如何处理安装依赖等设置任务。

您的环境会被保存为可复用的快照,因此后续云端智能体启动更快,还能通过运行您的软件来测试更改。它可以在较长周期内持续迭代,直到输出得到验证。提交到 .cursor/environment.json 后,这将让整个团队受益。

云端环境设置

通过 /in-cloud 使用云端子智能体

使用 /in-cloud 可启动一个在独立 VM 中运行的云端子智能体,处理您接下来提交的任务。它会在自己的 VM 和分支上运行,因此您的本地工作区能保持整洁且响应迅速。

这对隔离长时间运行或并行执行的工作尤其有用,例如修复 CI、排查问题,或在您继续本地工作的同时探索代码库。

您也可以点击快捷操作按钮,或使用 /babysit,让云端子智能体帮您照看 PR。云端智能体会在远程持续迭代,在不占用本地会话的情况下,为您的 PR 做好合并准备。

云端子智能体可以在后台运行而不中断父智能体,后者则可继续在本地或云端运行。

本地与云端之间切换

更可靠地在本地电脑与云端之间转移智能体会话。您可以将机器上长时间运行的任务卸载到云端,并按需并行运行任意数量的云端智能体。您也可以将云端智能体切回本地,亲自测试更改。

本地与云端之间切换

Bugbot 现已快了 3 倍以上、便宜了 22%,每次审查还能多发现 10% 的缺陷

Bugbot 的平均审查时间现已缩短至约 90 秒,之前约为 5 分钟。Bugbot 平均每次审查发现的缺陷也增加了 10%——从 0.56 提升到 0.62——同时每次运行的成本降低了约 22%。

Bugbot 现已快了 3 倍以上、便宜了 22%,每次审查还能多发现 10% 的缺陷。Bugbot 现已快了 3 倍以上、便宜了 22%,每次审查还能多发现 10% 的缺陷。

这些性能提升得益于我们在训练 Composer 2.5 方面取得的进展,Bugbot 现已由其驱动。Bugbot 会遵循模型屏蔽列表,速度和性能也会因您的配置而异。

在推送前运行 Bugbot

现在,您可以在推送代码前使用 /review 运行 BugbotSecurity 审查/review 会提示您选择要运行哪些智能体,您也可以直接使用 /review-bugbot/review-security

/review 还会与 GitHub 和 GitLab 上的 Bugbot 同步。如果您运行了 /review,然后提交一个包含相同 diff 的 PR,Bugbot 会识别出来,跳过审查,并留下一条评论,说明它已经审查过该 diff。

已支持 Cursor 3.7+ 和 cursor.com/agents,CLI 支持即将推出。

仅审查您的 PR 中的新内容

您现在可以将 Bugbot 配置为仅审查自上次审查以来的新内容,使反馈聚焦于您的最新更新。

更多信息请参阅我们的文档

设计模式优化

在 Cursor 浏览器的设计模式下,您可以通过点击、绘制或用语音描述更改,帮助智能体更新您的 UI。

多选元素

在浏览器中同时点击两个或更多元素。Cursor 会看到您选中的元素、它们的代码、周围的布局,以及它们在页面上的视觉关系。

您可以让智能体将其中一个调整得与另一个一致、移除重复内容,或一次性调整一组组件。

语音输入

通过设计模式浮层口述修改内容。即使智能体正在运行,麦克风也始终可用,因此您无需等待上一项完成,就能用语音将下一项修改加入队列。

Cursor SDK 的自定义存储、自定义工具和 Auto-review

我们在 TypeScriptPython SDK 中推出了一批新功能。您现在可以选择以何种方式持久化智能体和运行元数据,将您自己的函数作为工具提供给智能体,通过 Auto-review 处理本地工具调用,并将子智能体嵌套到任意深度。此次发布还带来了一系列可靠性、性能和平台修复,让本地和云端 SDK 智能体更容易在生产脚本、CI 和自定义集成中运行。

自定义工具

您现在可以通过 local.customTools 传入函数定义,把自己的工具交给本地智能体使用;既可以在 Agent.create() 上设置,也可以针对每次 send() 单独设置。SDK 会通过一个名为 custom-user-tools 的内置 MCP 服务器,将这些工具提供给智能体,因此模型会通过与其他任何 MCP 工具相同的路径和权限门控来调用您的代码。

在此之前,要开放自定义能力,您需要自行搭建 stdio 或远程 HTTP MCP 服务器,并将其接入智能体。现在,只需一个函数定义就够了。自定义工具也会对父智能体的每个子智能体可见,因此工具定义一次,整个运行过程中都能使用。

Auto-review

默认情况下,本地 SDK 智能体会直接运行工具调用而不请求批准,因为在无头运行中没有人工参与。请将 local.autoReview 设置为改用 auto-review 处理这些调用。这样不会完全绕过审查,而是由分类器决定哪些调用自动运行,哪些需要暂缓。

您可以在 permissions.json 中使用自然语言指令来引导这个分类器。autoRun.allow_instructions 字段用于描述更倾向于允许的调用模式,autoRun.block_instructions 则用于描述需要保留以供审查的调用模式。比如,您可以允许对构建产物进行只读检查,同时始终在删除等破坏性操作上暂停。

{
  "autoRun": {
    "allow_instructions": [
      "Read-only inspections of build artifacts under ./dist are fine."
    ],
    "block_instructions": [
      "Always pause delete operations so I get a chance to review them."
    ]
  }
}

JSONL 和自定义存储

两个 SDK 都会持久化智能体和运行元数据,以便您在进程重启后恢复智能体。此前,该存储一直使用 SQLite。现在,您也可以选择改用 JSONL 存储,它会写入一个纯文本的仅追加文件,您可以读取、比较差异,并提交到版本控制。SqliteLocalAgentStoreJsonlLocalAgentStore 也都可以直接导出。

如果这两种默认选项都不适合您的配置,请实现公开的 LocalAgentStore 接口,并通过 local.store 传入。您可以为临时性的 CI 运行构建内存存储,或者在希望智能体状态与应用程序的其他数据一同持久保存时,使用 Postgres 作为持久化后端。Python SDK 通过 bridge 暴露 host、JSONL 和组合式 JSONL 存储。

嵌套子智能体

子智能体现在也可以再创建自己的子智能体,层层嵌套。审查子智能体可以委派给测试编写子智能体,后者还可以继续向下委派,并且每一层都保留各自的提示和模型。无需手动开启任何功能;子智能体会话会注册其调用 Task 所需的执行者,因此只要智能体定义了子智能体,嵌套就会自动生效。

可靠性、性能与平台改进

此次发布还包含了一批面向两个 SDK 的体验优化和修复。

  • 运行关联:现在每次 send() 都会携带一个由平台生成的 requestId``,并会在 RunRunResult中暴露,同时持久化到内存、SQLite 和 JSONL 存储中。您可以将脚本或 CI 运行与后端日志、分析数据和支持线程对应起来,无需再根据agentId` 推断。
  • 本地运行中更可靠的 wait():本地运行不会再在终端结果写入前就提前结束 wait()。Hydration 会持续刷新,直到运行进入最终状态,因此自动化流程读取到的结果是完整的。
  • dispose 时更安全的检查点:释放本地智能体时,如果根引用缺失但检查点 blob 仍然存在,将不再删除检查点数据。只有在确实没有任何需要保留的内容时,才会清空智能体目录。
  • 基于 HTTP/1.1 的云端流式传输:云端智能体会话现在能够在某些代理、较旧的 Node fetch 栈以及特定 CI 镜像使用的 HTTP/1.1 传输上正确进行流式传输。HTTP/2 的行为保持不变。

  • 更轻量的导入:导入 @cursor/sdk 时,不会再急切加载完整的本地智能体栈。仅使用云端功能或仅使用类型的场景,会在首次进行本地调用前跳过本地运行时开销,且无需改动 API。首次本地调用只会承担一次性导入成本,之后会保持缓存。
  • 自包含的 TypeScript 类型:发布的 .d.ts 文件不再引用未发布的工作区包。这修复了在 skipLibCheck: false 下出现的 TS2305TS2307 错误,以及 TurnEndedUpdate 等流类型被静默视为 any 的问题。
  • 内置 ripgrep:本地 shell 运行会使用随包提供的平台 rg 二进制文件,而不会修改您的全局 PATH。在 Windows 上,预置 ripgrep 也不会再覆盖 Path 变量。

  • Composer 2 自动路由到 Composer 2.5:仍固定使用已退役 composer-2 slug 的 SDK 客户端,现在会自动路由到 Composer 2.5,同时保留快速变体,因此旧脚本也能继续运行。

  • 工作区作用域的 list_runsClientAsyncClientAgent.list_runs 现在支持可选的 cwd,bridge 会回退到其启动时的工作区。当 bridge 作为子进程运行时,这修复了误报“agent not found”结果的问题。
  • 更清晰的未找到错误:查找不在已解析工作区中的智能体时,现在会返回明确的未找到错误,而不是含糊的内部错误。
  • 0.1.6 发布与分析cursor-sdk 0.1.6 记录了 Buildkite 发布路径,并将 SDK 使用标记为 sdk-python-,以便获得更清晰的分析数据。

运行 npm install @cursor/sdkpip install cursor-sdk 即可升级。固定使用 composer-2 的脚本会自动迁移到 Composer 2.5,而 requestId 也可以安全地加入您的运行元数据 schema。完整详情请参阅 TypeScriptPython 文档。

画布设计模式与上下文用量报告

借助画布,智能体可以创建可与团队共享的交互式内容,例如仪表盘、报告和内部工具。

此版本引入了设计模式,以便更快地编辑画布,并提供了帮助您了解上下文用量的新方式,以及其他体验优化。

画布中的设计模式

画布现已提供设计模式。

您可以直接在画布中选择并标注 UI 元素,像在浏览器中一样引导 Cursor 进行编辑。无需再用文字描述更改,您可以直接指出要改的地方、提供反馈,并更快地迭代。

在画布中查看上下文用量报告

Cursor 现在可以在画布中显示您的智能体的上下文用量交互式报告。

上下文探索器会细分展示 token 在系统提示、工具定义、规则、技能等部分的使用情况。由于它是一个画布,您可以向智能体提出后续问题,它还可以自定义这份报告来回答您的具体问题。

点击画布中嵌入的 Debug with Agent 按钮,在新对话中请求 Cursor 帮您找出减少上下文用量的机会。

  • 共享画布现在可以在浏览器中全屏打开,更方便向他人展示。
  • 新增了让智能体在画布中嵌入按钮的能力,点击后会运行特定提示。
  • 提升了智能体修复画布类型错误的能力。
  • 改进了组件样式,并新增了更多图表自定义功能。