Вайбкодинг · память проекта · вглубь

Один файл, и Claude перестаёт забывать твой проект

Каждая сессия Claude Code начинается с чистого листа: он не помнит вчерашний разговор и заново гадает, что у тебя за проект. CLAUDE.md — это постоянная память, которую он читает сам при каждом старте. Разбираем по официальной доке: где файл живёт, как загружается, что в него писать и как писать, чтобы Claude действительно слушался.

10 мин чтения уровень: все по официальной доке бесплатно

В чём фокус

Каждая новая сессия Claude Code начинается с чистого контекстного окна. Он не помнит вчерашний разговор и не знает, что у тебя за проект, пока не прочитает его заново (дока, memory). Чтобы знание переживало сессии, в Claude Code есть две системы памяти, и обе загружаются в начале каждого разговора.

Первая — CLAUDE.md: файл, который пишешь ты, с инструкциями и правилами. Вторая — авто-память: заметки, которые Claude ведёт сам, опираясь на твои правки и предпочтения (там же). CLAUDE.md — когда ты осознанно направляешь поведение Claude; авто-память — когда он учится на твоих исправлениях без ручной работы.

Важная оговорка, без которой будут разочарования: оба файла Claude воспринимает как контекст, а не как железный закон. Чем конкретнее и короче инструкция, тем стабильнее он ей следует; а если действие нужно жёстко запретить — это делается не в CLAUDE.md, а хуком (PreToolUse).

Идея в одну строку: CLAUDE.md — это то, что ты иначе печатал бы в чат заново каждую сессию. Записал один раз — Claude помнит всегда.

Этот гайд — про первый механизм, по-настоящему вглубь. Если нужен общий каркас проекта целиком (папки + файл + цикл работы) — он в соседнем разборе: Каркас вайбкодинг-проекта →.

Шаг 0: что нужно до старта

Нужен Claude Code — Claude, встроенный в редактор VS Code. CLAUDE.md он подхватывает сам, никаких расширений ставить не надо. Если Claude Code ещё не стоит:

Где живёт CLAUDE.md

Файл может лежать в нескольких местах, и у каждого свой охват. В официальной доке их перечисляют в порядке загрузки — от самого широкого к самому узкому, так что более конкретная инструкция попадает в контекст после общей (дока, memory).

  • Организация — общий файл, который ставит IT/DevOps на всю компанию (на Windows это C:\Program Files\ClaudeCode\CLAUDE.md).
  • Ты~/.claude/CLAUDE.md: личные предпочтения во всех твоих проектах.
  • Проект./CLAUDE.md или ./.claude/CLAUDE.md: командные правила, едут в репозитории через git.
  • Локально./CLAUDE.local.md: личные правки под конкретный проект; добавляют в .gitignore.

Для соло-работы тебе важны два: проектный ./CLAUDE.md — главный, его и коммитишь, — и при желании ./CLAUDE.local.md под себя.

Где живёт CLAUDE.md — 4 уровня: организация, пользователь, проект, локально, в порядке загрузки
Четыре уровня CLAUDE.md — от общего к частному

Как он загружается

Claude собирает CLAUDE.md, поднимаясь вверх по дереву папок от той, где ты его запустил, и забирая по дороге каждый CLAUDE.md и CLAUDE.local.md (дока, memory). Запустишь в foo/bar/ — подтянутся foo/bar/CLAUDE.md, foo/CLAUDE.md и локальные файлы рядом с ними.

Все найденные файлы не перетирают друг друга, а склеиваются в контекст: сверху — от корня файловой системы, ниже — ближе к твоей рабочей папке. Поэтому инструкции рядом с местом запуска читаются последними и весомее (там же). Файлы из подпапок подгружаются по требованию, когда Claude лезет в их код.

Отсюда практическое правило: запускай Claude из корня проекта. Тогда он видит корневой файл сразу, а вложенные подтянет сам, когда дойдёт до них.

Что писать — и чего не писать

Простое правило, что вообще класть в CLAUDE.md: то, что ты иначе будешь объяснять заново. Официальный гайд советует добавлять запись, когда (дока, memory):

  • Claude второй раз делает одну и ту же ошибку;
  • ревью поймало то, что он должен был знать про этот проект;
  • ты снова печатаешь в чат ту же поправку, что и в прошлой сессии;
  • новому человеку в команде понадобился бы тот же контекст.

Сюда — факты, которые Claude должен держать в каждой сессии: команды сборки, соглашения, структура проекта, правила «всегда делай X». А вот если запись — это многошаговая процедура или касается только одной части кода, её место не здесь: процедуру выноси в отдельный навык (skill), а узкое правило — в path-scoped rule (.claude/rules/), чтобы оно подгружалось только под нужные файлы (там же).

Как писать, чтобы Claude слушался

CLAUDE.md грузится в контекст в начале каждой сессии и тратит токены наравне с разговором — поэтому то, как ты пишешь, прямо влияет на то, насколько надёжно Claude следует правилам (дока, memory). Решают три вещи.

