-
-
Notifications
You must be signed in to change notification settings - Fork 11.3k
Open
Description
Summary
- Installing Homebrew cask cursor-cli results in a quarantined bundled Node binary.
- On Intel macOS, running cursor-agent triggers a Gatekeeper “node” malware warning dialog.
- After clicking “Done”, the process is terminated (Killed: 9).
- Removing the quarantine attribute from the dist-package fixes it immediately.
Environment
- macOS: darwin 24.6.0 (macOS 15.6.x)
- CPU arch: x86_64 (Intel)
- Homebrew cask cursor-cli version: 2026.01.23-916f423
- cursor-agent location:
/usr/local/bin/cursor-agent -> /usr/local/Caskroom/cursor-cli/2026.01.23-916f423/dist-package/cursor-agent
Repro steps
- Install:
brew install --cask cursor-cli - Run:
cursor-agent --version
Actual result
- macOS dialog appears:
“node” Not Opened
Apple could not verify “node” is free of malware... - Terminal shows:
Killed: 9 cursor-agent --version
Diagnostics
-
The wrapper executes bundled node:
/usr/local/Caskroom/cursor-cli/2026.01.23-916f423/dist-package/node -
The node binary is x86_64:
file .../dist-package/node
-> Mach-O 64-bit executable x86_64 -
Quarantine attribute is present:
xattr -l .../dist-package/node
com.apple.quarantine: 0381;... -
codesign is OK:
codesign --verify --deep --strict --verbose=4 .../dist-package/node
...: valid on disk
...: satisfies its Designated Requirement -
spctl rejects it because it is quarantined and “not an app”:
spctl --assess --type execute --verbose=4 .../dist-package/node
...: rejected (the code is valid but does not seem to be an app)
Expected result
- cursor-agent should run without Gatekeeper prompts or termination.
Workaround / Fix
- Remove quarantine from the dist-package:
xattr -dr com.apple.quarantine /usr/local/Caskroom/cursor-cli/2026.01.23-916f423/dist-package - After that:
cursor-agent --version
-> 2026.01.23-916f423
Notes
- This looks like the cask install is preserving quarantine on the downloaded artifact, and the dist-package contains a standalone executable that Gatekeeper blocks when quarantined.
Metadata
Metadata
Assignees
Labels
No labels