《Cursor文档》-自动化

Cursor 自动化可在后台运行云端代理,按计划执行,或响应来自 GitHub、GitLab、Slack、Webhook、Linear 等平台的事件。

自动化可用于执行各类任务,例如评审近期 PR 提交以发现缺陷深入评审以发现漏洞在 Slack 中分诊缺陷,以及按计划汇总代码库更改

快速开始

您可以在代理窗口cursor.com/automations 创建新的自动化,也可以通过本地智能体会话中的 /automate 技能,或使用 插件市场 中的模板创建。

/automate 技能让您可以用自然语言描述所需的工作流。Cursor 会为您配置自动化的触发器、指令和工具。

无论选择哪种方式:

  1. 选择触发器,例如每小时触发一次,或在 PR 创建时触发。
  2. 编写提示词,说明自动化要执行的操作。
  3. 选择智能体可使用的可选工具,例如 Send to Slack、Comment on Pull Request 或 MCP 工具。
  4. 选择自动化需要一个仓库、多个仓库,还是完全不需要仓库。
  5. 保存并启用自动化。

自动化页面还提供三个由 Cursor 管理的智能体:

  • Bugbot 会评审 PR,查找缺陷和代码质量问题。
  • 安全代理 会评审 PR 并扫描代码库中的漏洞。
  • PR 路由与批准 会将 PR 分配给审阅人,并可批准低风险更改。

计费

自动化会创建云端代理,并按云端代理用量计费。详情请参阅云端代理定价

自动化以云端代理的形式运行,因此会使用每个模型支持的最大上下文窗口。无法切换上下文窗口。

用量的计费方式取决于自动化的权限范围

  • 团队拥有:用量计入团队的用量池。自动化通过共享的团队服务账户执行,因此不会影响任何个人用户的用量。
  • 私有:用量计入创建该自动化的用户。
  • 团队可见:与私有相同,用量计入创建该自动化的用户。

触发器

触发器决定自动化的运行时机。一个自动化可以有多个触发器,任一触发器触发时,自动化都会运行。

对于 Slack 或 cron 计划等某些触发器,Cursor 默认不使用仓库。如果自动化需要修改代码,请指定智能体应在哪个或哪些仓库中工作。对于源代码控制触发器,必须指定一个或多个仓库。

定时触发器

定时触发器会按设定周期运行。您可以选择预设选项,也可以输入 cron 表达式进行精确控制。

定时触发器可能会延迟执行,但不会早于指定时间启动。

源代码控制触发器

源代码控制触发器会响应来自已连接的 Git 提供商 (GitHub、GitLab 和 Bitbucket Cloud) 的 PR 和推送事件。将自动化关联到一个代码仓库或多仓库环境。

每个已连接的提供商都支持以下核心 PR 和推送触发器:

  • 草稿 PR 已创建 - 创建草稿 PR 时。
  • PR 已创建 - 创建非草稿 PR,或将草稿标记为可供评审时。
  • PR 已推送 - 向现有 PR 推送新提交时。
  • PR 已合并 - PR 合并时。
  • 推送到分支 - 在 PR 之外向特定分支推送提交时。
  • 已添加评论 - 有人在 PR 上发表顶层评论时。

GitHub 支持的触发器最多。GitLab 和 Bitbucket 除支持上述核心触发器外,还支持其下方分区中列出的部分额外触发器。

GitHub 触发器

GitHub 是参考提供商,支持所有源代码控制触发器。除核心触发器外,还支持以下触发器:

  • PR 标签已更改 - 当 PR 添加或移除特定标签或任意标签时。
  • 议题标签已更改 - 当非 PR 议题添加或移除标签时。
  • CI 已完成 - 当 GitHub 检查在 PR 或分支上完成时。
  • 议题评论 - 当有人在非 PR 议题上发表评论时。
  • PR 评审评论 - 当有人在 PR diff 中留下内联评论时。
  • PR 评审已提交 - 当以批准、请求更改或评论的形式提交评审时。
  • 评审线程已更新 - 当 PR 中的评审线程被标记为已解决或未解决时。
  • 工作流运行已完成 - 当 GitHub Actions 工作流运行在 PR 或分支上完成时。

插件市场提供了用于分流失败的 GitHub Actions 工作流修复 PR 评审评论的模板。

GitLab 触发器

