VibeCoderzVibeCoderz
Все статьи
Промпты2026/05/057 мин чтения

Системный промпт для кода: как настроить Claude и Cursor под свой стек раз и навсегда

Установив один файл «CLAUDE.md» и правила Cursor, вы избавляетесь от необходимости каждый раз прописывать стек, ограничения и архитектуру проекта, экономя время и повышая точность кода.

Содержание (13)+

CLAUDE.md и Cursor Rules решают одну проблему: AI не помнит ничего между сессиями. Каждый раз — чистый лист, ноль знаний о твоем стеке, архитектуре, запретах. Один правильно написанный файл — и больше не нужно повторять «используй TypeScript strict mode» в каждом чате. Здесь разберем, как настроить оба инструмента под реальный проект, с готовыми шаблонами для Next.js, Supabase и TypeScript.


Почему AI каждый раз «забывает» твой стек

У языковых моделей нет постоянной памяти. Cursor, Claude Code, Windsurf, Copilot — все работают одинаково: запрос пришел, ответ дан, контекст сброшен. Без файла с инструкциями AI не знает ни твоих папок, ни запретов, ни того, что в проекте используется shadcn, а не самописные компоненты.

Решение — контекстные файлы. Они загружаются в начале каждой сессии и дают AI «брифинг» перед работой. Это не магия. Это просто система.

Изображение

В 2026 году у каждого инструмента свой файл:

ИнструментФайл
Claude CodeCLAUDE.md
Cursor.cursor/rules/*.mdc
Windsurf.windsurfrules
GitHub Copilot.github/copilot-instructions.md
Codex CLIAGENTS.md

Принцип один. Форматы чуть разные. Дальше — по каждому подробно.

Изображение

CLAUDE.md: контекстный файл для Claude Code

CLAUDE.md — это Markdown-файл, который Claude Code читает перед каждой сессией. Не перед каждым сообщением — именно перед сессией, когда агент запускается в терминале командой claude.

Три места, где его класть, дают разный эффект:

  • Домашняя папка (~/CLAUDE.md) — универсальные инструкции для всех проектов. Стиль кода, личные предпочтения, запреты.
  • Корень репозитория (./CLAUDE.md) — контекст всего проекта. Стек, структура папок, деплой-команды.
  • Поддиректория (./src/components/CLAUDE.md) — специфика конкретного модуля. Claude загружает все файлы по цепочке.

Это «слоистость» — термин из транскрипций видео от Anthropic. Универсальные правила в домашней папке, проектные в корне, модульные внутри.

Максим: «Я держу в ~/CLAUDE.md три вещи: запрет на комментарии-пояснялки в коде, требование TypeScript strict mode и напоминание не трогать файлы, которые я не упомянул. В VibeCoderz эта тройка спасла меня от переписывания кода раз десять точно.»
Изображение

Как сгенерировать стартовый CLAUDE.md

Claude Code умеет создать первый черновик сам. Запускаешь в корне проекта:

claude
/init

Агент анализирует структуру файлов, package.json и генерирует CLAUDE.md. Это отправная точка — не готовый файл. Дальше его нужно дорабатывать под реальные «болевые точки» проекта.

Лайфхак из практики: когда фиксируешь сложный баг, не просто исправляй его. Попроси AI написать, через какие «кроличьи норы» вы прошли, и добавь это в CLAUDE.md. Через два-три таких случая файл становится по-настоящему полезным.

Изображение

Cursor Rules в 2026: .mdc вместо .cursorrules

Старый формат .cursorrules в корне проекта работает, но с ограничениями. В Agent mode он игнорируется полностью. Cursor официально рекомендует переходить на .cursor/rules/*.mdc.

Разница не только в названии. В .mdc появились четыре режима активации:

РежимКогда срабатывает
AlwaysКаждый раз, без условий
Auto AttachedКогда открыт файл, совпадающий с glob-паттерном
Agent RequestedAI сам решает, когда нужно
ManualТолько по прямому вызову через @rule-name

Это означает: правило для React-компонентов срабатывает только когда работаешь с .tsx файлами. Правило для API-роутов — только в src/app/api/**. Контекст не тратится на нерелевантные инструкции.

Лимиты, которые важно знать: один .mdc файл — до 500 строк, суммарный объем правил с режимом «Always» — до 2000 токенов. Это не много. Держи каждое правило коротким и конкретным.

Изображение

Cursor Rules vs CLAUDE.md: что выбрать

Коротко: это не конкуренты. Это разные инструменты для разных случаев.

Cursor Rules (.mdc)CLAUDE.md
Для чегоПостоянные инструкции внутри Cursor IDEКонтекст для Claude Code в терминале
Когда загружаетсяПри каждом AI-взаимодействии в CursorПеред каждой сессией агента
Поддержка мультиинструментовТолько CursorClaude Code + через AGENTS.md
Glob-фильтрацияЕсть (режим Auto Attached)Только через поддиректории
Версионный контрольGit-friendlyGit-friendly

Если работаешь только в Cursor — Cursor Rules достаточно. Если используешь несколько инструментов — оптимальная схема: общие инструкции в AGENTS.md, специфика Cursor в .mdc, специфика Claude в CLAUDE.md.

Есть и хак для ленивых: симлинк AGENTS.md -> .cursorrules. Один источник правды для всех инструментов.

Изображение

Что писать внутри: структура работающего файла

Плохой системный промпт — это список пожеланий. Хороший — это онбординг для нового члена команды, который ни разу не видел твой проект.

Четыре обязательных блока:

1. Обзор проекта (2-4 предложения)

Что делает приложение. Технический стек. Критичные зависимости. Без лишних деталей — AI должен понять суть за 10 секунд.

2. Структура папок

Не полный листинг — только неочевидные вещи. Где живут компоненты. Где API-роуты. Где общие утилиты. AI часто ошибается именно здесь: кладет файлы не туда.

3. Запреты (секция «Avoid»)

Это самое ценное. Список анти-паттернов, специфичных для проекта. Не «не пиши плохой код» — а конкретно: «не используй default exports», «не добавляй комментарии без запроса», «не трогай файлы вне указанной области».

4. Команды

Как запустить dev-сервер. Как прогнать тесты. Как задеплоить. AI часто придумывает команды из головы — это лечится четкими инструкциями в файле.

Чего не писать: полную документацию API, длинные философские рассуждения о коде, секреты и ключи. Первое пожирает контекст, второе игнорируется, третье — уязвимость.

Изображение

Шаблон CLAUDE.md для Next.js + TypeScript + Supabase

Готовый шаблон под стек, который используется в большинстве вайбкодинг-проектов. Копируй, правь под свои нужды:

# 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

Шаблон Cursor Rules для React компонентов

Этот .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 учиться самому

Есть один мета-прием, о котором говорят мало. Правило 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 как единый источник, с симлинками.

Изображение

FAQ

Чем отличается 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 в этом режиме игнорируются.


Что делать прямо сейчас

Два шага на сегодня:

  1. Открой Claude Code в терминале, запусти /init — получи черновик CLAUDE.md за 30 секунд. Отредактируй секцию Avoid под свои реальные боли.
  2. Создай .cursor/rules/react.mdc с glob src/**/*.tsx и пропиши туда три главных правила своего проекта.

