Introducing Cursor Automations

Blog · Docs · Try it out!


We’re excited to introduce Cursor Automations: always-on cloud agents that run a schedule or in response to events!

Imagine an agent that reviews every PR for security vulnerabilities before you even open Slack. Or one that triages bug reports overnight, finds the root cause, and has a fix ready by morning. Or a weekly digest that summarizes everything your team shipped, all automatically. That’s what automations enable.

Define a trigger, write a prompt, and choose which tools the agent can use. When triggered, a cloud agent spins up, follows your instructions, and verifies its own output. Agents can open PRs, comment on code, send Slack messages, call MCP servers, and use Memories to learn across runs.

Create a new automation at https://cursor.com/automations/new, or start from a template in the marketplace. Learn more in our docs!

We’d love your feedback!

  • What workflows are you automating?
  • How is the memory tool working across repeated runs?
  • What triggers or integrations would you like to see added?

If you’ve found a bug, please post it in Bug Reports instead, so we can track and address it properly, but also feel free to drop a link to it in this thread for visibility.

6 Likes
1 Like

Can we automate to send a slack message when a PR has not received any reviews for 24 hours?

Hey, what exactly is the reason we cannot use Composer 1.5 for Automations anymore?

2 Likes

There’s a ton of issues when attempting to use Automations with a github enterprise connection. Nothing can connect to the existing github integration.

Automations need something to happen, and the absence of something isn’t enough.

You could, however, run a daily automation to collect stale PRs and send a Slack Message! Not exactly what you proposed, but maybe close enough!

please can you support multiple repos in a single automation - I want to write a weekly changelog for all the work the team has done to share with customer success and GTM but I now somehow need to do this across all repos and then hope that they don’t all overlap with eachother? I’m loving the direction but to me the multi-repo support is a key to keep things managable and avoid duplicating alerts on slack etc..

I am also suprised I can’t

  • create automations natively in cursor as a view but I imagine that is coming
  • use your own composer 1.5 model to use for the tasks
  • send slack messages to myself rather than a channel is that possible with the rules
  • have more logic in the triggers e.g. and / or etc.. would be heplful especialy if / once multi repos are allowed if I want to hav a daily and a weekly summary in the same automation rule I can’t seem to manage that easily or clearly

This has seriously been needed so big kudos for taking the first of a very important step and this is the type of thing that will build a mote around using Cursor if your team’s automations are all using the platform too.

What is the pricing approach or will that be revealed in due time, bugbot was way too expesive per person IMO and automations is vastly more powerful but seems to be a team feature so please figure out how to incorporate it into the existing pricing or make it easy to get into to encourage usage and evolution of the product.

1 Like

Is it necessary to set up a cloud environment for a codebase before using an Automations workflow?

Love the direction. Some things needed:

  1. Multi repo is desperately needed. Anything that isn’t a monolith can only somewhat use this.
  2. In the same vein - automations being tied to a single repo means I need to create the same generic “bug fixer agent from a webhook” for every repository. Every one gets a unique webhook. Etc
  3. Triggers - rather than implementing a bunch of first party triggers, give us a webhook request body mapper. Some tools dump massive JSON bodies and that can cause context rot in the agents. I’ve gotten around this for now by leveraging n8n.
  4. Another commenter mentioned this, but some better Boolean logic in the existing triggers would be great too. We’re an open source project, so have to protect from adversarial pull request creation. It’d be nice to filter down to groups (core committers) instead of explicit allow lists of people.
  5. Let me add skills
  6. Cloud Agent screen recording didn’t make it into automations. Unless you guys open up the API that you have for Slack/Linear → Cloud Agents (beyond what’s publicly available - like the repository routing).. Automations are the only way for Jira and other chat users (like Mattermost :slight_smile:) to do similar tasks
  7. Automation runs are buried underneath the automation. I understand these are supposed to be ephemeral runs and not touched, but sometimes it’d be nice to go in and steer the agent.

One last thing: when you trigger an automation via a webhook, the response has a UUID in it. If you could inject that UUID into the sandbox via ENV and make the agent aware it’d be great. I’m exposing a lot of tools to the Automation through an n8n MCP Server (wrapping internal APIs) - having the Automation send this arg as part of the tool request body would be helpful.

3 Likes

Firstly, this is going to be awesome, complete game changer and real advantage over Claude Code.

But, not having Computer Use / Browser working in this kinda kills it. I want to see the bug reproduced and solved. I can’t really merge otherwise, so then I need to auth in, get the right state and test it.

At that point I might as well just keep the current process in current state, manually prompting an agent to do that.

Really, really looking forward to Computer Use and Browsing as part of this! Pls!

1 Like

Various models are supported based on how well they perform Automations in our testing. We just added Haiku 4.5 support if you’re looking for a cheaper model!

1 Like

Nope! You can just get started in an agent environment with the repo cloned down, same as with Cloud Agents.

GHE should be supported now, please try again and let us know!

1 Like

@Colin Set up the Automations template “add test coverage” a few hours ago and later saw this workflow failure message. Is it a temporary network issue? I didn’t specify the number of parallel automation runs during the initial setup and don’t know how to do so.

Automations error

4 posts were split to a new topic: GitHub Enterprise integration broken after Cursor app reinstall

A post was merged into an existing topic: GitHub Enterprise integration broken after Cursor app reinstall

Very strange, especially if you weren’t running any other automations! Could you please try running the automation again? When editing an automation, you can do a test run.

The Automations feature is great. Previously I’ve built my own automations stringing together various tools and LLMs.

I now want to use cursor automations and want it to be triggered by a webhook. However, I cannot figure out how to get access to the webhook payload. This is important because it contains information about a potential bug or production error that I want the rest of the automation to handle.

Support suggested that this might have been solved in the forum. Do you have any pointers?

Thanks.

The automation only receives webhooks; it doesn’t send them.

Normally, if you’re configuring webhooks for another service, there will be documentation about the webhooks being sent (like Cursor’s webhook documentation, for an unrelated example).

That said, you can always use something like webhook.site to receive webhooks so you can examine the payload.

Thanks I understand. However I’d like to trigger a Cursor Automation by sending a payload to the webhook endpoint URL I’m provided by Cursor’s automation feature.

In the automation I’d like to use the webhook payload to inform the automation about the details of the error which the automation should fix for me.

In other words, I know what is in the webhook payload because I am sending it to Cursor. It’s pretty normal to have the webhook receiver (in this case Cursor) examine the payload and make decisions based off it.

Or is it as simple as telling the automation ‘use the payload in the webhook that triggers you to see the error details I’d like you to fix’?

Hope this makes sense.