Урок 16Память

Память и CLAUDE.md

Контекст проекта

Что такое память Claude Code и как она работает

Память (memory) в Claude Code — это набор текстовых файлов CLAUDE.md, которые автоматически подгружаются в контекст модели в начале каждой сессии. Это не «обучение» модели и не база данных: это обычный Markdown, который Claude читает как постоянные инструкции к проекту. Благодаря этому вам не нужно повторять в каждом запросе, что проект собирается через npm run build, использует TypeScript или что тесты лежат в определённой папке — модель уже знает это из файла памяти. Чем точнее и компактнее CLAUDE.md, тем меньше ошибок и лишних уточняющих вопросов.

Файлы памяти образуют иерархию (hierarchy), показанную ниже. Организационный уровень (managed) задаёт правила для всей компании, пользовательский ~/.claude/CLAUDE.md хранит ваши личные предпочтения для всех проектов, проектный .claude/CLAUDE.md коммитится в git и действует для всей команды, а CLAUDE.local.md — это персональные заметки, которые в git не попадают. Claude Code не выбирает один уровень, а объединяет их все: более специфичные инструкции дополняют общие. Через директиву импорта @path/to/file один файл может подтягивать другие — это и делают блоки @docs/api-conventions.md в примере выше: они разбивают большой CLAUDE.md на модули, чтобы его было проще поддерживать.

Используйте память для стабильных фактов о проекте: команды разработки, структура директорий, код-стайл, важные модули. Команда /memory (см. блок ниже) позволяет быстро дописать новое правило прямо из сессии — например, «всегда используй pnpm вместо npm» — и Claude сам добавит его в нужный файл. Главные ошибки: класть в память секреты и ключи API (файл коммитится в git), оставлять устаревшие инструкции (они вводят модель в заблуждение сильнее, чем их отсутствие) и раздувать файл огромными блоками кода. Держите CLAUDE.md коротким и актуальным, и память станет самой полезной частью настройки Claude Code.

Иерархия памяти

Claude Code загружает инструкции из нескольких уровней. Все уровни объединяются:

Managed (Organization)Приоритет 1
Управляется организацией

Правила организации, применяемые ко всем проектам сотрудников

UserПриоритет 2
~/.claude/CLAUDE.md

Ваши персональные предпочтения для всех проектов

ProjectПриоритет 3
.claude/CLAUDE.md или CLAUDE.md

Инструкции для всей команды, коммитятся в git

LocalПриоритет 4
CLAUDE.local.md

Локальные настройки, не коммитятся в git

Пример CLAUDE.md
# CLAUDE.md

## Project Overview
This is a Next.js 14 e-commerce application with TypeScript.

## Tech Stack
- Next.js 14 with App Router
- TypeScript 5.3
- Prisma ORM with PostgreSQL
- Tailwind CSS + shadcn/ui

## Development Commands
```bash
npm run dev      # Start development server
npm run test     # Run Jest tests
npm run lint     # ESLint check
npm run db:push  # Push Prisma schema
```

## Code Conventions
- Use functional components with hooks
- Prefer server components where possible
- Use Zod for validation
- All API routes should have error handling

## Directory Structure
```
src/
├── app/           # Next.js app router
├── components/    # React components
├── lib/           # Utilities and helpers
├── prisma/        # Database schema
└── types/         # TypeScript types
```

## Important Files
- src/lib/auth.ts — Authentication logic
- src/lib/db.ts — Database client
- prisma/schema.prisma — Data model
Импорт файлов

CLAUDE.md может импортировать другие файлы для модульности:

# CLAUDE.md

## Imports
@docs/api-conventions.md
@docs/testing-guide.md
@.claude/rules/security.md

## Project specific rules
...

💡 Используйте @path/to/file для включения содержимого файла в контекст

Команда /memory

Используйте /memory для быстрого добавления информации в память:

> /memory
Что добавить в память проекта?
Всегда используй pnpm вместо npm
Добавлено в .claude/CLAUDE.md
Что включить в CLAUDE.md

Рекомендуется

  • Описание проекта
  • Команды для разработки
  • Структура директорий
  • Код-стайл и конвенции
  • Важные файлы и модули
  • Зависимости и их версии

Не включать

  • Секреты и ключи API
  • Персональные данные
  • Огромные блоки кода
  • Устаревшую документацию
  • Информацию не для Claude

Советы по организации памяти

  • 1.Держите CLAUDE.md актуальным — устаревшая информация мешает
  • 2.Разбивайте на модули для больших проектов
  • 3.Используйте CLAUDE.local.md для персональных настроек
  • 4.Коммитьте .claude/CLAUDE.md в git для команды

Частые вопросы

Что такое CLAUDE.md и зачем он нужен?

CLAUDE.md — это текстовый Markdown-файл с постоянными инструкциями для проекта, который Claude Code автоматически подгружает в контекст в начале каждой сессии. В нём описывают команды сборки, структуру директорий, код-стайл и важные модули, чтобы не повторять это в каждом запросе. Это не обучение модели и не база данных, а обычные заметки, которые Claude читает как руководство.

Где хранятся файлы памяти Claude Code?

Память образует иерархию из нескольких уровней. Организационный уровень задаёт правила для всей компании. Пользовательский файл ~/.claude/CLAUDE.md хранит ваши личные предпочтения для всех проектов. Проектный .claude/CLAUDE.md коммитится в git и действует для всей команды. Файл CLAUDE.local.md — для персональных заметок, которые в git не попадают. Claude Code объединяет все уровни сразу.

Как добавить информацию в память Claude Code?

Используйте команду /memory прямо в сессии: введите её, укажите, что нужно запомнить (например, «всегда используй pnpm вместо npm»), и Claude сам допишет правило в нужный файл CLAUDE.md. Также можно отредактировать CLAUDE.md вручную. Через директиву @path/to/file один файл может импортировать другие, разбивая большой CLAUDE.md на модули.

Что нельзя записывать в CLAUDE.md?

Не кладите в память секреты и ключи API — файл коммитится в git и может утечь. Избегайте устаревших инструкций: они вводят модель в заблуждение сильнее, чем их отсутствие. Не раздувайте файл огромными блоками кода и персональными данными. Держите CLAUDE.md коротким и актуальным — так память приносит максимум пользы.

Квиз по уроку

1 из 1

1.Какова цель файла CLAUDE.md?

Этот урок — часть структурированного курса по LLM.

Мой путь обучения