← все статьи

Как написать CLAUDE.md: правила для Claude Code

6 октября 2026 г.

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 совершил на ваших задачах. Мы собираем такие наборы правил и запретов под процессы компании и учим команду ими пользоваться. Расскажите о процессе, посчитаем до старта. Что входит в работу — на странице ИИ-агент для бизнеса под ключ.

Хотите так же — без рутины?

Расскажите, какой процесс съедает время, — в тот же день пришлём вилку цены

Заказать автоматизацию →