Конкретика. Пиши так, чтобы инструкцию можно было проверить. «Используй отступ в 2 пробела» вместо «форматируй код правильно». «Запускай npm test перед коммитом» вместо «тестируй изменения». «Обработчики API лежат в src/api/handlers/» вместо «держи файлы в порядке» (там же).

Размер. Цель — меньше 200 строк на файл. Длинные файлы съедают больше контекста и снижают следование правилам. Если разрастается — выноси куски в path-scoped rules, чтобы они подгружались только под нужные файлы (там же).

Без противоречий. Если два правила спорят, Claude выберет одно наугад. Периодически перечитывай свой CLAUDE.md и вложенные файлы и убирай устаревшее и конфликтующее (там же).

Как писать CLAUDE.md, чтобы Claude слушался: конкретика, размер до 200 строк, структура, без противоречий
Пять правил инструкции, которой Claude следует
◆ от файла — к системе

Память настроил. А что на ней можно собрать?

CLAUDE.md — это фундамент, на котором Claude слушается. Дальше тот же приём — правила плюс готовые промпты — масштабируется до целого контент-завода: тренды, карусели и рилсы, воронки, лид-магниты и оплаты. Всю цепочку собираем на практикуме, по шагам.

Что за практикум →

Не писать с нуля: /init

Файл не обязательно сочинять руками. Команда /init анализирует твой проект и сама создаёт стартовый CLAUDE.md — с командами сборки, тестами и соглашениями, которые нашла в коде (дока, memory). Если файл уже есть, /init не перетирает его, а предлагает улучшения. Дальше дошлифовываешь тем, что Claude сам бы не угадал.

Claude Code
/init

Посмотреть и поправить уже существующую память можно командой /memory — она открывает нужный файл в твоём редакторе (там же).

Импорты и личный файл

Чтобы не раздувать один файл, CLAUDE.md умеет подтягивать другие через синтаксис @path/to/import. Импортированные файлы разворачиваются и грузятся в контекст при старте вместе с основным; пути относительные или абсолютные, а сам импорт может быть вложенным — до четырёх уровней в глубину (дока, memory).

CLAUDE.md · подключить README и гайд по git
См. @README для обзора проекта и @package.json — список команд.

# Дополнительно
- процесс git: @docs/git-instructions.md

Если путь надо просто упомянуть, не импортируя, — оберни его в обратные кавычки. Под личные правки, которые не должны попасть в git, заведи в корне CLAUDE.local.md: он грузится рядом с основным и ведёт себя так же, а ты добавляешь его в .gitignore (там же).

Ещё приём: если у тебя уже есть AGENTS.md для других ИИ-инструментов, Claude читает именно CLAUDE.md — поэтому сделай CLAUDE.md, который импортит @AGENTS.md, и оба инструмента будут читать одно и то же, без дублей (там же).

Авто-память: Claude ведёт заметки сам

Второй механизм — авто-память. Это заметки, которые Claude пишет себе сам: заметив твою поправку или предпочтение, он сохраняет вывод, чтобы не наступать на те же грабли дважды. Пишешь её не ты, а он; живёт она по репозиторию и тоже подгружается в каждую сессию — первые 200 строк или 25 КБ (дока, memory).

Грубо так: CLAUDE.md — это правила, которые ты задаёшь осознанно; авто-память — то, что Claude вынес из работы с тобой. Вместе они и складываются в ощущение «он меня помнит».

Чтобы не споткнуться

Три места, где спотыкаются на старте.

01
Ждать, что # добавит заметку
Раньше быструю заметку в память кидали через символ #. Сейчас этого шортката нет — правь файл напрямую или открой его командой /memory.
02
Простыня вместо инструкции
Файл за 200 строк начинает съедать контекст и хуже работает. Держи коротко и конкретно, а большие куски выноси в path-scoped rules под нужные файлы.
03
Противоречивые правила
Два спорящих правила — и Claude выбирает наугад. Перечитывай файл и вложенные CLAUDE.md, убирай устаревшее и конфликтующее.

Зачем тебе это на самом деле

Без CLAUDE.md ты работаешь с «общим» Claude, которому каждый раз объясняешь одно и то же. С ним — с Claude, который знает именно твой проект: твои команды, твою структуру, твои «никогда так не делай». Один файл превращает универсальный инструмент в твоего, заточенного под твою работу.

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

А дальше

CLAUDE.md — это память. Память живёт внутри каркаса проекта: понятная структура папок плюс этот файл плюс рабочий цикл. Если ещё не собирал каркас целиком — Каркас вайбкодинг-проекта →.

А на каркасе уже строится система, которая приносит результат: контент-завод на Claude Code — тренды, карусели и рилсы, воронки на кодовые слова, лид-магниты и оплаты. Эту цепочку собираем на практикуме, по шагам, под твою нишу.

Практикум · AI Cube

Собери контент-завод
на Claude Code

За один вечер показываю всю цепочку: от каркаса проекта до принятой оплаты. Тренды, карусели и рилсы, воронки, лид-магниты, платёжки и боты — собранные одним человеком в Claude Code.

Перейти на практикум