Любой современный ИИ-ассистент, в том числе Claude Code, не обладает памятью между сессиями. Каждый новый диалог начинается «с чистого листа», если вы не даёте ему дополнительный контекст. В больших проектах с десятками файлов, специфичными правилами кодирования и внутренними соглашениями тратить первые 10–15 сообщений на объяснение базовых вещей — непозволительная роскошь.
Claude Code предлагает два элегантных решения:
- Файл
CLAUDE.md– вы пишете его сами, он содержит постоянные правила, архитектуру, команды сборки и т.п. Загружается целиком в начале каждой сессии. - Файл
MEMORY.md– создаётся и обновляется самим ИИ. Он хранит ваши предпочтения, исправления поведения, выученные паттерны. Загружается частично (первые 200 строк) для экономии токенов.
Понимание различий и правильное использование обоих инструментов может кардинально улучшить ваш опыт работы с Claude Code. Давайте разберёмся подробнее.
CLAUDE.md – ваша инструкция для ИИ
CLAUDE.md – это руководство пользователя, которое вы создаёте вручную. Оно действует как постоянный набор инструкций, которые ИИ должен учитывать во всех взаимодействиях. Вы можете сравнить его с README.md для разработчиков, но только для ИИ.
Где и как создаётся CLAUDE.md?
Обычно файл помещается в корень вашего проекта. Пример: ~/my-project/CLAUDE.md. Вы можете добавить его в систему контроля версий (Git), чтобы вся команда пользовалась одними и теми же правилами. Также поддерживаются глобальные версии (например, в домашней директории) и локальные (для конкретной папки).
Важно: CLAUDE.md всегда загружается полностью в начале каждого нового сеанса. Именно поэтому его объём должен быть разумным – не стоит помещать туда тысячи строк. В идеале – лаконичная, чёткая инструкция на 20–50 строк.
Что обычно пишут в CLAUDE.md?
- Архитектура проекта – какие технологии используются (React, Node.js, Django и т.д.), структура папок, ключевые модули.
- Стандарты кодирования – стиль отступов, именование переменных, предпочитаемые шаблоны (например, функциональные компоненты вместо классовых).
- Команды сборки и тестирования –
npm run build,pytest,make testи т.п. - Особенности окружения – переменные среды, версии Node.js, Python, базы данных.
- Важные ограничения – не использовать определённые библиотеки, избегать опасных конструкций.
Пример минимального CLAUDE.md для проекта на React + TypeScript:
# Проект: MyApp (React + TypeScript + Vite)
## Структура
- src/ – исходники
- src/components/ – переиспользуемые UI-компоненты
- src/pages/ – страницы (маршруты)
- src/hooks/ – кастомные хуки
- src/utils/ – вспомогательные функции
## Стандарты кода
- Используем функциональные компоненты с хуками.
- Именование: camelCase для переменных и функций, PascalCase для компонентов.
- Отступы: 2 пробела.
- Все пропсы должны быть типизированы (interface или type).
## Команды
- `npm run dev` – запуск dev-сервера
- `npm run build` – сборка продакшена
- `npm run test` – запуск тестов (Vitest)
## Важно
- Не используем классовые компоненты.
- Все API-запросы идут через src/api/ с единым интерцептором для обработки ошибок.
Такой файл даст ИИ всю необходимую информацию для работы в вашем проекте без лишних вопросов.
MEMORY.md – личный блокнот Claude
MEMORY.md – это файл, который автоматически создаётся и поддерживается самим Claude Code. Это его «собственная память» о вас и о проекте, накопленная в процессе взаимодействия.
Где хранится MEMORY.md?
В отличие от CLAUDE.md, этот файл не находится в корне проекта. Он скрыт в служебной директории: ~/.claude/projects/<project-hash>/memory/. Это делается для того, чтобы не засорять репозиторий и не вызывать конфликтов при совместной работе. Каждый проект имеет свой уникальный хеш, поэтому память не пересекается между разными проектами.
Как происходит загрузка MEMORY.md?
В начале каждой сессии Claude Code загружает из этого файла только первые 200 строк (примерно 25 KB). Это ограничение введено для экономии контекстного окна и токенов. Если вы хотите, чтобы ИИ учитывал больше информации, вы можете структурировать файл так, чтобы самое важное было в начале. Остальная часть файла всё равно существует, но ИИ обращается к ней только при необходимости (например, по ключевым словам).
Что попадает в MEMORY.md?
- Ваши предпочтения – например, «всегда используй pnpm вместо npm», «предпочитаю стрелочные функции».
- Исправления поведения – если вы однажды сказали «не предлагай мне использовать классы, я использую функции», это запоминается.
- Замеченные паттерны – если вы часто работаете с определёнными модулями, ИИ может запомнить их расположение.
- Важные заметки по ходу работы – вы можете явно попросить: «запомни, что мы перешли на новую версию API».
В сущности, MEMORY.md — это динамический файл, который эволюционирует вместе с вашим проектом и вашими привычками.
Сравнительная таблица: CLAUDE.md vs MEMORY.md
| Критерий | CLAUDE.md |
MEMORY.md |
|---|---|---|
| Роль | Инструкция для ИИ (руководство) | Личный блокнот ИИ (заметки) |
| Кто создаёт и редактирует | Вы (пользователь) вручную | Claude Code автоматически |
| Содержание | Правила, архитектура, стандарты, команды | Предпочтения, исправления, выученные паттерны |
| Расположение | Корень проекта (видимый, обычно в Git) | ~/.claude/projects/<hash>/memory/ (скрыт) |
| Загрузка в сессию | Полностью (без ограничений) | Только первые 200 строк (экономия токенов) |
| Управление | Полностью ручное | Автоматическое (можно влиять через команды) |
| Влияние на поведение | Жёсткие, обязательные правила | Гибкие, персонализированные подсказки |
Как использовать оба файла максимально эффективно
Теперь, когда мы знаем различия, давайте выработаем стратегию, которая сэкономит вам время и токены.
CLAUDE.md — это «конституция» проекта, а MEMORY.md — «личный дневник» ИИ. Они дополняют друг друга.
Совет 1. Не дублируйте информацию
Если вы уже описали архитектуру в CLAUDE.md, не нужно повторять её в MEMORY.md. ИИ сам решит, что ему «запомнить» из ваших действий. Но если вы заметили, что он постоянно забывает что-то из CLAUDE.md, вы можете добавить это в начало MEMORY.md вручную (или попросить его запомнить).
Совет 2. Держите CLAUDE.md кратким и актуальным
Поскольку он загружается полностью, его объём напрямую влияет на потребление токенов. Идеальный размер — 30–60 строк. Если проект большой, вынесите детали в отдельные файлы и ссылайтесь на них из CLAUDE.md (например, «подробности в docs/architecture.md»).
Совет 3. Используйте /memory для управления памятью
В Claude Code есть специальная команда /memory, которая позволяет просмотреть текущее содержимое MEMORY.md и отредактировать его. Вы также можете сказать: «запомни, что я предпочитаю yarn», и ИИ добавит это в память.
Совет 4. Периодически очищайте MEMORY.md
Со временем файл может раздуться устаревшими заметками. Вы можете удалить лишнее, чтобы освободить место для новых важных вещей. Помните, что загружаются только первые 200 строк — если важное окажется ниже, ИИ его не увидит автоматически.
Совет 5. Используйте CLAUDE.md для общезначимых правил, а MEMORY.md — для персональных
Например, стандарты кодирования должны быть в CLAUDE.md (чтобы все члены команды следовали им). А ваше личное предпочтение использовать определённый редактор или сниппеты — это в MEMORY.md.
Примеры кода для CLAUDE.md
Покажем ещё несколько примеров, чтобы вы могли взять их за основу.
Пример для Python/Django проекта
# Django-проект "MyBlog"
## Структура
- myblog/ – основной пакет (settings, urls, wsgi)
- apps/ – все приложения Django
- apps/posts – блог-посты
- apps/users – кастомная модель пользователя
- static/ – статика
- media/ – загруженные файлы
## Правила
- Используем Django 4.2+, Python 3.11+.
- Для представлений используем классы (CBV) с примесью LoginRequiredMixin.
- Все модели должны иметь метод __str__.
- ORM-запросы должны быть оптимизированы (select_related, prefetch_related).
## Команды
- `python manage.py runserver` – локальный сервер
- `python manage.py test` – запуск тестов (pytest-django)
- `python manage.py makemigrations && migrate` – миграции
## Тестирование
- Пишем тесты для каждой модели и представления.
- Используем фикстуры для тестовых данных.
Пример для Node.js (Express + TypeScript)
# Express TypeScript проект
## Структура
- src/ – исходники
- src/controllers/ – обработчики маршрутов
- src/services/ – бизнес-логика
- src/models/ – модели данных (Mongoose/Prisma)
- src/middlewares/ – мидлвары (авторизация, логирование)
- src/routes/ – определение маршрутов
## Стиль
- Используем async/await, обработка ошибок через try/catch.
- Все ошибки обрабатываются глобальным error-handler.
- Имена файлов: kebab-case, классы – PascalCase.
## Команды
- `npm run build` – транспиляция TypeScript в dist/
- `npm run start` – запуск продакшена
- `npm run dev` – nodemon + ts-node
## Переменные окружения
- Используем dotenv, обязательные: PORT, DATABASE_URL, JWT_SECRET.
Общие шаблоны для CLAUDE.md
Вы можете добавить секцию с часто задаваемыми вопросами или примерами кода, чтобы ИИ быстрее вживался в проект. Например:
## Пример правильного использования API
```javascript
// ✅ Хорошо
const user = await User.findById(id).select('name email');
// ❌ Плохо (избыточные поля)
const user = await User.findById(id); // содержит пароль и др.
```
Управление MEMORY.md: команды и трюки
Хотя MEMORY.md создаётся автоматически, вы можете активно влиять на его содержимое. Вот несколько способов:
Команда /memory
Введите /memory в чате Claude Code. Вы увидите текущее содержимое вашего MEMORY.md и сможете редактировать его прямо в интерфейсе (откроется редактор). Это самый простой способ.
Явное добавление в память
Просто скажите: «Запомни, что мы используем библиотеку axios для HTTP-запросов» или «Запомни, что я не хочу использовать PropTypes, только TypeScript». ИИ обновит MEMORY.md соответственно.
Прямое редактирование файла
Вы можете открыть файл по пути ~/.claude/projects/<hash>/memory/MEMORY.md в любом редакторе и править его вручную. Это полезно для массовой очистки или структурирования.
Структурирование MEMORY.md
Поскольку загружаются только первые 200 строк, размещайте самую важную информацию в самом начале. Используйте заголовки, чтобы ИИ легче ориентировался. Например:
# Личные настройки Claude (MEMORY.md)
## Основные предпочтения
- Использую pnpm (не npm, не yarn)
- Предпочитаю функциональные компоненты React
- Всегда пиши комментарии на русском
## Исправления поведения
- Не предлагай использовать классовые компоненты.
- Всегда предлагай тесты для нового кода.
## Заметки по проекту
- Ветка main – продакшен, develop – разработка.
- CI/CD через GitHub Actions.
Таким образом, самая важная информация всегда будет в начале и доступна ИИ без дополнительных запросов.
CLAUDE.md и MEMORY.md — это два мощных инструмента, которые при правильном использовании превращают Claude Code в идеального ассистента, адаптированного под ваш проект и стиль работы. Запомните:
- CLAUDE.md – ваши жёсткие инструкции, которые вы контролируете. Они стабильны и общие для всей команды.
- MEMORY.md – гибкая память ИИ, которая учится на ваших действиях и корректировках. Она персональна и динамична.
Используйте их вместе: пропишите базовые правила в CLAUDE.md, а затем позвольте Claude накапливать опыт в MEMORY.md. Периодически просматривайте оба файла, чтобы они не устаревали. Так вы сэкономите драгоценные токены и получите более точные и релевантные ответы.
Надеемся, это руководство помогло вам разобраться в нюансах. Теперь вы можете смело настраивать своё окружение и работать с Claude Code на максимальной эффективности. Удачи в кодинге!

