| name | init-project |
| description | Генерирует CLAUDE.md для QA-проекта: сканирует репозиторий, анализирует tech stack, создаёт онбординг-документ. Используй для нового QA-проекта без CLAUDE.md или настройки AI-assisted workflow. Не используй если CLAUDE.md уже настроен — редактируй вручную. |
/init-project — Генератор CLAUDE.md
Автоматическое создание CLAUDE.md (онбординг AI в проект) на основе анализа репозитория.
Фокус: QA-проекты (API тесты, UI тесты, нагрузочное тестирование).
Перед началом
Прочитай .claude/qa_agent.md.
Когда использовать
- Новый QA-проект без CLAUDE.md
- Миграция существующего проекта на AI-assisted workflow
- Стандартизация CLAUDE.md по команде
Алгоритм выполнения
Verbosity Protocol
Structured Output Priority: Весь analysis идёт в артефакт (MD/HTML), не в чат.
Chat output (ограничения):
- Brief Summary: max 5 строк (что нашли, сколько, итог)
- Findings table: max 15 строк (топ по severity)
- Полный отчёт:
📊 Полный отчёт: {path} + открыть файл
Iterative steps: Не выводить прогресс по каждому файлу. Checkpoint только при:
- Phase transition (Фаза N → Фаза N+1)
- Blocker обнаружен
- Завершение (SKILL COMPLETE)
Tools first:
- Grep → table → report, без "Now I will grep..."
- Read → analyze → report, без "The file shows..."
Post-Check: Inline перед SKILL COMPLETE (5-7 строк checklist), не отдельный файл.
Шаг 1: Сканирование проекта
Найди и проанализируй:
1. Build файлы:
- build.gradle.kts / build.gradle → Kotlin/Java + зависимости
- pom.xml → Maven + зависимости
- package.json → Node.js + зависимости
- requirements.txt / pyproject.toml → Python + зависимости
2. Структуру тестов:
- src/test/ → стандартная JVM структура
- tests/ → Python/JS структура
- __tests__/ → Jest структура
3. Конфигурации:
- allure.properties → Allure reporting
- pytest.ini → pytest конфиг
- jest.config.js → Jest конфиг
4. CI/CD:
- .github/workflows/ → GitHub Actions
- .gitlab-ci.yml → GitLab CI
- Jenkinsfile → Jenkins
Обработка ошибок Шага 1
Build-файлы не найдены → Спроси пользователя:
Не удалось определить tech stack автоматически. Уточни вручную:
- Язык/рантайм: (Kotlin / Java / Python / JS / Go / другой)
- HTTP-клиент для тестов:
- Фреймворк тестирования:
- Reporting:
Структура тестов нестандартная (нет src/test/, tests/) → Попроси указать корневую папку тестов.
CI/CD-конфиги отсутствуют → Пропусти секцию CI в CLAUDE.md, отметь как TODO.
Шаг 1.5: Определение типа проекта
На основе Шага 1 определи тип:
| Признак | Тип | Включить в CLAUDE.md |
|---|
src/test/ существует | QA-проект | QA Skills (если .claude/skills/ есть) |
Нет src/test/, есть Helm/Terraform/k8s | Infra-проект | Architecture, Key Values |
| Оба признака | Смешанный | Все секции |
QA Skills секция: включать только если в целевом проекте существует .claude/skills/. Если .claude/skills/ отсутствует — секцию не добавлять.
Architecture секция: включать если проект — infra/backend (нет src/test/). Описать key design decisions из кода: компоненты, зависимости между ними, нетривиальные конфигурации.
CI/CD Flow: включать если найдены CI-конфиги (.github/workflows/, .gitlab-ci.yml, Jenkinsfile). Формат — диаграмма кодовым блоком.
Шаг 2: Определение Tech Stack
На основе зависимостей определи:
| Категория | Что искать | BANNED альтернативы |
|---|
| HTTP Client | ktor-client, requests, axios | retrofit, okhttp, urllib |
| Serialization | jackson, pydantic, zod | gson, moshi |
| Assertions | kotest, pytest, jest | junit assertEquals, unittest |
| Test Framework | junit5, pytest, jest | testng, nose |
| Reporting | allure | — |
Шаг 3: Генерация CLAUDE.md
Прочитай и используй шаблон из references/claude-md-template.md.
Заполни все placeholder'ы [xxx] данными из Шагов 1-2. Выбери нужный Tech Stack по языку проекта (секция "Tech Stack по языкам" в шаблоне).
Key Values: если в проекте есть конфигурационные файлы с нетривиальными дефолтами (values.yaml, .env.example, application.yml) — добавь секцию ## Key Values с объяснением критичных настроек (не очевидных из названия).
Architecture (для infra/backend-проектов): опиши key design decisions — компоненты, схему взаимодействия, нетривиальные детали реализации. Используй prose-формат.
Шаг 4: Валидация
Перед сохранением проверь:
Вывод
Сохрани результат в CLAUDE.md в корне проекта.
Пример диалога
User: /init-project
AI: Сканирую проект...
Найдено:
- build.gradle.kts → Kotlin 1.9
- Зависимости: ktor-client, jackson, kotest, allure
- Структура: src/test/kotlin/
- CI: .github/workflows/test.yml
Генерирую CLAUDE.md...
[Показывает сгенерированный файл]
Сохранить в ./CLAUDE.md? (y/n)
Связанные файлы
- Шаблон:
.claude/skills/init-project/references/claude-md-template.md
- Полный гайд:
docs/ai-files-handbook.md
- Примеры: существующий
CLAUDE.md в проекте (если есть)