Руководство по настройке CLAUDE.md

Использование CLAUDE.md для предоставления контекста проекта и стандартов кодирования Claude Code

Руководство по настройке CLAUDE.md

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

Зачем нужен CLAUDE.md

Без CLAUDE.md вам, возможно, придётся снова и снова объяснять в каждом диалоге:

  • «В этом проекте используется pnpm, а не npm»
  • «Команда тестирования — yarn test:unit, а не npm test»
  • «Все компоненты используют TypeScript, не используйте any»

Запишите эту информацию в CLAUDE.md — Claude будет автоматически читать её при каждом запуске, без необходимости повторять.

Иерархия файлов

Claude Code читает CLAUDE.md на нескольких уровнях и объединяет их:

Расположение Область применения
~/.claude/CLAUDE.md Глобальная конфигурация, применяется ко всем проектам
CLAUDE.md в корне проекта Конфигурация проекта, коммитится в Git для совместного использования командой
.claude/CLAUDE.md Приватная конфигурация проекта, можно добавить в .gitignore
CLAUDE.md в подкаталогах Читается только когда Claude находится в этом каталоге

Быстрое создание

Используйте команду /init для автоматической генерации:

/init

Claude проанализирует текущую структуру проекта и автоматически создаст CLAUDE.md с информацией о проекте.

Базовая структура

# Название проекта

## Обзор
Краткое описание назначения и технологического стека проекта.

## Технологический стек

- Среда выполнения: Node.js 20
- Фреймворк: Next.js 15
- Стили: Tailwind CSS
- База данных: PostgreSQL + Prisma

## Часто используемые команды

- Запуск сервера разработки: `npm run dev`
- Запуск тестов: `npm test`
- Сборка продакшн-версии: `npm run build`
- Проверка кода: `npm run lint`

## Стандарты кодирования

- Использовать TypeScript, запрещён тип `any`
- Компоненты писать в функциональном стиле
- Стили только через Tailwind, без инлайн-стилей
- Формат сообщений коммитов: префиксы `feat:` / `fix:` / `docs:` и т.д.

## Структура проекта

- `src/app/` — страницы Next.js App Router
- `src/components/` — повторно используемые компоненты
- `src/lib/` — вспомогательные функции
- `prisma/` — схема базы данных и миграции

## Важные замечания

- Не изменяйте `prisma/migrations/`, только создавайте новые миграции
- Все маршруты API находятся в `src/app/api/`
- Ресурсы изображений размещайте в `public/images/`

Практические советы

1. Указание менеджера пакетов

## Управление пакетами
Использовать pnpm, не использовать npm или yarn.
Установка зависимостей: `pnpm install`
Добавление зависимости: `pnpm add <имя-пакета>`

2. Описание стандартов тестирования

## Тестирование

- Модульные тесты: `vitest`, файлы с суффиксом `.test.ts`
- E2E-тесты: `playwright`, расположены в `tests/e2e/`
- Запуск модульных тестов: `pnpm test:unit`
- Запуск E2E: `pnpm test:e2e`
- Новые функции должны содержать тесты

3. Указание запрещённых операций

## Запрещённые операции

- Не использовать `console.log`, использовать модуль `logger` проекта
- Не изменять `package-lock.json` напрямую
- Не коммитить напрямую в ветку `main`, использовать ветки функций

4. Предоставление архитектурного контекста

## Описание архитектуры
В проекте используется гексагональная архитектура (Hexagonal Architecture):

- `domain/` — бизнес-логика, не зависит от внешних фреймворков
- `application/` — варианты использования, координирует domain и infrastructure
- `infrastructure/` — внешние адаптеры: база данных, HTTP и т.д.
- `interfaces/` — точки входа: веб-контроллеры, CLI и т.д.
Новые функции должны следовать этой многоуровневой структуре, не вводите внешние зависимости в слой domain.

5. Ссылки на другие документы

## Дополнительная информация

- Документация по API: `docs/api.md`
- Процесс развёртывания: `docs/deploy.md`
- Схема базы данных: `prisma/schema.prisma`

CLAUDE.md и управление контекстом

Содержимое CLAUDE.md занимает пространство контекста. Рекомендуется:

  • Держать CLAUDE.md кратким, сосредоточившись на наиболее важной информации
  • Для подробной архитектурной документации указывайте в CLAUDE.md пути к файлам, а не копируйте содержимое напрямую
  • В длительных сеансах CLAUDE.md всегда остаётся видимым (не удаляется командой /compact)

Следующие шаги

🚀
Начните с QCode — ИИ-ассистент для программистов
Официальный ретранслятор Claude Code, быстро и надёжно
Посмотреть тарифы → Создать аккаунт