Cursor rules alternatives in 2026
Five agent instruction formats on the same six criteria, every figure read off the vendor's own documentation rather than recalled — next to the adoption RuleStack counts nightly from real repositories.
If you are leaving .cursor/rules because of what it can express, you are leaving for the wrong reason — it is the most expressive of the five, and the only one whose docs publish a full decision table for when a rule enters context, including a rule the agent pulls in on its description alone. The real reasons to use something else are specific. Use AGENTS.md when more than one agent touches the repository: it is the only format here not owned by the tool that reads it, and Cursor's own page tells you to — "If you prefer plain markdown, use AGENTS.md instead." Use CLAUDE.md when your instructions have outgrown one file, because it is the only one of the five with a documented import syntax. Use Copilot instructions when the rules have to apply on github.com and not just in an editor — it is the only one with a documented way to aim a file at one Copilot feature and exclude another. Use Cline rules when the repository already carries rules from three different tools, because Cline reads .cursorrules, .windsurfrules and AGENTS.md as well as its own. And note what almost nobody publishes: three of the five give no size guidance at all, which is the number that decides how much of your context window the file spends every single request.
5 compared · 6 criteria, identical for every column · every competitor figure read off that company's own page · last verified 2026-08-14
Agent instruction formats compared on the same 6 criteria
| Cursor rules | AGENTS.md | CLAUDE.md | Copilot instructions | Cline rules | |
|---|---|---|---|---|---|
| Where the file lives | .cursor/rules/*.mdc "Project rules live in .cursor/rules as .mdc files and are version-controlled." A plain .md file in that directory is ignored: "api-guidelines.md # ignored (wrong extension)". | AGENTS.md at the repository root "Create an AGENTS.md file at the root of the repository. Most coding agents can even scaffold one for you if you ask nicely." | ./CLAUDE.md or ./.claude/CLAUDE.md "A project CLAUDE.md can be stored in either ./CLAUDE.md or ./.claude/CLAUDE.md." The documented scopes also include ~/.claude/CLAUDE.md for personal use, ./CLAUDE.local.md for gitignored project notes, and a managed-policy path for organisation-wide instructions. | .github/copilot-instructions.md "Repository-wide custom instructions apply to all requests made in the context of a repository. These are specified in a copilot-instructions.md file in the .github directory of the repository." | .clinerules/ at the project root "Workspace rules go in .clinerules/ at your project root." Cline "processes all .md and .txt files inside .clinerules/, combining them into a unified set of rules"; global rules live in a separate per-OS directory. |
| Per-directory files | Folders inside .cursor/rules, for organisation The documented layout puts subfolders inside the one rules directory — "frontend/ # organize rules in folders" — rather than a rules directory beside each package. For per-directory files Cursor's own page points elsewhere: "Cursor supports AGENTS.md in the project root and subdirectories." | Yes — one per package "Large monorepo? Use nested AGENTS.md files for subprojects … agents automatically read the nearest file in the directory tree, so the closest one takes precedence." The page cites the main OpenAI repository as carrying 88 of them. | Yes — loaded on demand "Claude also discovers CLAUDE.md and CLAUDE.local.md files in subdirectories under your current working directory. Instead of loading them at launch, they are included when Claude reads files in those subdirectories." | No — extra files stay under .github/instructions The additional files are centralised rather than placed beside the code: they are "specified in one or more NAME.instructions.md files within or below the .github/instructions directory in the repository", and are aimed at code by glob instead of by location. Per-directory files are documented on the same page under a different format — "you can create one or more AGENTS.md files, stored anywhere within the repository". | Not published The documented layout is one .clinerules/ directory at the project root plus a global one; this page describes no per-package rules directory. Cline's answer to the same problem is the paths frontmatter rather than file location. |
| Path-scoped rules | Yes — globs, description or @-mention Four documented rule types. "Apply to specific files When file matches a specified pattern", and the frontmatter table spells out what each combination of alwaysApply, description and globs does. | Not published The format carries no frontmatter and no pattern-matching mechanism; scope is decided by where the file sits. Read on agents.md, which states "Are there required fields? No. AGENTS.md is just standard markdown. Use any headings you like" and documents no glob, path or conditional field. | Yes — .claude/rules/ scoped to paths "Rules can also be scoped to specific file paths, so they only load into context when Claude works with matching files, reducing noise and saving context space." The scoping lives in the rules directory rather than in CLAUDE.md itself. | Yes — applyTo glob in frontmatter "At the start of the file, create a frontmatter block containing the applyTo keyword. Use glob syntax to specify what files or directories the instructions apply to." Multiple patterns are comma-separated, and excludeAgent narrows which Copilot feature reads the file. | Yes — paths frontmatter "Conditional rules let you scope rules to specific parts of your codebase. Rules activate only when you're working with matching files." Written as YAML frontmatter on any rule file; "a rule activates if any pattern matches any file in your context". |
| What wins on a conflict | Team rules take precedence "Team rules work alongside other rule types and take precedence to ensure organizational standards are maintained across all projects." Admins can also mark a rule enforced, which means it "cannot be disabled in Customize". | Nearest file wins; the chat prompt beats all "What if instructions conflict? The closest AGENTS.md to the edited file wins; explicit user chat prompts override everything." | Read last wins — closest file, then local "foo/CLAUDE.md appears in context before foo/bar/CLAUDE.md, so instructions closer to where you launched Claude are read last." Within a directory, "CLAUDE.local.md is appended after CLAUDE.md". All discovered files are concatenated rather than overriding each other. | Personal, then repository, then organisation "Personal instructions take the highest priority. Repository instructions come next, and then organization instructions are prioritized last. However, all sets of relevant instructions are provided to Copilot." This is the only one of the five whose stated order puts the individual above the repository. | Workspace beats global "When both workspace and global rules exist, Cline combines them. Workspace rules take precedence when they conflict with global rules." |
| Published size guidance | Under 500 lines per rule "Keep rules under 500 lines", with the follow-on advice to "split large rules into multiple, composable rules". | Not published agents.md publishes no line count, byte budget or context-cost guidance. Its sizing advice is editorial rather than numeric — "anything you'd tell a new teammate belongs here too". | Under 200 lines per file "Size: target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence." | Not published This page publishes no line count, byte budget or context-cost guidance for copilot-instructions.md. It describes the format and its precedence rules and says nothing about how long the file should be. | Not published No line count or byte budget on this page. The guidance is qualitative — "Rules consume context tokens. Avoid lengthy explanations or pasting entire style guides." |
| What its own docs say about rival formats | Names AGENTS.md as the plain-markdown option "If you prefer plain markdown, use AGENTS.md instead." The page lists AGENTS.md as a rule type of its own — "Simple alternative to .cursor/rules" — and documents nested AGENTS.md support in subdirectories. | Documents migrating in, by rename and symlink "How do I migrate existing docs to AGENTS.md? Rename existing files to AGENTS.md and create symbolic links for backward compatibility." The page also publishes per-tool configuration for Aider and Gemini CLI. | Does not read AGENTS.md; documents importing it "Claude Code reads CLAUDE.md, not AGENTS.md. If your repository already uses AGENTS.md for other coding agents, create a CLAUDE.md that imports it so both tools read the same instructions without duplicating them." A symlink is documented as the alternative, and /init reads Cursor and Copilot rules when generating a file. | Documents AGENTS.md, CLAUDE.md and GEMINI.md as alternatives "You can create one or more AGENTS.md files, stored anywhere within the repository. When Copilot is working, the nearest AGENTS.md file in the directory tree will take precedence … Alternatively, you can use a single CLAUDE.md or GEMINI.md file stored in the root of the repository." | Reads .cursorrules, .windsurfrules and AGENTS.md The supported-rule-types table lists .cursorrules and .windsurfrules as "Automatically detected" and AGENTS.md as the "Standard format for cross-tool compatibility"; "Cline also reads cross-tool global agents instructions from ~/.agents/AGENTS.md". |
“Not published” means that company does not state the figure on the page cited at the foot of this page. It is not a claim that no such figure exists. A company that publishes no limit most likely has none — but “most likely” is not a fact, and this table prints what was read rather than what was inferred.
- Per-directory files — whether the format documents putting a second file next to the code it governs, rather than one file at the repository root
- Path-scoped rules — whether a rule can be limited to files matching a pattern instead of loading into every request, which is the mechanism that decides how much of your context window the file costs
Is .cursorrules deprecated?
Cursor's current rules documentation does not present a single .cursorrules file as the project format any more: it describes project rules as living "in .cursor/rules as .mdc files", and states that "a plain .md file in .cursor/rules is ignored by the rules system because it has no frontmatter to specify description, globs, and alwaysApply". Its file-tree example marks api-guidelines.md as "ignored (wrong extension)". Other vendors still read the old filename: Cline's supported-rule-types table lists .cursorrules as "Automatically detected", and Anthropic's docs say /init "reads Cursor rules, in .cursor/rules/ or .cursorrules". RuleStack tracks .cursorrules and .cursor/rules as separate formats for exactly this reason, and counts both nightly.
What is the alternative to Cursor rules that other agents can read?
AGENTS.md, and Cursor says so on its own rules page: it lists AGENTS.md as a rule type — "Simple alternative to .cursor/rules" — and adds "If you prefer plain markdown, use AGENTS.md instead." It is also the format named as readable in the other vendors' documentation: GitHub's repository-instructions page documents Copilot reading "one or more AGENTS.md files, stored anywhere within the repository", and Cline's rules page lists it as the "Standard format for cross-tool compatibility". agents.md itself is "stewarded by the Agentic AI Foundation under the Linux Foundation".
Which format supports per-directory instructions?
Three of the five, and they are not equivalent. AGENTS.md is per-directory by design — "agents automatically read the nearest file in the directory tree, so the closest one takes precedence" — and Cursor's page confirms it reads them "in the project root and subdirectories". CLAUDE.md files in subdirectories are discovered but load lazily: "instead of loading them at launch, they are included when Claude reads files in those subdirectories". Cursor's own rules and Copilot's instructions are centralised instead: Cursor's subfolders are documented as organisation ("organize rules in folders") and Copilot's extra files sit "within or below the .github/instructions directory", aimed at code by glob rather than by location. Cline's page documents no per-package rules directory at all.
How do I stop instruction files eating my context window?
Scope them, and only two of the five publish a budget to scope them against. Cursor: "Keep rules under 500 lines", split into composable rules. Anthropic: "target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence." AGENTS.md, Copilot instructions and Cline rules publish no number. All four of the non-AGENTS.md formats do publish a scoping mechanism, and they are worth knowing apart: Cursor uses globs plus a description the agent evaluates for relevance, Copilot uses an applyTo glob in frontmatter, Cline uses a paths list in frontmatter, and Claude uses .claude/rules/ files that "can also be scoped to specific file paths". AGENTS.md has no scoping field; its only lever is where you put the file.
Which instruction file wins when several apply?
Every one of the five publishes an answer and they are genuinely different, which is the thing to check before you assume. AGENTS.md and CLAUDE.md both resolve by proximity to the code. Cline resolves by scope: "Workspace rules take precedence when they conflict with global rules." Cursor resolves in favour of the organisation: team rules "take precedence to ensure organizational standards are maintained across all projects", and an enforced team rule "cannot be disabled in Customize". Copilot resolves the other way entirely — "Personal instructions take the highest priority. Repository instructions come next, and then organization instructions are prioritized last" — while still sending every relevant set to the model.
When each of these is the right pick
RuleStack does not sell any of these and has nothing to gain from which one you choose — it scores them. Each case below is the one that option genuinely wins.
- Cursor rules — You want a rule that only loads when it is relevant, and you want the agent — not a glob you maintained by hand — to make that call. Cursor is the only one of the five whose docs publish the full decision table for when a rule is included: `alwaysApply: true` always, a `globs` pattern on a file match, a `description` alone when "agent reads the description and pulls the rule in when relevant", and nothing at all until you @-mention it. Nobody else documents a description-triggered rule, and on a large repository that is the difference between five rules in context and fifty.
- AGENTS.md — More than one agent touches the repository, or you do not know yet which one will. It is the only format of the five that is not owned by the tool that reads it — "AGENTS.md is now stewarded by the Agentic AI Foundation under the Linux Foundation" — and the only one whose own page lists the other vendors' agents as readers rather than as rivals. It is also the smallest thing to write: no frontmatter, no extension rules, no directory to create. "Are there required fields? No. AGENTS.md is just standard markdown."
- CLAUDE.md — Your instructions are outgrowing one file and you want the composition handled for you. CLAUDE.md is the only format of the five with a documented import syntax — `@path/to/import`, resolved recursively "with a maximum depth of four hops" — so a shared standards file can live in one place and be pulled into several. It is also the only one that documents a personal, gitignored companion file (`CLAUDE.local.md`) alongside the team-shared one, which is the thing people otherwise solve by never committing their rules at all.
- Copilot instructions — The instructions have to apply on github.com and not only in an editor — pull-request review, the cloud agent, chat on the repository page. Copilot's is the only one of the five documented as a server-side repository setting rather than a file a local tool happens to read, and the only one with a documented way to aim a rule at one Copilot feature and not another: `excludeAgent: "code-review"`, which the page says makes a file "only be read by Copilot cloud agent".
- Cline rules — You want to turn a rule off for an afternoon without deleting it, and you have inherited rule files from three other tools. Cline is the only one of the five that documents a per-rule toggle in the UI — "you might have a strict testing rule that you want to disable when prototyping" — and the only one whose docs say it reads .cursorrules, .windsurfrules and AGENTS.md automatically as well as its own format, which makes it the cheapest of the five to adopt on a repository that already has rules in it.
What was checked, and when
Prices and limits move, and a page quoting a stale one is worth less than a page quoting none. Every source is printed here so a reader can check it against the day they are reading this, and a job re-fetches each of these URLs on a schedule and fails when a figure above no longer appears on the page it came from.
- Cursor rules — cursor.com/docs/context/rules — Where the file lives, Per-directory files, Path-scoped rules, What wins on a conflict, Published size guidance, What its own docs say about rival formats. Read 2026-08-14.
- AGENTS.md — agents.md — Where the file lives, Per-directory files, Path-scoped rules, What wins on a conflict, Published size guidance, What its own docs say about rival formats. Read 2026-08-14.
- CLAUDE.md — code.claude.com/docs/en/memory — Where the file lives, Per-directory files, Path-scoped rules, What wins on a conflict, Published size guidance, What its own docs say about rival formats. Read 2026-08-14.
- Copilot instructions — docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions — Where the file lives, Per-directory files, Path-scoped rules, What wins on a conflict, Published size guidance, What its own docs say about rival formats. Read 2026-08-14.
- Cline rules — docs.cline.bot/features/cline-rules — Where the file lives, Per-directory files, Path-scoped rules, What wins on a conflict, Published size guidance, What its own docs say about rival formats. Read 2026-08-14.
Last verified 2026-08-14. https://rulestack.kynth.studio/cursor-rules-alternatives
