🧭 Что это
Codebase Onboarding Guide — это навык (skill) для Claude Code, который автоматически анализирует незнакомую кодовую базу и генерирует структурированное руководство по онбордингу (onboarding guide) и/или стартовый файл CLAUDE.md с проектными конвенциями. Он предназначен для разработчиков, которые впервые открывают репозиторий с Claude Code, присоединяются к новой команде или хотят быстро погрузиться в архитектуру проекта без ручного изучения каждого файла.
⚙️ Как работает
Процесс состоит из четырёх фаз, которые выполняются последовательно или выборочно в зависимости от запроса пользователя.
🔍 Фаза 1: Разведка (Reconnaissance)
Сбор «сигналов» о проекте без чтения каждого файла. Используются Glob и Grep для параллельного обнаружения:
- Манифесты пакетов:
package.json, go.mod, Cargo.toml, pyproject.toml, pom.xml, build.gradle, Gemfile, composer.json, mix.exs, pubspec.yaml.
- Фреймворки: конфиги Next.js, Nuxt, Angular, Vite, Django, Flask, FastAPI, Rails.
- Точки входа:
main.*, index.*, app.*, server.*, cmd/, src/main/.
- Структура директорий: верхние два уровня дерева (исключая
node_modules, vendor, .git, dist, build, __pycache__, .next).
- Инструменты и CI: ESLint, Prettier, TypeScript, Makefile, Docker, GitHub Actions,
.env.example.
- Тесты: папки
tests/, test/, __tests__/, файлы *_test.go, *.spec.ts, конфиги jest.config.*, vitest.config.*, pytest.ini.
🗺️ Фаза 2: Картирование архитектуры (Architecture Mapping)
На основе данных разведки определяются:
- Технологический стек — языки, фреймворки, базы данных, ORM, сборщики, CI/CD.
- Архитектурный паттерн — монолит, монопепо (monorepo), микросервисы, serverless; фронтенд/бэкенд; стиль API (REST, GraphQL, gRPC, tRPC).
- Ключевые директории — сопоставление путей с их назначением (например,
src/components/ → React-компоненты).
- Жизненный цикл запроса — трассировка от входа (роутер/обработчик) через валидацию (middleware/схемы), бизнес-логику (сервисы/use cases) до базы данных (ORM/запросы).
📐 Фаза 3: Определение конвенций (Convention Detection)
Выявление паттернов, которые уже используются в кодовой базе:
- Соглашения об именовании:
kebab-case, camelCase, PascalCase, snake_case для файлов и компонентов.
- Паттерны кода: стиль обработки ошибок (
try/catch vs Result), DI или прямые импорты, подход к управлению состоянием, асинхронные паттерны (async/await, промисы, каналы).
- Git-конвенции: стиль именования веток, коммитов, workflow PR (squash, merge, rebase). Если история Git отсутствует или слишком мелкая (
--depth 1), раздел пропускается с пометкой.
📄 Фаза 4: Генерация артефактов (Generate Onboarding Artifacts)
В зависимости от запроса генерируется один или оба результата:
Артефакт 1: Руководство по онбордингу (Onboarding Guide)
Насыщенный Markdown в виде таблиц и списков:
- Обзор проекта и краткое описание.
- Таблица технологического стека (слой, технология, версия).
- Архитектурная схема (текстовое описание связей компонентов).
- Ключевые точки входа (
src/api/, prisma/schema.prisma, next.config.ts).
- Карта директорий (назначение каждой папки).
- Пример жизненного цикла запроса.
- Список конвенций (именование, обработка ошибок, тестирование, Git).
- Таблицы «Куда смотреть» для типовых задач (добавить API, UI, таблицу БД, тест).
Артефакт 2: Стартовый CLAUDE.md
Генерируется или дополняется файл CLAUDE.md в корне проекта, содержащий:
- Tech Stack.
- Code Style (конвенции именования, паттерны).
- Команды для тестирования, сборки, линтинга.
- Карту ключевых директорий.
- Git-конвенции.
Если CLAUDE.md уже существует, навык читает его и дополняет новыми данными, явно помечая добавленные/изменённые секции.
🎯 Когда использовать
Этот навык полезен в следующих сценариях:
- Первое открытие проекта в Claude Code — для быстрого понимания структуры и конвенций.
- Присоединение к новой команде — чтобы не тратить часы на ручное изучение репозитория.
- По запросу «Помоги мне разобраться в этом коде» — пользователь просит объяснить код базу.
- Генерация
CLAUDE.md — запросы вроде «сгенерируй CLAUDE.md» или «обнови файл конфигурации Claude».
- Обновление конвенций — когда проект уже существует, но его конвенции изменились, навык может дополнить существующий файл новыми правилами.
📝 Важно знать
- Не читает каждый файл подряд — использует Glob и Grep для эффективного поиска.
- Если обнаруженное из конфига не совпадает с кодом — навык доверяет реальному коду, а не конфигурации.
- Если конвенцию не удалось уверенно определить, навык честно сообщает об этом (например, «Не удалось определить test runner»), а не угадывает.
- Готовый
CLAUDE.md не должен превышать 100 строк — навык избегает перечисления всех зависимостей или описания очевидных папок (src/).
- Руководство по онбордингу ориентировано на просмотр за 2 минуты — кратко и структурированно.
Примеры использования
Пример 1. Пользователь пишет: «Onboard me to this codebase». Навык выполняет все 4 фазы, выводит руководство в диалог и записывает CLAUDE.md в корень проекта.
Пример 2. Пользователь пишет: «Generate a CLAUDE.md». Навык выполняет фазы 1–3 (разведка, архитектура, конвенции) и генерирует только CLAUDE.md.
Пример 3. Пользователь пишет: «Update the CLAUDE.md». Навык читает существующий файл, повторно анализирует код и вливает новые находки, помечая изменения.
Команды для типовых задач (пример для Node.js/Next.js)
# Запустить дев-сервер
npm run dev
# Запустить тесты
npm test
# Запустить линтер
npm run lint
# Выполнить миграции БД
npx prisma migrate dev
# Собрать для продакшена
npm run build
🚫 Анти-паттерны (чего избегать)
- Генерация пустого
CLAUDE.md длиннее 100 строк.
- Перечисление всех зависимостей — важны только те, что влияют на стиль кода.
- Описание очевидных папок («
src/ содержит исходный код»).
- Копирование README — руководство должно добавлять структурную информацию, которой нет в README.
Комментарии
Комментариев пока нет. Будьте первым.