as i understand it, this rule should be applied automatically in every chat.
what i found out is that:
it doesn’t get applied, ever
when directly referenced in the chat as @rule.mdc, its content doesn’t get inlined as other files. instead the LLM has to search for it using the (incorrect) file name “@rule.mdc” and more often than not, it couldn’t find it.
there seems to be something special about the mdc files since change it to .md fixed the inlining issue.
so my question is, are rules completely broken in cursor?
Only *.mdc files are considered as “cursor rules”, don’t use other extensions.
Inlining markdown files with @path.md or [doc](path.md) is broken, regardless if rule is auto-attached or manually mentioned.
alwaysInclude: true is broken - never works in any combination of factors. Avoid.
The only way to force-include a rule is to set alwaysInclude: false and globs: **/*, but you must include 1 or more files in the query, otherwise the globs don’t trigger inclusion of the file
When you use the built-in editor, and use the @-mention feature to include another mdc file (.md files are not allowed), it creates a broken/ignored markdown [path.mdc](mdc:path.mdc) - this is never used, never works
When you right-click MDC file, Open with and select Text you can edit the underlying markdown
Use the @path.mdc notation to mention another file - but this does not guarantee inclusion, as it’s only a hint to the LLM. The model might or might not read the @-mentioned file depending on if it decides it’s relevant.