Any language

Testing discipline rules for Cursor

Make the agent prove changes with tests instead of declaring success.

The rule

Save as .cursor/rules/testing.mdc. Cursor picks it up on the next request.

.cursor/rules/testing.mdc

---
description: How to verify changes before finishing
alwaysApply: true
---

- Before saying a task is done, run the project's test, lint and typecheck commands and report the results.
- When fixing a bug, first add a test that fails for the bug, then make it pass.
- Do not delete or skip failing tests to get a green run.
- If a command cannot run in this environment, say so instead of guessing the outcome.

How Cursor loads this rule

Read from the frontmatter above, per Cursor's rules documentation.

  • alwaysApply: true: included in every chat session. Globs and description are ignored.
  • Keep the .mdc extension. A plain .md file in .cursor/rules is ignored by the rules system.
  • Prefer to generate your own? Type /create-rule in Agent and describe what you want; Cursor saves the file to .cursor/rules.
  • Team Rules come first, then Project Rules like this one, then User Rules. Earlier sources win when guidance conflicts.

Cursor rules setup guideCursor Team RulesLet Cursor run commands without asking

Using another agent too?

The same instructions work as plain Markdown in AGENTS.md, which Codex, Gemini CLI, GitHub Copilot and most other coding agents read.

AGENTS.md (section)

## Testing discipline

- Before saying a task is done, run the project's test, lint and typecheck commands and report the results.
- When fixing a bug, first add a test that fails for the bug, then make it pass.
- Do not delete or skip failing tests to get a green run.
- If a command cannot run in this environment, say so instead of guessing the outcome.

More templates

Get Cursor rules and settings changes by email

When Cursor changes how rules, run modes or settings work, we update these templates from the docs and send a short note. One email a week at most.

Reviewed Oct 17, 2026. Written by AgentAtlas. Adapt it to your codebase before relying on it.