cursor-doctor
v1.10.24
Published
Cursor rules linter and auto-fixer. Find out why Cursor ignores your rules. Lint, diagnose, and fix your .mdc files. Treat rules like code, not config. 100+ checks, zero dependencies.
Maintainers
Readme
cursor-doctor
Your Cursor rules have bugs. This finds them.
You wrote rules. Cursor still ignores them. cursor-doctor tells you exactly what's wrong: conflicting directives, broken globs, vague instructions the AI can't act on, token budget waste, and 100+ other issues. One command. Zero dependencies.
npx cursor-doctor scan
What you get
▒▒ Cursor Health: B ▒▒
██████████████████████████░░░░ 84%
✗ Conflict: "always use semicolons" vs "omit semicolons" in 2 files
✗ Glob *.tsx doesn't match any files in your project
⚠ 3 rules use alwaysApply — burning 2,400 tokens on every request
⚠ "write clean code" is too vague for the AI to act on
✓ Frontmatter valid across 12 rules
✓ No legacy .cursorrules detected
8 passed 4 issues (2 auto-fixable)Not generic warnings. Issues specific to your rules, with the exact file and line.
Why this exists
We scanned 50 real open-source projects and found that 82% had at least one broken or misconfigured rule. The most common issues: contradictory instructions across files, glob patterns that match nothing, and vague rules the AI silently ignores.
Commands
| Command | What it does | Free? |
|---------|-------------|-------|
| npx cursor-doctor scan | Health check with letter grade | ✅ |
| npx cursor-doctor lint | Rule-by-rule detailed diagnostics | ✅ |
| npx cursor-doctor check | CI pass/fail (exit code 0 or 1) | ✅ |
| npx cursor-doctor init | Generate starter rules for your stack | ✅ |
| npx cursor-doctor install react | Install community rule packs | ✅ |
| npx cursor-doctor fix --preview | Preview auto-fixes before applying | ✅ |
| npx cursor-doctor fix | Apply all auto-fixes | Pro |
| npx cursor-doctor audit | Full diagnostic report | Pro |
| npx cursor-doctor conflicts | Cross-format conflict detection | Pro |
| npx cursor-doctor test <file> | AI rule adherence testing | Pro |
| npx cursor-doctor team drift | Detect config drift across team | Pro |
What it checks
100+ lint rules:
- Conflicts — contradictory instructions across files (48 semantic patterns)
- Syntax — broken YAML frontmatter, boolean strings, unclosed code blocks
- Token budget — rules burning context window, dead rules, excessive alwaysApply
- Globs — patterns that don't match files, regex in globs, overlapping coverage
- Prompt quality — vague instructions, first person, politeness tokens, negation-only rules
- Structure — file naming, duplicate content, missing descriptions, legacy .cursorrules
Auto-fix (Pro)
34 auto-fixers: frontmatter repair, glob syntax, boolean strings, whitespace, TODO removal, duplicate descriptions, heading normalization, and more.
npx cursor-doctor fix --preview # See what would change (free)
npx cursor-doctor fix # Apply all fixes (Pro)$9 one-time at nedcodes.gumroad.com/l/cursor-doctor-pro. If it doesn't find real, fixable issues in your project, email [email protected] for a full refund.
VS Code / Cursor extension
Search "Cursor Doctor" in the extensions panel. Health grade in your status bar. Inline diagnostics on save. Quick-fix code actions with Pro.
CI / GitHub Action
Catch broken rules before merge:
- uses: nedcodes-ok/cursor-doctor@v1Pre-commit hook
Validate rules locally before every commit:
cp scripts/pre-commit-hook.sh .git/hooks/pre-commit && chmod +x .git/hooks/pre-commitThe hook runs cursor-doctor check only when .mdc, .cursorrules, CLAUDE.md, or AGENTS.md files are staged.
README Badge
Show your project's Cursor rules health in your README:
Static badge (update manually):
Dynamic badge (using shields.io endpoint):
# Generate badge JSON
./scripts/generate-badge.sh
# Commit .cursor-doctor-badge.json to your repo
git add .cursor-doctor-badge.json && git commit -m "chore: update cursor rules health badge"
# Use in README.md (replace YOUR_REPO_URL)
The badge color reflects your grade: A=brightgreen, B=green, C=yellow, D=orange, F=red.
MCP Server
Use cursor-doctor as an MCP tool inside your AI coding assistant:
{
"mcpServers": {
"cursor-doctor": {
"command": "npx",
"args": ["-y", "cursor-doctor-mcp"]
}
}
}LSP Server
Real-time diagnostics in Neovim, Zed, or any LSP-compatible editor:
npm install -g cursor-doctor
# Configure your editor to use cursor-doctor-lspRelated tools
| Tool | What | Install |
|------|------|---------|
| rule-gen | Generate rules from your codebase with AI | npx rulegen-ai |
| rule-porter | Convert rules between Cursor, Claude, Copilot, Windsurf | npx rule-porter |
| nedcodes.dev | Guides, playground, and tools for Cursor AI developers | |
License
MIT
