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
- Open the Cursor Team Dashboard.
- Go to the team hooks configuration.
- Select Create Hook.
- Choose Command Hook.
- Select Before Tool Use or After Tool Use.
- 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

