CLAUDE.md и Cursor Rules решают одну проблему: AI не помнит ничего между сессиями. Каждый раз — чистый лист, ноль знаний о твоем стеке, архитектуре, запретах. Один правильно написанный файл — и больше не нужно повторять «используй TypeScript strict m…
10+ лет в маркетинге, 300+ клиентских проектов: сайты, реклама, боты. Создатель GoBanana (228K+ пользователей, 11.6 млн ₽ выручки) и VibeCoderz. Делаю AI-продукты сам через Claude Code, Cursor, Windsurf и консультирую тех, кто хочет так же.
Об авторе →Claude Code: новый CLI-агент от Anthropic
Anthropic выпустила Claude Code — терминальный AI-агент для разработчиков. Инструмент работает прямо в командной строке и умеет писать, редактировать и запускать код.
Zcode AI: Полный гид по визуальному интерфейсу для Claude Code и AI-агентов
Узнайте, как использовать Zcode для управления Claude Code, Gemini и Codex в едином GUI. Настройка провайдеров, MCP-серверов и визуальный вайбкодинг.
YouTube-канал с монетизацией из любой точки мира: Пошаговый гайд 2024
Инструкция по созданию YouTube-канала: обход блокировок SMS, настройка расширенных функций через виртуальные номера и правила безопасности для монетизации.
Windsurf Code Maps: Как глубоко понимать архитектуру проекта перед написанием кода
Полный гайд по Windsurf Code Maps, модели Sway 1.5 и Sway Grep. Узнайте, как визуализировать архитектуру кода и ускорить разработку в 13 раз.
Vk Fast Cash Strategy
Аудитория ВКонтакте — это те же люди, что и в Instagram, но 'социальный контракт' площадки другой. Если Instagram — это 'дорогой ресторан' с демонстрацией успеха, то VK — это 'душевная шашлычная'. Здесь не работает глянцевый 'успешный успех
CLAUDE.md и Cursor Rules решают одну проблему: AI не помнит ничего между сессиями. Каждый раз — чистый лист, ноль знаний о твоем стеке, архитектуре, запретах. Один правильно написанный файл — и больше не нужно повторять «используй TypeScript strict mode» в каждом чате. Здесь разберем, как настроить оба инструмента под реальный проект, с готовыми шаблонами для Next.js, Supabase и TypeScript.
У языковых моделей нет постоянной памяти. Cursor, Claude Code, Windsurf, Copilot — все работают одинаково: запрос пришел, ответ дан, контекст сброшен. Без файла с инструкциями AI не знает ни твоих папок, ни запретов, ни того, что в проекте используется shadcn, а не самописные компоненты.
Решение — контекстные файлы. Они загружаются в начале каждой сессии и дают AI «брифинг» перед работой. Это не магия. Это просто система.

