Когда работаешь с Claude Code каждый день, начинаешь повторять одно и то же: «у нас команды запускаются так», «не трогай вот эту папку», «коммить вот в таком стиле». Объяснять это заново в каждом разговоре — утомительно.
Для этого есть CLAUDE.md — обычный текстовый файл в корне проекта, который Claude Code читает автоматически при каждом запуске. Всё, что вы туда напишете, он учитывает как правила игры — без напоминаний.
Как это выглядит на практике
Представь, что ты только что попросил собрать проект. Сравни два дня из жизни.
Без CLAUDE.md. Claude видит в проекте и npm, и pnpm, и yarn — и спрашивает, чем запускать. Ты отвечаешь. Через час, в новом разговоре, он спрашивает снова. Потом правит файл в /build, который у тебя генерируется автоматически, и ты откатываешь изменения. Коммит он подписывает с эмодзи, хотя у вас так не принято.
С CLAUDE.md. Он сразу запускает pnpm dev, обходит /build стороной и коммитит ровно в том стиле, что вы договорились. Ни одного лишнего вопроса. Разница — пять строк в одном файле.
Что туда писать
Коротко и по делу — то, что вы иначе повторяли бы вслух:
- Команды проекта — как запускать, собирать, тестировать.
- Договорённости — стиль кода, как оформлять коммиты, что нельзя менять.
- Структура — где что лежит, какие папки важные.
- Запреты — «не редактируй сгенерированные файлы», «не трогай прод».
Чтобы было понятнее, что стоит записать, а что — лишнее:
| Записать стоит | Лучше не писать |
|---|---|
| Команды: запуск, тесты, сборка | Длинную историю проекта |
| Папки, которые трогать нельзя | То, что Claude и так видит в коде |
| Стиль коммитов и веток | Личные предпочтения «на всякий случай» |
| Один-два неочевидных правила | Пересказ всей документации |
Принцип простой: в файл идёт то, что повторяется и что нельзя угадать по коду. Всё остальное только раздувает инструкцию.
Пример
# Правила проекта
- Запуск: npm run dev
- Тесты перед коммитом: npm test
- Коммиты на английском, без эмодзи
- Не менять файлы в папке /build — они генерируются
Заметка
CLAUDE.md — это не магия и не код, а просто записка для ассистента. Чем понятнее правила, тем меньше Claude ошибается и переспрашивает.
Главное правило про правила
Не пишите туда всё подряд. Лучший CLAUDE.md — короткий: только то, что действительно важно и часто повторяется. Разрастётся — Claude начнёт теряться, как и человек в длинной инструкции.
Хороший ориентир — держать файл в пределах одного экрана. Если ты сам не дочитал бы такую записку до конца, не дочитает и ассистент: важные пункты утонут среди второстепенных.
Частые ошибки
- Слишком длинно. Файл на три экрана работает хуже, чем пять точных строк. Чем больше текста, тем сложнее выделить главное — и тебе, и Claude.
- Очевидное вместо нужного. Не нужно описывать то, что и так видно в коде. Пишите то, что нельзя угадать: какой пакетный менеджер, какую папку не трогать, какой формат коммитов.
- Записали и забыли. Поменялись команды или правила — поправьте файл. Устаревший CLAUDE.md вреднее пустого: он уверенно ведёт ассистента не туда.
Частые вопросы
Где должен лежать файл?
В корне проекта, рядом с package.json или .git. Имя — ровно CLAUDE.md, заглавными буквами. Claude Code находит его сам, никуда подключать не нужно.
Это безопасно — он же читается автоматически?
Да. CLAUDE.md — обычный текст, не код: он ничего не запускает, а просто даёт ассистенту контекст. Поэтому секреты и пароли туда не пишут — для них есть .env и переменные окружения.
А если правил совсем мало? Тогда и файл будет крошечным — это нормально. Даже три строки про запуск и запретную папку уже экономят кучу повторов. Начни с малого и дописывай по мере того, как замечаешь, что объясняешь одно и то же.
Как устроен проект и из чего он состоит — разбираем по шагам в бесплатном курсе.
Хочешь глубже? Большой разбор: Как управлять Claude Code: CLAUDE.md, Skills и hooks.