rules

A set of standards for writing .mdc files, which are instruction files that guide AI coding assistants in a project.

In plain words
What is it for?
Use it to structure rule files, choose matching file patterns, set when rules apply, and record focused coding guidance.
Why use it?
It reduces vague, duplicated, or overly long instructions and makes it clearer when each rule applies.

Cursor rule for Cursor

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add rules/m3au/playwright-bdd-cursor-template/rules
Clone the repo
git clone --depth 1 https://github.com/m3au/playwright-bdd-cursor-template

Made for: Cursor.

Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 804 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.00804
Opus 5 $0.00000 $0.00402
Sonnet 5 $0.00000 $0.00161
Haiku 4.5 $0.00000 $0.00080

Measured yesterday against content hash e0bc6a26fd89, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

rules scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

Commands: `command > /dev/sda`, `rm -rf $UNSAFE_VAR/*`, `find . -delete` (dangerous, hooks may not catch)
.cursor/rules/rules.mdc · 116 lines

How it starts

The opening of the file, as written. The whole thing — 116 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Rule File Standards

Cursor rules provide contextual guidance to AI assistants working on the codebase. They must be precise, non-redundant, and token-efficient.

File Headers

---
globs: ['path/pattern/**/*.ts']
description: 'Concise one-line description'
alwaysApply: false
---

File organization: Single h1 title, brief purpose, reference codebase locations (not inline examples), market standards + project guidance, actionable checklist

Content Standards

Each rule must have:

  • Single responsibility: One focused topic per file
  • Scope: Project-agnostic (universal best practices) OR project-specific (codebase context)
  • No overlaps: Avoid redundancy with other rules
  • Minimal tokens: Avoid boilerplate; include reference catalogs when AI needs them to choose between options

Glob Patterns

Specify exact file patterns. Examples:

  • tests/e2e/poms/**/*.ts - POM files
  • tests/e2e/features/**/*.feature - Feature files
  • **/*.{test,spec}.ts - Test files

AlwaysApply Flag

Set alwaysApply: true only for:

  • Core communication principles (core.mdc)
  • Universal quality standards (comments.mdc, dependencies.mdc)

Never use for domain-specific rules (api, frontend, security, etc.)

Writing Guidelines

  • Point to codebase locations instead of generic examples
  • Include reference catalogs when AI needs them to choose between options
  • Avoid boilerplate: Don't show "how to do it" when examples exist in codebase
  • Never reference codebase for obvious patterns (one-liners, basic ternaries) - only non-obvious or project-specific
  • Reference market standards (WCAG, OWASP, framework conventions)
  • Sort logically: basics → advanced
  • Keep paragraphs to 2-3 sentences; use lists, not long prose

Token Optimization

For alwaysApply: true rules, use compression techniques:

Abbreviations

  • A: for "Always"
  • N: for "Never"
  • + for "Do" (positive actions)
  • - for "Don't" (negative actions)

Example:

- A: explain non-obvious code
- N: commit commented-out code

* Complex business logic, non-obvious workarounds

- Comment out code - delete it

Read the full file on GitHub · 116 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 116 lines · 0 tokens per session scan C e0bc6a26fd89

Subscribe to this mod's changes

rules is a cursor rule published in the GitHub repository m3au/playwright-bdd-cursor-template (2 stars, last pushed 6mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 804 tokens. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.