除核心触发器外,GitLab 还提供:

  • PR 标签已更改 - 当合并请求的标签被添加或移除时。
  • PR 已批准 - 当合并请求获批时。

Bitbucket 触发器

仅支持 Bitbucket Cloud (bitbucket.org)。不支持 Bitbucket Server 和 Data Center。除核心触发器外,还支持:

  • PR 已批准 - PR 获得批准时。

Bitbucket Cloud 不支持 PR 标签或内联评审评论触发器。

从 fork 发起的 PR 不会触发 PR 触发器。这些运行会因“Fork PR 不受支持”错误而失败,因为该分支仅存在于 fork 中,使用仓库权限运行外部代码并不安全。PR 已合并触发器是例外,仍会运行,因为它们从合并提交启动。要解决此问题,请将分支推送到仓库本身,然后从该仓库发起 PR。

Slack 触发器

Slack 触发器会响应 Cursor Slack 集成中的事件。

目前,Slack 触发器只能访问公开的 Slack 频道。

  • 频道新消息 - 已连接的 Slack 频道中有新消息时触发。未设置消息筛选器时,触发器仅会针对频道中的顶层消息触发。如需在线程回复时也触发,请添加关键词或正则表达式筛选器。
  • 表情 प्रतिक्रिया - 有人使用特定表情回应 Slack 消息时触发。
  • 频道已创建 - 工作区中创建新的公开 Slack 频道时触发。

Webhook 触发器

Webhook 触发器会为你的自动化创建一个私有 HTTP 端点。向该端点发送 POST 请求即可启动一次运行。你可以使用 Webhook 将自动化与内部系统、CI 流水线、监控工具等连接起来。

要获取 Webhook URL,必须先保存自动化。保存后,系统会生成可调用的 Webhook URL 以及用于身份验证的 API 密钥。

Linear 触发器

Linear 触发器会响应来自 Cursor Linear 集成的事件。

  • 已创建问题 - 创建新问题时。
  • 状态已更改 - 问题状态发生更改时。
  • 周期结束 - Linear 周期完成时。

Sentry 触发器

当 Sentry 项目中发生错误或问题事件时,Sentry 触发器会运行。您可以使用它们自动调查错误、找出根本原因并提出修复方案。有关现成示例,请参阅 Investigate Sentry issues 市场模板。

  • Issue created - 在 Sentry 中创建新问题时。
  • Issue updated - 现有问题发生变更时,例如状态或负责人更新。
  • Any issue event - 匹配所有问题事件类型。

PagerDuty 触发器

PagerDuty 触发器会在事故事件发生时运行,可用于自动分类处理甚至解决事故。

  • 事故已触发 - 创建新事故时。
  • 事故已确认 - 确认事故时。
  • 事故已解决 - 事故解决时。
  • 任意事故事件 - 匹配所有事故事件类型。

工具

Cursor 自动化可启用工具,以增强与 GitHub、Slack、记忆、MCP 等相关的功能。自动化还包含与其他云端代理相同的基础工具集。详情请参阅云端代理能力

创建 PR

基于仓库的自动化在根据自动化提示词完成所需的代码更改后,可创建 PR。此工具默认在所有自动化中启用。

PR 会在源代码控制触发器指定的仓库中创建。对于其他触发器,则使用环境中指定的仓库。

在 PR 中评论

在目标 PR 中发布评论。支持在评审层级发表评论,也支持添加内联代码评论。

如果启用批准,智能体还可以批准、请求更改和撤销评审。否则,它只能发布评论。

请求审阅人

为目标 PR 请求审阅人。智能体可以使用 git、记忆和其他工具来识别相关领域专家。

发送到 Slack

向 Slack 频道发送消息。你可以指定特定频道,也可以让智能体动态选择任意频道。

当你允许使用任意频道时,Cursor 还会授予智能体发现可用公开频道所需的读取权限。

请注意,智能体会获得其可发送消息的公开频道的读取权限。

读取 Slack 频道

允许智能体以只读方式查看公开 Slack 频道列表并读取其中的消息。

当智能体在回复或创建 PR 前需要更多上下文时,可使用此功能。

MCP 服务器

连接 MCP (模型上下文协议) 服务器,让智能体能够使用外部工具和数据源。

连接 MCP 服务器后,智能体可访问该服务器提供的所有工具。请仅连接你信任、且拥有自动化所需权限的服务器。

记忆

