# Сгенерировать commit message (EvoBGP) Сгенерируй сообщение коммита для **текущих staged-изменений**. Не выполняй `git commit`, если пользователь явно не просил закоммитить. ## Обязательный workflow (MUST) 1. Прочитай скилл [`.cursor/skills/commit-message/SKILL.md`](../skills/commit-message/SKILL.md). 2. Следуй правилу [`.cursor/rules/conventional-commits.mdc`](../rules/conventional-commits.mdc). 3. **Первым вызовом Shell** из корня репозитория: ```powershell powershell -NoProfile -File scripts/commit/staged-context.ps1 ``` 4. Строй текст **только** по JSON stdout (`groups`, `stat`, `diff_excerpt`). Exit `1` → index пуст, сообщи пользователю. 5. **Запрещено** обходить скрипт через один `git diff --cached`. ## Формат вывода Для каждого коммита (при auto-split — по одному блоку): ``` (): <тело на русском> ``` Плюс пояснение (RU): semver impact (`minor`|`patch`|`none`|`major`), почему выбран type, был ли split. ## Semver (кратко) - Новая пользовательская возможность → `feat` (minor) - Починка ожидаемого поведения / баг → `fix` (patch) - Follow-up баги после недавнего `feat` в том же scope → **`fix`**, не `feat` - Только перестройка без нового поведения → `refactor` (patch, без новых функций) Заголовок — EN, императив, ≤72 символов. Тело — RU.