Borrowing it
Nothing to install: this file belongs to johnneerdael/multiplatform-cursor-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/johnneerdael/multiplatform-cursor-mcp/main/.cursorrulesgit clone --depth 1 https://github.com/johnneerdael/multiplatform-cursor-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/johnneerdael/multiplatform-cursor-mcp/cursorrules)<a href="https://agentmods.dev/rules/johnneerdael/multiplatform-cursor-mcp/cursorrules"><img src="https://agentmods.dev/badge/rules/johnneerdael/multiplatform-cursor-mcp/cursorrules/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/rules/johnneerdael/multiplatform-cursor-mcp/cursorrules"><img src="https://agentmods.dev/badge/rules/johnneerdael/multiplatform-cursor-mcp/cursorrules.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01045 | $0.01045 |
| Opus 5.5 | $0.00418 | $0.00418 |
| Sonnet 5.5 | $0.00209 | $0.00209 |
| Haiku 4.5 | $0.00104 | $0.00104 |
Grade B, and why
cursorrules scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Asks for rootmediumPrivilege escalation
A mod that escalates privileges can change anything on the machine, not only the project.
- Bash script with sudo - Creates launch agent for auto-start How it starts
The opening of the file, as written. The whole thing — 143 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Cross-Platform Migration Task
Issues Found
-
Windows-specific Path Handling
- Using
process.env.LOCALAPPDATAfor Cursor.exe path - Windows-style path separators in path.join operations
- Hard-coded Windows paths in documentation
- Using
-
Windows-specific Dependencies
node-windowsdependency for window management- Heavy reliance on
node-window-managerfor Windows-specific window operations robotjsfor Windows-specific keyboard/mouse automation
-
Windows-specific APIs
- Windows-specific window handling in WindowsApiService
- Windows-specific process management
- Windows-specific keyboard event handling
Migration Plan
[X] 1. Path Handling - Replace Windows-specific path handling with path.join and process.platform checks - Update documentation with cross-platform examples - Create platform-specific path resolvers
[X] 2. Window Management - Create platform-agnostic window management interface - Implement platform-specific adapters (Windows/MacOS/Linux) - Replace direct Windows API calls with adapter interface
[X] 3. Process Management - Create cross-platform process spawning logic - Handle platform-specific executable paths - Implement platform-specific process detection
[X] 4. Keyboard/Mouse Automation - Create platform-agnostic input automation interface - Replace robotjs with @nut-tree/nut-js - Implement platform-specific input handling
[X] 5. Configuration - Add platform-specific configuration options - Create default configs for each supported platform - Update environment variable handling
Completed Tasks
- Created PathResolver utility for cross-platform path handling
- Created platform-agnostic window management interface
- Implemented Windows and macOS window managers
- Implemented Linux window manager using xdotool
- Created cross-platform input automation service using @nut-tree/nut-js
- Updated CursorInstanceManager to use new abstractions
- Updated documentation with cross-platform instructions
- Added comprehensive test suite for window managers
- Added structured error handling system
- Added logging system with context tracking
- Added tests for input automation service
- Added tests for path resolver
- Created platform-specific installation scripts
- Added integration tests for window management
- Added integration tests for input automation
- Added GitHub Actions workflows for testing and releases
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 143 lines · 1,045 tokens per session scan B c59a78beff48
cursorrules is a cursor rule published in the GitHub repository johnneerdael/multiplatform-cursor-mcp (68 stars, last pushed 1y ago), licensed MIT. It adds 1,045 tokens to every session, about $0.0042 per session on Opus 5.5. A static security scan graded it B with 1 finding (asks for root). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
cursorrules compared with cursor rules from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| cursorrulesjohnneerdael/multiplatform-cursor-mcp | Cursor rule | 68 | 1y ago | MIT | B | 1,045 | Cursor |
| ponytailDietrichGebert/ponytail | Cursor rule | 185k | 8d ago | MIT | A | 604 | Cursor |
| angular-20angular/angular | Cursor rule | 101k | yesterday | MIT | A | 0 | Cursor |
| dev-standardapache/superset | Cursor rule | 75k | today | Apache-2.0 | A | 1,147 | Cursor |
| prefer-assertions-over-defensive-checksprisma/orm | Cursor rule | 48k | yesterday | Apache-2.0 | A | 0 | Cursor |
| prefer-direct-imports-over-module-mocksprisma/orm | Cursor rule | 48k | yesterday | Apache-2.0 | A | 0 | Cursor |
| shared-plane-packagesprisma/orm | Cursor rule | 48k | yesterday | Apache-2.0 | A | 0 | Cursor |