With Cursor’s integration for Slack, you can use Background Agents to work on your tasks directly from Slack by mentioning @Cursor with a prompt.

Get started

Installation

  1. Go to Cursor integrations

  2. Click Connect next to Slack or go to installation page from here

  3. You’ll be prompted to install the Cursor app for Slack in your workspace.

  4. After installing in Slack, you’ll be redirected back to Cursor to finalize setup

    1. Connect GitHub (if not already connected) and pick a default repository
    2. Enable usage-based pricing
    3. Confirm privacy settings
  5. Start using Background Agents in Slack by mentioning @Cursor

How to use

Mention @Cursor and give your prompt. This handles most use cases, but you can also use commands below to customize your agent.

For example, mention @Cursor fix the login bug directly in conversation, or use specific commands like @Cursor [repo=torvalds/linux] fix bug to target a particular repository.

Commands

Run @Cursor help for an up-to-date command list.

CommandDescription
@Cursor [prompt]Start a Background Agent. In threads with existing agents, adds followup instructions
@Cursor settingsConfigure defaults and channel’s default repository
@Cursor [options] [prompt]Use advanced options: branch, model, repo
@Cursor agent [prompt]Force create a new agent in a thread
@Cursor list my agentsShow your running agents

Options

Customize Background Agent behavior with these options:

OptionDescriptionExample
branchSpecify base branchbranch=main
modelChoose AI modelmodel=o3
repoTarget specific repositoryrepo=owner/repo
autoprEnable/disable automatic PR creationautopr=false
Syntax Formats

Use options in several ways:

  1. Bracket format

    @Cursor [branch=dev, model=o3, repo=owner/repo, autopr=false] Fix the login bug
  2. Inline format

    @Cursor branch=dev model=o3 repo=owner/repo autopr=false Fix the login bug
Option precedence

When combining options:

  • Explicit values override defaults
  • Later values override earlier ones if duplicated
  • Inline options take precedence over settings modal defaults

The bot parses options from anywhere in the message, allowing natural command writing.

Using thread context

Background Agents understand and use context from existing thread discussions. Useful when your team discusses an issue and you want the agent to implement the solution based on that conversation.

S
Sarah2:30 PM
Hey team, we're getting reports that users can't log in after the latest deploy
M
Mike2:32 PM
I checked the logs - looks like the auth token validation is failing on line 247 of auth.js
A
Alex2:33 PM
Oh, I think it's because we changed the token format but didn't update the validation regex
S
Sarah2:35 PM
Yeah, the regex still expects the old format. We need to update it to handle both old and new formats for backwards compatibility
Y
You2:36 PM
@Cursor fix this
1

Background Agents read the entire thread for context when invoked, understanding and implementing solutions based on the team’s discussion.

When to use force commands

When do I need @Cursor agent?

In threads with existing agents, @Cursor [prompt] adds followup instructions (only works if you own the agent). Use @Cursor agent [prompt] to launch a separate agent.

When do I need Add follow-up (from context menu)?

Use the context menu (⋯) on an agent’s response for followup instructions via modal. Useful when multiple agents exist in a thread and you need to specify which one to follow up on.

Status updates & handoff

When Background Agent runs, you first get an option to Open in Cursor.

When Background Agent completes, you get a notification in Slack and an option to view the created PR in GitHub.

Managing agents

To see all running agents, run @Cursor list my agents.

Manage Background Agents using the context menu by clicking the three dots (⋯) on any agent message.

Available options:

  • Add follow-up: Add instructions to an existing agent
  • Delete: Stop and archive the Background Agent
  • View request ID: View unique request ID for troubleshooting (include when contacting support)
  • Give feedback: Provide feedback about agent performance

Configuration

Manage default settings and privacy options from Dashboard → Background Agents.

Settings

Default Model

Used when no model is explicitly specified with @Cursor [model=...]. See settings for available options.

Default Repository

Used when no repository is specified. Use these formats:

  • https://github.com/org/repository
  • org/repository

If you reference a non-existent repository, it appears as if you don’t have access. This shows in the error message when Background Agent fails to start.

Base Branch

Starting branch for Background Agent. Leave blank to use the repository’s default branch (often main)

Channel Settings

Configure default settings at the channel level using @Cursor settings. These settings are per team and override your personal defaults for that channel.

Particularly useful when:

  • Different channels work on different repositories
  • Teams want consistent settings across all members
  • You want to avoid specifying the repository in every command

To configure channel settings:

  1. Run @Cursor settings in the desired channel
  2. Set the default repository for that channel
  3. All team members using Background Agents in that channel use these defaults

Channel settings take precedence over personal defaults but can be overridden by explicit options like @Cursor [repo=...] [prompt]

Privacy

Background Agents aren’t supported on Privacy Mode (Legacy). Read more about privacy mode.

Display Agent Summary

Display agent summaries and diff images. May contain file paths or code snippets. Can be turned On/Off.

Display Agent Summary in External Channels

For Slack Connect with other workspaces or channels with external members like Guests, choose to display agent summaries in external channels.

Permissions

Cursor requests these Slack permissions for Background Agents to work within your workspace:

PermissionDescription
app_mentions:readDetects @mentions to start Background Agents and respond to requests
channels:historyReads previous messages in threads for context when adding follow-up instructions
channels:joinAutomatically joins public channels when invited or requested
channels:readAccesses channel metadata (IDs and names) to post replies and updates
chat:writeSends status updates, completion notifications, and PR links when agents finish
files:readDownloads shared files (logs, screenshots, code samples) for additional context
files:writeUploads visual summaries of agent changes for quick review
groups:historyReads previous messages in private channels for context in multi-turn conversations
groups:readAccesses private channel metadata to post responses and maintain conversation flow
im:historyAccesses direct message history for context in continued conversations
im:readReads DM metadata to identify participants and maintain proper threading
im:writeInitiates direct messages for private notifications or individual communication
mpim:historyAccesses group DM history for multi-participant conversations
mpim:readReads group DM metadata to address participants and ensure proper delivery
reactions:readObserves emoji reactions for user feedback and status signals
reactions:writeAdds emoji reactions to mark status - ⏳ for running, ✅ for completed, ❌ for failed
team:readIdentifies workspace details to separate installations and apply settings
users:readMatches Slack users with Cursor accounts for permissions and secure access