npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

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.

Readme

cursor-doctor

npm version npm downloads GitHub stars license

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

cursor-doctor scan demo

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

VS Code Marketplace OpenVSX

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@v1

Pre-commit hook

Validate rules locally before every commit:

cp scripts/pre-commit-hook.sh .git/hooks/pre-commit && chmod +x .git/hooks/pre-commit

The 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):

![Cursor Rules](https://img.shields.io/badge/Cursor_Rules-A-brightgreen)

Cursor Rules

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)
![Cursor Rules Health](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/YOUR_REPO_URL/main/.cursor-doctor-badge.json)

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-lsp

Related 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