记忆功能让智能体能够在同一自动化的多次运行中读取和写入持久化笔记。借此可构建能够记住信息并随时间不断改进的智能体。每条记忆都存储为一个具名条目 (默认为 MEMORIES.md) ,位于智能体工作文件系统之外。

记忆默认启用,但也可以禁用。可在工具配置 UI 中查看和编辑记忆。

智能体可以在自动化运行期间删除过时的记忆文件。你也可以在工具配置 UI 中删除记忆文件。

记忆会在多次运行之间持续保留;如果自动化处理不受信任的输入,请谨慎使用。输入可能会产生误导性或恶意的记忆,进而无意中影响后续的自动化运行。

计算机使用

计算机使用功能让由自动化启动的云端代理能够像开发者一样操作计算机。这意味着自动化可以操作浏览器、生成屏幕截图或录屏,或使用您的内部服务。每个自动化默认都包含此功能。

为确保计算机使用功能正常发挥作用,请为自动化配置开发环境。之后,如果您希望智能体展示其工作成果,可以在自动化指令中要求其进行演示。例如,您可以告诉智能体,在更改面向用户的流程后附上一段简短的屏幕录制。

自动化设置

模型

您可以选择云端代理执行自动化任务时使用的模型。

代码仓库

选择自动化不使用仓库、使用一个仓库,还是使用多仓库环境。

仓库设置决定每次运行的代码库上下文:

  • 无代码仓库:智能体不会克隆代码。适用于仅需使用 Slack、MCP、webhooks、Linear 或 PagerDuty 的工作流。无法编辑代码或创建 PR。
  • 单个代码仓库:智能体在一个仓库及其分支中工作。自动化需要在一个代码库中读取、评审或更改代码时,请使用此选项。
  • 多仓库环境:智能体可在环境中的多个仓库之间工作。任务涉及多个代码库时,请使用此选项。

对于 Slack 或 cron 定时任务等特定触发器,Cursor 默认不使用仓库。如果自动化需要更改代码,请指定智能体应在哪个或哪些仓库中工作。

对于源代码控制触发器,必须指定一个或多个仓库。

单仓库自动化

默认情况下,自动化会在一个代码仓库和分支上运行。当智能体需要在单个代码库中读取、评审或修改代码时,这是合适的选择。

源代码控制触发器会从 PR 中识别代码仓库。对于其他触发器,请在自动化设置中选择代码仓库和分支。

多仓库自动化

当自动化需要跨多个仓库运行时,请使用多仓库环境。配置环境时选择多个仓库,或从您的 Cloud Agents 仪表盘 中选择已有环境。

权限

控制谁可以查看和管理自动化。权限范围还决定用量如何计费

  • 私有:只有你可以管理自动化。团队管理员可以查看和禁用该自动化。
  • 团队可见:只有你可以管理自动化。团队成员可以查看该自动化,团队管理员可以禁用它。它仍使用你的认证信息运行。
  • 团队拥有:团队成员可以查看该自动化。只有团队管理员可以管理它。它使用团队共享的自动化服务账户运行。

将自动化从私有或团队可见提升为团队拥有,会改变其运行所使用的身份。它将不再使用你的认证信息,改用团队共享的自动化服务账户。如果自动化使用 webhook 触发器,请在更改权限范围后重新生成其 webhook API 密钥。如果它使用依赖个人 OAuth 凭据的 MCP 或其他集成,请确保改为为团队的服务账户配置这些凭据。只有团队管理员可以将自动化提升为团队拥有。

身份

当自动化与外部服务交互时,会使用以下身份:

  • GitHub 评论、评审批准和请求审阅人均以 cursor 身份执行。
  • 团队范围的自动化会以 cursor 身份创建 PR。
  • 私有自动化会以你的 GitHub 账户身份创建 PR。
  • Slack 消息会以 Cursor 机器人的身份发送。

编写提示词

提示词用于定义智能体应执行的任务。编写方式应与为云端代理运行编写指令时相同。

提示:

  • 明确说明智能体需要检查、修改或产出什么。
  • 引用你已启用的操作——可以通过 @ 提及工具,或直接提及工具名称。
  • 包含针对不同情况应采取何种操作的决策规则。
  • 设定质量标准,明确智能体何时应创建 PR、发表评论或不执行任何操作。
  • 描述所需的输出格式。

相关内容

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