В 2026 году у каждого инструмента свой файл:
| Инструмент | Файл |
|---|---|
| Claude Code | CLAUDE.md |
| Cursor | .cursor/rules/*.mdc |
| Windsurf | .windsurfrules |
| GitHub Copilot | .github/copilot-instructions.md |
| Codex CLI | AGENTS.md |
Принцип один. Форматы чуть разные. Дальше — по каждому подробно.

CLAUDE.md — это Markdown-файл, который Claude Code читает перед каждой сессией. Не перед каждым сообщением — именно перед сессией, когда агент запускается в терминале командой claude.
Три места, где его класть, дают разный эффект:
~/CLAUDE.md) — универсальные инструкции для всех проектов. Стиль кода, личные предпочтения, запреты../CLAUDE.md) — контекст всего проекта. Стек, структура папок, деплой-команды../src/components/CLAUDE.md) — специфика конкретного модуля. Claude загружает все файлы по цепочке.Это «слоистость» — термин из транскрипций видео от Anthropic. Универсальные правила в домашней папке, проектные в корне, модульные внутри.
Максим: «Я держу в ~/CLAUDE.md три вещи: запрет на комментарии-пояснялки в коде, требование TypeScript strict mode и напоминание не трогать файлы, которые я не упомянул. В VibeCoderz эта тройка спасла меня от переписывания кода раз десять точно.»

Claude Code умеет создать первый черновик сам. Запускаешь в корне проекта:
claude
/initАгент анализирует структуру файлов, package.json и генерирует CLAUDE.md. Это отправная точка — не готовый файл. Дальше его нужно дорабатывать под реальные «болевые точки» проекта.
Лайфхак из практики: когда фиксируешь сложный баг, не просто исправляй его. Попроси AI написать, через какие «кроличьи норы» вы прошли, и добавь это в CLAUDE.md. Через два-три таких случая файл становится по-настоящему полезным.

Старый формат .cursorrules в корне проекта работает, но с ограничениями. В Agent mode он игнорируется полностью. Cursor официально рекомендует переходить на .cursor/rules/*.mdc.
Разница не только в названии. В .mdc появились четыре режима активации:
| Режим | Когда срабатывает |
|---|---|
| Always | Каждый раз, без условий |
| Auto Attached | Когда открыт файл, совпадающий с glob-паттерном |
| Agent Requested | AI сам решает, когда нужно |
| Manual | Только по прямому вызову через @rule-name |
Это означает: правило для React-компонентов срабатывает только когда работаешь с .tsx файлами. Правило для API-роутов — только в src/app/api/**. Контекст не тратится на нерелевантные инструкции.
Лимиты, которые важно знать: один .mdc файл — до 500 строк, суммарный объем правил с режимом «Always» — до 2000 токенов. Это не много. Держи каждое правило коротким и конкретным.

Коротко: это не конкуренты. Это разные инструменты для разных случаев.
| Cursor Rules (.mdc) | CLAUDE.md | |
|---|---|---|
| Для чего | Постоянные инструкции внутри Cursor IDE | Контекст для Claude Code в терминале |
| Когда загружается | При каждом AI-взаимодействии в Cursor | Перед каждой сессией агента |
| Поддержка мультиинструментов | Только Cursor | Claude Code + через AGENTS.md |
| Glob-фильтрация | Есть (режим Auto Attached) | Только через поддиректории |
| Версионный контроль | Git-friendly | Git-friendly |
Если работаешь только в Cursor — Cursor Rules достаточно. Если используешь несколько инструментов — оптимальная схема: общие инструкции в AGENTS.md, специфика Cursor в .mdc, специфика Claude в CLAUDE.md.
Есть и хак для ленивых: симлинк AGENTS.md -> .cursorrules. Один источник правды для всех инструментов.

Плохой системный промпт — это список пожеланий. Хороший — это онбординг для нового члена команды, который ни разу не видел твой проект.
Четыре обязательных блока:
Что делает приложение. Технический стек. Критичные зависимости. Без лишних деталей — AI должен понять суть за 10 секунд.
Не полный листинг — только неочевидные вещи. Где живут компоненты. Где API-роуты. Где общие утилиты. AI часто ошибается именно здесь: кладет файлы не туда.
Это самое ценное. Список анти-паттернов, специфичных для проекта. Не «не пиши плохой код» — а конкретно: «не используй default exports», «не добавляй комментарии без запроса», «не трогай файлы вне указанной области».
Как запустить dev-сервер. Как прогнать тесты. Как задеплоить. AI часто придумывает команды из головы — это лечится четкими инструкциями в файле.
Чего не писать: полную документацию API, длинные философские рассуждения о коде, секреты и ключи. Первое пожирает контекст, второе игнорируется, третье — уязвимость.

Готовый шаблон под стек, который используется в большинстве вайбкодинг-проектов. Копируй, правь под свои нужды:
# Project Context
Next.js 14 App Router + TypeScript strict mode + Supabase + Tailwind CSS + shadcn/ui.
Deployed on Railway via Docker.
## Stack
- Runtime: Node 20+, pnpm
- Frontend: Next.js App Router, React Server Components
- DB: Supabase (Postgres via @supabase/ssr)
- Auth: Supabase Auth
- UI: Tailwind CSS + shadcn/ui components
- Validation: Zod
## Key Directories
- /src/app — App Router pages and layouts
- /src/components/ui — shadcn primitives only, do not modify
- /src/components — domain components
- /src/lib — utilities and Supabase client
- /src/actions — Server Actions (mutations go here, not in route handlers)
## Commands
- Dev: pnpm dev
- Build: pnpm build
- Type check: pnpm tsc --noEmit
- Lint: pnpm lint
## Rules
- TypeScript strict mode. No `any`. No type assertions without comment.
- Server Components by default. Add `"use client"` only when truly needed.
- Mutations go in /src/actions as Server Actions. No API routes for mutations.
- shadcn components go in /src/components/ui. Never modify them — extend instead.
- No default exports except for Next.js pages and layouts.
- No console.log in production code. Use proper error handling.
- Do not touch files outside the scope of the current task.
- Verify imports — do not invent exports that don't exist.
## Avoid
- `any` type
- Default exports (except pages/layouts)
- Inline styles — Tailwind only
- Route handlers for mutations
- Modifying /src/components/ui directlyЭтот .mdc файл активируется автоматически при работе с .tsx файлами:
---
description: React component conventions for this project
alwaysApply: false
globs: ["src/components/**/*.tsx", "src/app/**/*.tsx"]
---
# React Component Rules
## Structure
- Functional components only. No class components.
- Props interface defined directly above the component.
- Named exports only (no default exports).
- One component per file.
## TypeScript
- Strict typing. No `any`.
- Use `ComponentProps<typeof Component>` for extending built-in types.
- Prefer `interface` over `type` for component props.
## Styling
- Tailwind utility classes only.
- No inline styles.
- No CSS modules.
- Use `cn()` from @/lib/utils for conditional classes.
## shadcn/ui
- Import from @/components/ui — never from radix directly.
- Extend via wrapper components, never modify originals.
## Avoid
- `useEffect` for data fetching — use React Server Components or SWR.
- Prop drilling more than 2 levels — use composition or Context.
- Unnecessary `"use client"` directives.Это самый недооцененный способ — и он работает лучше, чем писать правила вручную.
Открываешь Cursor. Находишь компонент или утилиту, которые написаны идеально — именно так, как ты хочешь. Дальше в чате:
add cursor rules [имя-правила]
/generate cursor rules
Analyze the attached file carefully and outline all conventions found.
Output as one rule file only.Cursor анализирует файл и создает правило, которое описывает стиль, паттерны пропсов, обработку ошибок, именование. Работает для любого типа файла: компонент, утилита, API-роут, тест.
Один видеоавтор из наших транскрибаций сделал точно так: взял идеальный компонент лендинга с гибкими пропсами (строка, React-компонент или children) и сгенерировал правило. На выходе — точное описание стиля, которое потом применялось ко всем новым компонентам автоматически.