Посмотреть, какие инструменты используют вайбкодеры для ускорения разработки — в каталоге AI-инструментов. Там же обзоры Claude Code и Cursor с реальными сравнениями.

Если хочешь настроить системный промпт под конкретный стек проекта — запишись на консультацию к Максиму. Разберем структуру, пропишем правила и настроим под твою команду.


Обновлено: март 2026. Статья отражает актуальные форматы Cursor 2.6, Claude Code и текущие рекомендации по настройке AI-окружения для вайбкодинга.

All Posts

Автор

Максим Наговицын
Максим Наговицын

Маркетинг-стратег, IT-предприниматель, ментор по вайбкодингу

2026/05/05

10+ лет в маркетинге, 300+ клиентских проектов: сайты, реклама, боты. Создатель GoBanana (228K+ пользователей, 11.6 млн ₽ выручки) и VibeCoderz. Делаю AI-продукты сам через Claude Code, Cursor, Windsurf и консультирую тех, кто хочет так же.

Об авторе →

Читать далее

📄 Статья

Вайбкодинг для лендинга создаем продающую страницу с ИИ за 30 минут

С помощью AI и инструментов Lovable и Bolt вы можете собрать продающий лендинг за 30 минут, сосредоточив внимание на ясности и ключевых заголовках.

2026/05/138 мин
📄 Статья

Hermes Agent: что это и почему 128 000 разработчиков поставили звезду на GitHub

Hermes Agent – open‑source ИИ‑агент, который сам улучшает свои команды, фиксируя успешные паттерны, и за 10 недель собрал 128 000 звезд на GitHub.

2026/05/139 мин
📄 Статья

Bolt.new — no code AI builder для веб-приложений создаем бесплатно в браузере

С помощью Bolt.new вы можете мгновенно превратить текстовый запрос в полноценное веб‑приложение и развернуть его одним кликом — всё бесплатно и без кода.

2026/05/137 мин
📄 Статья

Lovable vs Bolt.new два главных инструмента вайбкодинга — честное сравнение 2026

Сравниваем Lovable и Bolt.new: оба стоят $25 в месяц, но Lovable использует кредиты за каждое сообщение, а Bolt — токены, что делает их цены и лимиты по‑разному. Выбирайте платформу, исходя из типа проекта и модели ценообразования.

2026/05/137 мин
📄 Статья

Replit AI Agent вайбкодинг прямо в браузере без установки IDE

Replit Agent 4 превращает простое описание в полностью функционирующее приложение, включая фронтенд, бэкенд, БД и деплой, и позволяет сразу публиковать его в браузере. Это экономит время и ресурсы, как показал кейс с доходом более $600 000 в месяц.

2026/05/138 мин
📄 Статья

Промпты для лендинга: как поставить задачу AI и получить рабочий код с первого раза

Получить готовый лендинг за один проход возможно, если правильно сформулировать запрос: чётко определите цель, целевую аудиторию, структуру страниц и ограничения, а затем передайте эти детали в виде шаблона промпта для AI.

2026/05/067 мин