Why don’t nested .cursor/rules/** directories work for MDC rules?

Hey team, I noticed something odd with rule loading in Cursor.

I had a rule at:

.cursor/rules/domain/commit-after-tests-agent.mdc

…but it didn’t trigger.

When I moved it to the root:

.cursor/rules/commit-after-tests-agent.mdc

…it worked fine.

So:

✅ Rule at .cursor/rules/my-rule.mdc works

❌ Rule at .cursor/rules/some-folder/my-rule.mdc doesn’t

Is this a known limitation?
Is there any supported way to organize rules into subfolders (for domains or rule types)?
Would love to keep things tidy in larger workspaces.

Thanks!

Hi, yes this feature is documented with support for the main folder.

Project rules live in .cursor/rules

Unfortunately, asking AI why it didnt do things it doesnt know about always results in AI stating it should have known :slight_smile:. Note how the AI tries to be friendly and helpful instead of saying when it doesnt know things. You can fix this with Cursor Rules :slight_smile: but they have to be in the right place.

You can nest Cursor Rules within subprojects, however not within a Cursor rules folder.

project/
  .cursor/rules/        # Project-wide rules
  backend/
    server/
      .cursor/rules/    # Backend-specific rules
  frontend/
    .cursor/rules/      # Frontend-specific rules
1 Like

Thanks!

1 Like