Есть один мета-прием, о котором говорят мало. Правило self-improve учит Cursor создавать новые правила самостоятельно — на основе паттернов, которые он замечает в твоем коде.
Логика такая: AI видит, что ты три раза исправил одну и ту же ошибку. Вместо того чтобы продолжать её делать, он создает новое правило, которое запрещает этот паттерн. Inception второго уровня.
Правило выглядит примерно так:
---
description: Improve cursor rules based on patterns and bugs
alwaysApply: true
---
When you notice a recurring pattern, bug, or convention:
1. Check if it appears 3+ times across the codebase
2. If yes — propose creating a new cursor rule
3. New rule should be specific, not generic
4. Reference relevant files if needed
Format for new rules: follow the conventions in .cursor/rules/cursor-rules-format.mdcПара нюансов: не включай этот режим если боишься, что AI будет слишком агрессивно создавать правила. На больших командах это может привести к конфликтам. На сольном проекте — работает отлично.
Файл написан — но AI все равно косячит. Скорее всего, одна из этих причин:
Слишком длинный файл. Всё, что превышает ~2000 токенов в режиме «Always», начинает съедать рабочий контекст. Правила на 800 строк, которые никто не поддерживает — хуже, чем отсутствие правил.
Общие инструкции вместо конкретных. «Пиши чистый код» — бесполезно. «Не используй default exports» — полезно. «Следи за архитектурой» — бесполезно. «Мутации только в /src/actions через Server Actions» — полезно.
Устаревшие данные. Обновил версию Next.js? Перешел с Prisma на Drizzle? Файл нужно обновить. Правило, которое описывает паттерны прошлой версии фреймворка, активно вредит.
Правила только для одного инструмента. Если команда использует и Cursor, и Claude Code — нужны оба файла. Или AGENTS.md как единый источник, с симлинками.

