Руководство · Cursor
Cursor Rules: как задать правила проекту
Cursor Rules — постоянные инструкции для Agent Chat в репозитории (.cursor/rules/*.mdc, при необходимости AGENTS.md). В них фиксируют стек, команды lint/test/build и запреты, чтобы агент не «забывал» контекст между сессиями. Минимум: один .mdc с alwaysApply: true или globs под ваш стек, затем проверка в новом Agent-чате.

Что такое Cursor Rules и зачем они нужны
Cursor Rules — постоянные текстовые инструкции для Agent Chat: стек, команды проверки, стиль кода и запреты. Они живут в репозитории (или в настройках аккаунта) и подмешиваются в контекст агента, чтобы не копировать одни и те же абзацы в каждый новый чат.
На разборе это выглядит предсказуемо. Ученик открывает второй Agent-чат на том же проекте, просит «почини тест» — и агент предлагает Jest, хотя вчера мы настраивали Vitest. Или лезет в package.json с правками, которые мы уже запретили. Без rules модель ориентируется на открытые файлы и последние сообщения; с rules — на явную «память проекта».
Важная граница, которую я проговариваю сразу: все Cursor Rules работают только в Agent Chat. Tab (автодополнение) и Inline Edit (Cmd/Ctrl+K) их не читают. Rules не заменяют ESLint, Prettier, CI и code review — они снижают разброс ответов, но не дают детерминированного «всегда так».
По запросам в Wordstat люди ищут «cursor rules», «cursor правила», «правила для курсора» — по сути один интент: как зафиксировать контекст проекта, чтобы агент не «забывал» стек между сессиями.
Где хранятся правила: `.cursor/rules`, `AGENTS.md` и типы подключения
Проектные cursor правила по умолчанию лежат в папке .cursor/rules/ в корне workspace. Канонический формат файла — .mdc: YAML frontmatter сверху и markdown-тело с инструкциями. Plain .md в этой папке без frontmatter Cursor игнорирует — на разборе часто вижу скопированный rules.md, который «молчит» именно по этой причине.

Альтернатива — AGENTS.md в корне или в подпапке: plain markdown без frontmatter, кросс-инструментовый вариант (Codex, Copilot и др. тоже умеют читать такие файлы). Nested AGENTS.md в подпапке по официальной доке применяется к файлам в этом каталоге и ниже.
Уровни правил, если коротко:
| Уровень | Где | В git? | Когда |
|---|---|---|---|
| Team Rules | Dashboard Cursor (Team/Enterprise) | Нет | Agent Chat; enforce не отключается |
| Project Rules | .cursor/rules/*.mdc | Да | Agent Chat; четыре режима через frontmatter |
| User Rules | Customize → Rules | Нет | Agent Chat only |
| AGENTS.md / CLAUDE.md | Корень или подпапки | Да | Agent Chat |
При конфликте приоритет: Team → Project → User. Личные User Rules не перебивают team/project enforce.
Файл .cursorrules в корне — legacy, deprecated. Если он ещё есть, я мигрирую содержимое в .mdc с alwaysApply: true и убираю дубль: по опыту с форумов при совпадении текста побеждает .mdc, и правки только в .cursorrules могут «не срабатывать».
Четыре режима Project Rules в UI Cursor (2026):
| Режим в UI | Frontmatter | Поведение |
|---|---|---|
| Always Apply | alwaysApply: true | В каждый Agent-чат |
| Apply to Specific Files | globs: [...], alwaysApply: false | Когда файлы по glob в контексте чата |
| Apply Intelligently | description: "...", без globs | Агент решает по description — для критичных запретов я не полагаюсь |
| Apply Manually | без description/globs/alwaysApply | Только через @rule-name в чате |
Нюанс Cursor 2.x: rule с globs и alwaysApply: false подхватывается, когда файл по glob уже в контексте чата (@-mention или агент читает файл для правки), а не просто открыт в редакторе. Это объясняет половину «правило молчит» на разборах.
В монорепо отдельная папка packages/api/.cursor/rules/ по сообщениям на форуме не сканируется — практический workaround: AGENTS.md внутри пакета. Официально nested AGENTS.md поддерживается; для nested .cursor/rules в подпакете — только с оговоркой «по опыту / форум».
Минимальный рабочий пример `.mdc` для небольшого репозитория
Ниже — не «идеальный шаблон с курса», а демо-структура. Вы подставляете свой стек, реальные команды и запреты. Я специально оставляю плейсхолдеры: на наставничестве мы заполняем это из вашего package.json, а не из чужого GitHub-пака.
Типовая раскладка файлов:
project/
AGENTS.md # опционально: кросс-tool база
.cursor/rules/
00-project-overview.mdc # alwaysApply: true — стек и общие запреты
frontend-react.mdc # globs: src/**/*.tsx
tests.mdc # globs: **/*.test.tsБазовый overview — 00-project-overview.mdc:
---
description: Базовые соглашения проекта
alwaysApply: true
---
- Стек: Node 20, TypeScript, Vite, React 18
- Проверка: npm run lint && npm run test && npm run build
- Комментарии в коде и ответы агента — на русском, если задача на русском
- Перед удалением файлов или массовым рефакторингом — спросить
- Не коммитить секреты (.env, ключи API)
- Не менять lockfile без явной задачиЗональное правило для фронта — frontend-react.mdc:
---
description: React/TSX в src/
globs: src/**/*.tsx
alwaysApply: false
---
- Named exports, не default export
- Стили: Tailwind; не добавлять inline style без причины
- Новые компоненты — в src/components/, не в корень src/Таблица «строка → зачем» для overview:
| Строка в .mdc | Зачем |
|---|---|
alwaysApply: true | Правило в каждый Agent-чат без @-mention |
| Стек (Node, TS, фреймворк) | Агент не «угадывает» Jest vs Vitest |
| Команды lint/test/build | После правок агент знает, что прогнать |
| Язык ответов | Стабильный тон в чате |
| «Спросить перед удалением» | Меньше случайных rm -rf в diff |
| Запрет секретов | Меньше утечек в коммит |
| Lockfile | Меньше шумных merge-конфликтов |
Официальный best practice: до 500 строк на файл, один файл — одна тема, для длинных кусков кода — @filename в rule вместо копипасты. Для старта хватает одного alwaysApply overview на 5–15 пунктов.
Создать файл можно вручную, через Customize → Rules → Add Rule, command palette «New Cursor Rule», или командой /create-rule в Agent-чате — агент положит .mdc в .cursor/rules/.
На наставничестве такой overview обычно собираем из вашего package.json и регламента команды — не из чужого GitHub-пака. Обсудить в Telegram.
Как проверить, что rules реально работают
Проверка rules — отдельный шаг после настройки; без неё легко жить с «молчащим» frontmatter.
Чек-лист, который я прохожу на разборе (5–7 пунктов):
- 01
Customize → Rules → Project Rules — файл виден, режим (Always / Specific Files / …) совпадает с frontmatter.
- 02
Новый Agent-чат — не продолжение старого; в старом контекст мог перекрыть ожидания.
- 03
Вопрос агенту: «Какие project rules сейчас активны?» — сверяю с тем, что завёл в
.mdc. - 04
Тестовая задача в зоне glob — открываю или @-mention файл под
globs, прошу типовую правку; смотрю, подтянулось ли зональное правило. - 05
Тест запрета — прошу удалить папку или поменять lockfile; агент должен остановиться и спросить (не гарантия 100%, но без rule часто идёт вперёд).
- 06
Команды проверки — после правки прошу «прогони тесты»; агент должен вызвать те команды, что в overview, а не выдуманные.
- 07
Git —
.cursor/rules/иAGENTS.mdзакоммичены; коллега в новом клоне получает те же rules.
Если glob-rule не срабатывает: проверяю расширение .mdc, закрывающий --- в YAML, путь glob, что файл реально в контексте чата, а не только в табе редактора.

<!-- cta: telegram-audit-rules-mid -->
Cursor Rules vs Skills vs Agent mode — в чём разница
Rules, Skills и Agent mode часто смешивают в одном чате — отсюда ожидание «rule сам запустит линтер». Разделение простое: rules — текст в контексте; skills — подключаемые процедуры/скрипты; Agent mode — режим работы агента с инструментами.
| Cursor Rules | Skills | Agent mode | |
|---|---|---|---|
| Что это | Постоянные инструкции в .mdc / AGENTS.md | Навыки, часто с SKILL.md и скриптами | Режим Agent Chat с правкой файлов |
| Где живёт | .cursor/rules/, AGENTS.md, User/Team | .cursor/skills/ и др. | UI: Agent (не Ask/Plan) |
| Когда | Каждый чат (или по glob / @) | Когда агент вызывает skill | Когда вы в Agent и даёте задачу |
| Не заменяет | CI, linter, hooks | Rules (дополняет) | Rules (читает их) |
Запросы «cursor skills» и «cursor agent» в Wordstat тянут смежные темы — у меня на это отдельные материалы: про Cursor Agent mode (безопасный рабочий процесс) и про skills в будущих статьях. Здесь — только граница: rule не выполняет npm test сам по себе, он подсказывает агенту, что выполнить.

Типичные ошибки при настройке rules
«Правило молчит» — самый частый тикет после второго занятия. Типовые причины:
.mdвместо.mdcв.cursor/rules/— файл не rule.- Битый YAML — пропущен
---, кавычки в description; иногда rule падает молча. - Apply Intelligently для критичного запрета — я для запретов только Always Apply или globs + тест.
- Два alwaysApply на 300+ строк — съедает контекст; дроблю на темы.
- Дубль AGENTS.md и overview.mdc с противоречиями — агент выбирает случайно.
- Скопированный пак с GitHub без проверки frontmatter — в открытых rule-паках часто битая разметка.
- Ожидание Tab/Inline — rules туда не попадают по дизайну Cursor.
- Glob без файла в контексте чата — после Cursor 2.x открытый таб не всегда считается.
Диагностика в шесть шагов: расширение → YAML → режим Apply → путь в корне workspace → контекст glob → нет ли конфликтующего .cursorrules.
На разборе один кейс: ученик держал alwaysApply: true overview на 40 пунктов из чужого monorepo-template. Агент «забывал» код — потому что в контексте почти не оставалось места для файлов. Сократили до 12 пунктов про свой репо — стабильность выросла, хотя 100% соблюдения rules всё равно никто не обещает.
Cursor Rules и проекты на 1С
Запрос «cursor rules 1c» (~30 показов в месяц в Wordstat) — узкий, но живой. Cursor Rules для 1С работают по той же механике: .mdc в корне workspace с alwaysApply: true, в теле — стек (1С:Предприятие, версия платформы, где конфигурация), команды проверки (если у вас скрипт выгрузки/синтакс-проверки — явно прописать), запреты (не трогать production-выгрузку без подтверждения).
Я не обещаю, что агент станет «1С-разработчиком из коробки»: rules не заменяют знание метаданных и вашего регламента. Но фиксация «отвечай про процедуры в стиле BSL, не генерируй SQL вместо запросов 1С» снижает разброс в Agent Chat так же, как в JS-проектах.
<!-- cta: telegram-audit-rules -->
Если rules конфликтуют, «молчат» или вы скопировали чужой пак без понимания frontmatter — на наставничестве разбираю ваш реальный .cursor/rules, а не шаблон с курса.
Что прислать в Telegram:
- ссылку на репозиторий или фрагмент
.mdc; - что уже пробовали (новый чат, @-mention, globs);
- где застряли: YAML, Apply Intelligently или монорепо.
Попросить аудит правил в Telegram
Дальше по цепочке: промпты для Cursor и Cursor Agent mode. Если Agent mode ещё не настроен — первый рабочий сценарий.
Частые вопросы
Что такое Cursor Rules?
Cursor Rules — постоянные текстовые инструкции для Agent Chat: стек, команды проверки, стиль и запреты. Обычно живут в .cursor/rules/*.mdc или в AGENTS.md и коммитятся в git, чтобы агент не «забывал» контекст проекта между сессиями.
Где создать файл rules в Cursor?
Проектные rules — в папке .cursor/rules/ в корне workspace, файлы с расширением .mdc. Создать можно вручную, через Customize → Rules → Add Rule, command palette «New Cursor Rule» или командой /create-rule в Agent-чате. Альтернатива — AGENTS.md в корне или подпапке.
Чем Cursor Rules отличаются от Skills?
Rules — текст в контексте агента (что делать и что не делать). Skills — подключаемые навыки, часто с SKILL.md и скриптами, которые агент вызывает по задаче. Rule не запускает линтер сам; skill может содержать процедуру или команду.
Нужен ли AGENTS.md, если уже есть `.cursor/rules`?
Не обязательно. AGENTS.md — plain markdown без frontmatter, удобен для кросс-инструментов и nested правил в подпапках. .mdc даёт globs и alwaysApply. Можно один формат или комбинация, главное — не дублировать противоречия.
Что такое `alwaysApply` и `globs` в rules?
alwaysApply: true — правило попадает в каждый Agent-чат. globs с alwaysApply: false — правило подтягивается, когда файлы по шаблону уже в контексте чата (в Cursor 2.x не всегда при простом открытии в редакторе). Без globs и alwaysApply — только через @rule-name вручную.
Подходят ли Cursor Rules для проекта на 1С?
Да, механика та же: .mdc с стеком (платформа, конфигурация), командами проверки и запретами. Rules не заменяют знание метаданных и регламент 1С, но фиксируют стиль BSL и границы правок в Agent Chat.
Работают ли rules в Tab и Inline Edit (Cmd/Ctrl+K)?
Нет. Все Cursor Rules — только для Agent Chat. Tab (автодополнение) и Inline Edit их не читают. Для форматирования и линта — ESLint, Prettier, CI.
Как связаны Rules и Agent mode?
Agent mode — режим Agent Chat, где агент правит файлы. Rules подмешиваются в контекст этого режима. Ask и Plan rules не подставляют так же, как Agent. Подробнее — в материале про Cursor Agent mode.
Связанные страницы

Попросить аудит правил в Telegram
Разберём ваш реальный `.cursor/rules`: frontmatter, globs и конфликты — не шаблон с курса.
Отвечаю сам — без бота и «оставьте заявку».





