Claude Code хорошо работает из коробки, но становится заметно более эффективным, когда он знает соглашения вашего проекта и когда вы принимаете несколько привычек в подсказках. Это руководство охватывает оба аспекта.
Часть 1 — CLAUDE.md: память вашего проекта
Что это такое
CLAUDE.md — это простой файл markdown, который Claude автоматически читает в начале каждой сессии в этом каталоге. Думайте о нём как о брифинге, который вы дали бы способному новому коллеге в его первое утро: как работает команда, чего избегать и где находятся важные части.
Вам не нужно ссылаться на него в подсказках или прикреплять его вручную. Если файл существует, Claude уже его прочитал.
Где он находится
Claude ищет в нескольких местах и объединяет найденное, от общего к конкретному:
Расположение | Область действия | Хорошо для |
| Каждый проект на вашей машине | Личные предпочтения (например, «я использую pnpm, а не npm» или «всегда предлагайте тесты»). |
| Этот проект | Архитектура, соглашения и команды. Это главный файл. |
| Этот подкаталог | Правила, специфичные для модуля (например, разные соглашения в |
Большинству команд нужен только файл в корне проекта. Зафиксируйте его в git, чтобы вся команда получила выгоду.
Как он загружается (и во что это обходится)
CLAUDE.md читается один раз в начале сессии и помещается дословно в системную подсказку Claude. Нет сокращения или усечения, и он не перечитывается с диска при каждом обороте; одно и то же содержимое остаётся в контексте на протяжении всего разговора. Если вы отредактируете файл во время сессии, изменение вступит в силу только при запуске новой сессии.
Для клиентов Claude for Enterprise картина затрат лучше, чем может показаться из фразы «загружается при каждом запросе». Claude Code применяет кэширование подсказок Anthropic к системной подсказке, которая включает CLAUDE.md. Первый запрос в сессии платит полную цену входных токенов за файл; последующие запросы в течение примерно пяти минут друг от друга попадают в кэш и выставляются по гораздо более низкой ставке чтения кэша. Кэш адресуется по содержимому, поэтому любое изменение CLAUDE.md его инвалидирует, и следующий запрос снова платит полную цену.
На практике это означает, что большой CLAUDE.md стоит полных токенов один раз за сессию, плюс один раз после любого перерыва, достаточно длительного для истечения кэша, а не один раз за сообщение. Всё ещё стоит держать файл компактным для пространства контекстного окна и соотношения сигнала к шуму, но вам не нужно экономить строки исключительно для контроля расходов за сообщение. На панели управления использованием Enterprise файл будет отображаться почти полностью как токены чтения кэша, а не как стандартные входные токены.
Начало работы: запустите /init
В любом проекте введите /init. Claude изучит кодовую базу и создаст для вас черновик CLAUDE.md, охватывающий команды сборки, команды тестирования, обзор структуры и любые обнаруженные соглашения. Проверьте черновик, удалите всё неточное и зафиксируйте его. Это займёт около пяти минут и окупится навсегда.
Что на самом деле в нём должно быть
Стремитесь к файлу, который короткий и информативный — несколько сотен строк максимум. Каждая строка загружается в контекст при каждом запросе, поэтому каждая должна быть стоящей своей цены.
Стоит включить:
Команды — как собирать, тестировать, проверять и запускать локально. Claude будет их выполнять, поэтому точность важна.
Соглашения — именование, обработка ошибок, расположение файлов и решения «мы используем X, а не Y».
Архитектура в трёх предложениях — каковы основные части и как они взаимодействуют.
Жёсткие ограничения — например, «никогда не пишите в производственную базу данных из тестов», «все маршруты API нуждаются в middleware аутентификации» или «не редактируйте
generated/».Известные подводные камни — проблемы, на которые спотыкается каждый новый инженер.
Не стоит включать:
Полную документацию API (Claude может читать код напрямую).
Журналы изменений или историю.
Всё, что уже очевидно из дерева файлов.
Стремительные правила, которые команда на самом деле не соблюдает.
Как часто его обновлять
Относитесь к нему как к живому документу адаптации, а не как к спецификации.
После
/init— проверьте один раз, чтобы очистить сгенерированный черновик.Когда Claude ошибается дважды — это сигнал того, что правило отсутствует. Добавьте одну строку, чтобы это исправить.
Когда соглашения меняются — например, новая платформа, средство тестирования или набор правил проверки.
Ежеквартальный просмотр — удалите всё устаревшее, так как устаревшие инструкции хуже, чем никакие.
Вы также можете добавить его во время сессии: введите # с инструкцией (например, # всегда используйте async/await, никогда .then()) и Claude предложит добавить его в правильный CLAUDE.md для вас.
Часть 2 — Привычки в подсказках, которые окупаются в Claude Code
Это не универсальные советы по инженерии подсказок; это привычки, которые имеют наибольшее значение именно когда Claude читает и редактирует реальную кодовую базу.
1. Укажите результат, а не шаги
Claude может исследовать кодовую базу самостоятельно. Скажите ему что вы хотите и почему, и позвольте ему разобраться, где.
❌ «Откройте userService.ts, найдите функцию validate, добавьте проверку на null на строке 42.»
✅ «Пользователи без электронной почты вызывают сбой на этапе валидации. Сделайте так, чтобы это обрабатывалось корректно, и добавьте тест.»
2. Дайте ему ошибку дословно
Вставьте полный трассировочный стек вместо его резюме. Точное имя файла, номер строки и сообщение — это то, что позволяет Claude быстро найти правильное место.
3. Определите масштаб больших задач с помощью режима плана сначала
Для всего, что касается более чем пары файлов, нажмите Shift+Tab в режим плана и спросите:
«Спланируйте, как вы добавили бы ограничение скорости к публичному API. Не меняйте ничего пока.»
Проверьте план, отрегулируйте его в разговоре, затем переключитесь в режимы и скажите «выполните шаг 1.» Это ловит неправильные понимания до того, как они превратятся в diff из двенадцати файлов.
4. Указывайте на файлы, когда вы их уже знаете
Claude может самостоятельно искать в кодовой базе, но если вы уже знаете соответствующий файл, скажите об этом — это быстрее и использует меньше токенов. Используйте @ для ссылки на пути, например @src/auth/login.ts.
5. Скажите, как выглядит «готово»
Примеры включают «тесты проходят», «соответствует стилю других обработчиков» или «нет новых зависимостей.» Указание критериев приёмки заранее более эффективно, чем несколько раундов пересмотра.
6. Одна задача на разговор; /clear между ними
Длинные сессии накапливают шум. Когда вы переходите от «исправить ошибку входа» к «рефакторить модуль выставления счётов», запустите /clear и начните заново. Ваш CLAUDE.md переносит долговечный контекст вперёд, поэтому история чата не должна.
7. Исправляйте это как коллегу, а не поисковую систему
Если первый ответ неправильный, вам не нужно переформулировать весь запрос. Просто скажите, что не так — например, «Это меняет публичный API; сохраните подпись той же.» Claude сохранит всё остальное и отрегулирует только эту точку.
Краткая справка
Хотите… | Сделайте это |
Сгенерировать начальный |
|
Посмотрите, какую память использует Claude |
|
Добавить правило во время сессии | Введите |
Начать заново, но сохранить память проекта |
|
Ссылка на конкретный файл в подсказке |
|