Чем отличается CLAUDE.md от .cursorrules?
CLAUDE.md читает Claude Code (терминальный агент Anthropic). .cursor/rules/*.mdc читает Cursor IDE. Один инструмент — один файл. Если используешь оба — нужны оба. Содержимое можно сделать одинаковым, только форматы отличаются.
Нужно ли добавлять эти файлы в .gitignore?
Нет, наоборот. Эти файлы должны быть в репозитории — тогда вся команда работает с одинаковым контекстом AI.
Можно ли хранить одни правила для всех инструментов?
Да. AGENTS.md становится стандартом — его читают Cursor, Codex CLI и другие. Плюс симлинки: один файл как источник, несколько имен файлов как алиасы.
Как часто обновлять CLAUDE.md?
После каждого болезненного баг-фикса. После смены мажорной версии фреймворка. После добавления новой библиотеки в стек. Раз в месяц — минимальная гигиена.
Влияет ли размер файла на качество ответов AI?
Напрямую. Всё, что написано в файле — это токены в контекстном окне. Лаконичный файл на 200 строк с конкретными правилами работает лучше, чем 800 строк общих рекомендаций.
Есть ли готовые шаблоны для других стеков?
Для Next.js + Prisma, Vue 3 + Pinia, FastAPI + SQLAlchemy — ищи на cursorrules.directory или awesomecursor.rules. Бери за основу и адаптируй под свой проект.
Где взять стартовый CLAUDE.md?
В Claude Code — команда /init в терминале генерирует черновик на основе структуры проекта. Дальше дорабатываешь вручную.
System prompt (системный промпт) — инструкции, которые загружаются в AI до начала разговора. Задают контекст, стиль, ограничения.
CLAUDE.md — файл системного промпта для Claude Code (терминальный агент Anthropic). Markdown-формат.
Cursor Rules (.mdc) — файлы конфигурации AI в Cursor IDE. Хранятся в .cursor/rules/. YAML frontmatter + Markdown.
AGENTS.md — универсальный формат, который читают несколько AI-инструментов. Создан для снижения дублирования.
Prompt caching — кэширование повторяющихся частей промпта для снижения расхода токенов. Правила, которые не меняются — отличный кандидат для кэширования.
Context window (контекстное окно) — максимальное количество токенов, которое AI обрабатывает за один раз. Системные файлы потребляют его часть.
Glob-паттерн — шаблон для указания файлов по маске. Например, src/**/*.tsx — все TypeScript React-файлы в папке src.
Agent mode — режим Cursor, в котором AI самостоятельно выполняет цепочку действий. Старые .cursorrules в этом режиме игнорируются.
Два шага на сегодня:
/init — получи черновик CLAUDE.md за 30 секунд. Отредактируй секцию Avoid под свои реальные боли..cursor/rules/react.mdc с glob src/**/*.tsx и пропиши туда три главных правила своего проекта.Посмотреть, какие инструменты используют вайбкодеры для ускорения разработки — в каталоге AI-инструментов. Там же обзоры Claude Code и Cursor с реальными сравнениями.
Если хочешь настроить системный промпт под конкретный стек проекта — запишись на консультацию к Максиму. Разберем структуру, пропишем правила и настроим под твою команду.
Обновлено: март 2026. Статья отражает актуальные форматы Cursor 2.6, Claude Code и текущие рекомендации по настройке AI-окружения для вайбкодинга.