Claude Code rules — это правила, которые Claude Code читает в начале каждой сессии, и живут они в обычном текстовом файле CLAUDE.md. Без него Claude каждый раз знакомится с проектом заново: как он собирается, какие папки нельзя трогать, почему без вашего «ок» ничего не публикуется. Но CLAUDE.md — это просьба, а не замок: Anthropic прямо пишет, что строгого соблюдения правил никто не гарантирует.
Дальше по порядку: где лежат файлы правил, что в них писать, готовый пример для сайта и текстов, почему Claude правило всё-таки нарушает и что делать, когда нужен настоящий запрет. Всё сверено с официальной документацией 6 октября 2026 года.
Что такое CLAUDE.md
Это текстовый файл в формате Markdown, который Claude Code подгружает при старте сессии. Всё, что в нём написано, Claude помнит без напоминаний: команды сборки, правила оформления, запреты, порядок работы.
Файл целиком занимает место в контексте каждой сессии. Поэтому чем он длиннее, тем хуже Claude держит отдельные правила, — об этом ниже.
У Claude Code есть и вторая память, автоматическая: туда Claude сам записывает то, что понял из ваших поправок. Если сказать «запомни, что тесты требуют Redis», запись уйдёт именно туда. Чтобы правило попало в CLAUDE.md, так и говорите: «добавь это в CLAUDE.md».
Где лежат правила Claude Code
Claude Code rules бывают нескольких уровней — в русском поиске их часто ищут как правила «клод код». У каждого файла своя зона действия:
| Зона | Где лежит | Кто видит |
|---|---|---|
| Вся компания | macOS: /Library/Application Support/ClaudeCode/CLAUDE.md, Linux: /etc/claude-code/CLAUDE.md, Windows: C:\Program Files\ClaudeCode\CLAUDE.md |
все сотрудники, отключить нельзя |
| Все ваши проекты | ~/.claude/CLAUDE.md |
только вы |
| Один проект | ./CLAUDE.md или ./.claude/CLAUDE.md |
вся команда, лежит в git |
| Один проект, лично | ./CLAUDE.local.md |
только вы, файл в .gitignore |
| Правила по темам | .claude/rules/*.md |
вся команда |
| Подпапка | папка/CLAUDE.md |
подключается, когда Claude открывает файл из неё |
Файлы не заменяют друг друга, а складываются. Claude Code идёт от корня диска до папки, где вы его запустили, и собирает все CLAUDE.md по пути.
Противоречий быть не должно. Если два правила спорят, Claude может выбрать любое — так и написано в документации. Рассчитывать, что «ближний файл победит», нельзя.
У нас это устроено так. В домашнем ~/.claude/CLAUDE.md — правила для всех проектов: на каком языке отвечать, не говорить «готово», пока не проверил, ключи хранить только в .env. В корне каждого проекта — свой CLAUDE.md: как проект устроен и что в нём трогать нельзя.
Как создать CLAUDE.md
Команда /init. Claude изучит проект и напишет стартовый файл: команды сборки, тесты, соглашения из кода. Если файл уже есть, предложит улучшения, а не перезапишет. Правила Cursor и Copilot, если они лежат в проекте, перенесёт.
Команда /memory. Показывает все подключённые файлы правил и открывает нужный в редакторе.
Просьба во время работы. «Добавь в CLAUDE.md: статьи сохранять в папку blog». Быстрой клавиши #, о которой пишут старые инструкции, больше нет — её убрали в версии 2.0.70 в декабре 2025 года.
Проверить, что файл подхватился, — команда /context, список Memory files. Нет файла в списке — Claude его не видит.
Что писать в CLAUDE.md, а что нет
У Anthropic простой тест для каждой строки: если её убрать, Claude начнёт ошибаться? Если нет — вычёркивайте.
Писать: команды, которые Claude не угадает (как собрать, как проверить); ваши отличия от общепринятого («ИИ- всегда через дефис», «цены только в долларах»); как проверять результат; правила веток; решения, принятые в проекте, и неочевидные грабли.
Не писать: то, что видно из самих файлов; общие правила языка и стиля; подробную документацию — вместо неё ссылку; то, что меняется каждую неделю; описание каждого файла; пожелания вроде «пиши качественно».
До 200 строк на файл. Это рекомендация документации: длинный файл занимает больше контекста, и правила соблюдаются хуже. Если превысить, Claude Code предупредит при запуске и в /status.
Конкретика вместо пожеланий. «Отступ — два пробела» работает, «оформляй аккуратно» — нет.
IMPORTANT — на одну строку. Если Claude упорно пропускает одно правило, допишите в начало этой строки IMPORTANT. Выделите так половину файла — не выделится ничего.
Когда дописывать. Claude повторил ту же ошибку второй раз или вы второй раз пишете одно и то же исправление.
Пример CLAUDE.md для сайта и текстов
Почти все примеры в сети про код. Вот файл для проекта, где Claude ведёт блог и лендинги. Команды и папки условные, замените на свои:
# Сайт компании: блог и лендинги
## Команды
- После правок статей запускай `npm run build` и покажи вывод
- Статьи лежат в `content/blog/`, имя файла латиницей через дефис
## Тексты
- Пишем на русском, «ИИ-» всегда через дефис: ИИ-агент, ИИ-ассистент
- Цифры, цены и цитаты только из присланных источников; нет источника — пиши «нет данных»
- Заголовок H1 один на страницу, до 60 символов
## Нельзя
- IMPORTANT: не публикуй и не пушь в main без моего «ок» в чате
- Не трогай `content/legal/`, тексты согласованы с юристом
## Справка
- Тон, примеры заголовков и запрещённые слова: @docs/style-guide.md
<!-- Для коллег: запрет на пуш продублирован в .claude/settings.json -->
Строка про источники появилась у нас после сверки одной клиентской презентации: в ней нашлись факты, которых не было ни в брифе, ни в документах, — нейросеть дописала их «для полноты».
Строка про main — потому что main у нас сразу уходит на живой сайт.
Правила для папок, импорты и личные настройки
Папка .claude/rules/. Когда правил много, их раскладывают по темам: testing.md, texts.md. Файл без настроек грузится всегда. А с полем paths в шапке — только когда Claude открывает подходящий файл:
---
paths:
- "blog/**/*.md"
---
# Правила для статей
- Один H1, до 60 символов
- В конце раздел «Частые вопросы»
Так правила для статей не занимают место, пока Claude правит код.
Импорт через @. Строка @docs/style-guide.md подтягивает другой файл, вложенность до четырёх уровней. Порядок наводит, но места в контексте не экономит: импортированный файл тоже грузится при старте.
CLAUDE.local.md. Личные правила к проекту, которые не попадают в git: адрес вашего тестового стенда, ваши привычки.
HTML-комментарии. Блок <!-- ... --> вырезается до того, как текст попадёт к Claude. Пояснения для коллег можно оставлять, токены на них не тратятся.
Почему Claude не слушается правил
Файл слишком длинный. Документация так и пишет: если Claude упорно делает запрещённое, скорее всего, правило потерялось. Сокращайте.
Правило размытое. «Пиши хорошо» не проверить, значит, и не выполнить точно.
Правила спорят друг с другом. Часто в разных файлах: в домашнем одно, в проектном другое.
Файл не загрузился. Проверьте /context.
Правило ещё не подключилось. CLAUDE.md из подпапки и правила с paths приходят, только когда Claude открывает подходящий файл.
Было сжатие контекста. После /compact корневой CLAUDE.md перечитывается с диска. Правила подпапок вернутся, когда Claude снова откроет файл оттуда. А договорённости, которые были только в переписке, могут потеряться — важное переносите в CLAUDE.md.
С длиной мы столкнулись на ИИ-агенте, который пишет статьи для одного из наших сайтов. Обязательный шаг стоял ближе к концу файла инструкций на 500 с лишним строк, и в одном из прогонов агент до него не дочитал: четыре статьи вышли без блока перелинковки.
Помогло продублировать шаг в основной список в начале файла.
Искать устаревшие и противоречивые правила руками не обязательно: команда /doctor prompt-audit (Claude Code 2.1.283 и новее) находит правила для старых моделей, ссылки на несуществующие файлы и противоречия между файлами.
Когда CLAUDE.md не хватит: скиллы, хуки и запреты
Процедура, нужная время от времени — в скилл. Он грузится, только когда нужен, и не занимает место в каждой сессии.
Действие, которое должно происходить каждый раз — в хук. Он срабатывает как программа, без исключений.
Запрет: не читать .env, не пушить — в permissions.deny в settings.json. Его соблюдает сама программа, а не модель:
{
"permissions": {
"deny": [
"Read(./.env)",
"Bash(git push *)"
]
}
}
У нас опасные команды вроде rm -rf запрещены в CLAUDE.md, и на них же стоит хук, который блокирует их до выполнения. Строка в CLAUDE.md объясняет Claude, почему нельзя. Хук делает так, что не получится, даже если правило забылось.
Готовые наборы процедур с командами установки собраны в подборке скиллы Claude Code. Если сам Claude Code ещё не стоит, начните с установки Claude Code.
CLAUDE.md и AGENTS.md
AGENTS.md — общий файл инструкций, который читают Codex, Cursor и OpenCode. Claude Code тоже умеет, но по умолчанию только тогда, когда в проекте нет CLAUDE.md. Есть CLAUDE.md — AGENTS.md пропускается.
Чтобы читались оба, выберите в /config → Project instructions значение claude-md-and-agents-md. Или добавьте в CLAUDE.md строку @AGENTS.md — файл подтянется как импорт. Это удобно, если в команде работают в разных инструментах. Чем они отличаются, разобрали в сравнении Claude Code, Codex, Cursor и OpenCode.
Частые вопросы
Где должен лежать файл CLAUDE.md?
В корне проекта, как CLAUDE.md или .claude/CLAUDE.md, — тогда он уходит в git и правила получает вся команда. Правила для всех ваших проектов кладут в ~/.claude/CLAUDE.md, личные правила к одному проекту — в CLAUDE.local.md.
Почему Claude Code игнорирует правила из CLAUDE.md?
Чаще всего файл слишком длинный, правило размытое или спорит с другим. Проверьте /context: файл вообще загрузился? Если правило должно выполняться без исключений, переносите его в хук или в запреты settings.json.
Какой длины должен быть CLAUDE.md?
До 200 строк на файл — так рекомендует Anthropic. Длиннее правила начинают теряться, и Claude Code сам предупредит о превышении. То, что нужно только для части проекта, выносите в .claude/rules/ с paths или в скиллы.
Читает ли Claude Code AGENTS.md?
Да, но по умолчанию только если в проекте нет CLAUDE.md. Чтобы читались оба, выберите в /config → Project instructions значение claude-md-and-agents-md или добавьте в CLAUDE.md строку @AGENTS.md.
Сохраняются ли правила после /compact?
Корневой CLAUDE.md — да, Claude Code перечитывает его с диска. Правила из подпапок и с paths вернутся, когда Claude снова откроет подходящий файл. Договорённости из переписки могут потеряться.
Нужен ли CLAUDE.md, если я не программист? Да. Маркетологу, копирайтеру и владельцу бизнеса он нужен по той же причине: чтобы не объяснять каждый раз тон, запреты и порядок работы. Начните с пяти-десяти строк о том, что Claude уже делал не так.
Хороший CLAUDE.md не пишется за вечер — он растёт из ошибок, которые Claude совершил на ваших задачах. Мы собираем такие наборы правил и запретов под процессы компании и учим команду ими пользоваться. Расскажите о процессе, посчитаем до старта. Что входит в работу — на странице ИИ-агент для бизнеса под ключ.