Awesome-claude commit
install
source · Clone the upstream repo
git clone https://github.com/Hedgehogues/awesome-claude
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Hedgehogues/awesome-claude "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/commit" ~/.claude/skills/hedgehogues-awesome-claude-commit && rm -rf "$T"
manifest:
skills/commit/SKILL.mdsource content
Задача
Создай коммит по конвенциям проекта. $ARGUMENTS
Контекст (предвычислено)
Последние коммиты (стиль и TASK-ID)
!
git log --oneline -10
Текущий статус
!
git status --short
1. Собери недостающее
git diff HEAD
Статус и история уже выше — вызывать не нужно.
2. Проанализируй
- Какие файлы изменены, новые, удалены
- Есть ли файлы, которые НЕ НУЖНО коммитить (
, credentials, временные).env - Сгруппируй по логическим блокам — один коммит = одно изменение
3. Определи TASK-ID
- Из
→ используй его$ARGUMENTS - Иначе → определи формат из
(напримерgit log
,[TG-42]
)PROJ-123 - Не определяется → спроси
4. Формат commit message
Проверь
.claude/rules/git.md или определи стиль из git log --oneline -10.
Если конвенции не найдены:
[TASK-ID]: short summary (imperative mood, lowercase, max 72 chars) ## What changed - Конкретный bullet для каждого значимого изменения (имена файлов, области) ## Why - Мотивация, какую проблему решает ## Details - Решения по реализации, неочевидные моменты, побочные эффекты
Всегда объясняй WHY. Упоминай покрытие тестами.
5. Покажи план и дождись подтверждения
- Файлы для staging
- Полный текст commit message
- Пропущенные файлы и почему
НЕ коммить без одобрения.
6. Выполни коммит
git add <file1> <file2> ... git commit -m "$(cat <<'EOF' [TASK-ID]: short summary ## What changed - ... ## Why - ... ## Details - ... Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> EOF )"
7. Проверь
git status git log -1
Правила
- Никогда: push, --amend, --no-verify, коммит
/секретов — без явной просьбы.env - Добавляй файлы по именам (
), неgit add file1 file2git add . - При падении pre-commit hook — исправь и создай НОВЫЙ коммит (не amend)