Team Hooks Dashboard does not allow configuring a matcher

Where does the bug appear (feature/product)?

Cloud Agent (GitHub, Slack, Web, Linear)

Describe the Bug

Hi Cursor team,

The web dashboard used to configure hooks at the team level does not provide a way to define a matcher.

When creating a Command Hook, the form currently allows configuring:

  • Hook name
  • Hook type
  • Hook step
  • Script content
  • Supported operating systems

However, there is no field for configuring a matcher, even for steps such as Before Tool Use and After Tool Use.

This means the hook runs for every tool invocation associated with that step, and we cannot restrict it to specific tools or commands.

For example, we would like to configure a team-level hook equivalent to:

{
  "command": "./cursor/hooks/security-check.sh",
  "matcher": "Shell|Write|Edit"
}

Or restrict a shell hook to specific commands:

{
  "command": "./cursor/hooks/protect-git.sh",
  "matcher": "git push|git commit"
}

Actual behavior

There is no option to define a matcher.

Steps to Reproduce

  1. Open the Cursor Team Dashboard.
  2. Go to the team hooks configuration.
  3. Select Create Hook.
  4. Choose Command Hook.
  5. Select Before Tool Use or After Tool Use.
  6. Check the available configuration fields.

Expected Behavior

The dashboard should provide a matcher field for hook steps that support matching, ideally with:

  • Tool name matching
  • Command or pattern matching
  • Regex support, when applicable
  • A validation or preview of what the matcher will affect

Alternatively, the dashboard could provide an advanced JSON editor so that fields supported by the hook schema can be configured directly.

This is especially important for team-managed hooks because running the script for every tool call can introduce unnecessary overhead and makes it difficult to implement targeted security or compliance checks.

I have attached screenshots of the current Create Hook form.

Screenshots / Screen Recordings

Operating System

Windows 10/11

Version Information

Cursor Dashboard

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey there! You’re right: the team hooks dashboard doesn’t expose a matcher field today, so team hooks can’t be scoped the way local hook configs can. We’ve let the team know and this is something we’re tracking. No timeline to share yet, but I’ll post here if there’s an update.