Git Commit
$ARGUMENTS
Creates well-structured git commits following Conventional Commits specification.
Project context
- Staged changes: !
git diff --cached --stat 2>/dev/null || echo "nothing staged" - Current branch: !
git branch --show-current 2>/dev/null
Commit Format
<type>(<scope>): <description>
[optional body]
[optional footer]
Types
| Type | Description |
|---|---|
feat |
New feature |
fix |
Bug fix |
docs |
Documentation only |
style |
Formatting, no code change |
refactor |
Code restructuring |
perf |
Performance improvement |
test |
Adding/updating tests |
chore |
Maintenance tasks |
ci |
CI/CD changes |
Examples
# Feature
git commit -m "$(cat <<'EOF'
feat(search): add multi-hop reasoning support
- Implement query decomposition
- Add iterative retrieval with reasoning
- Include answer synthesis from aggregated context
EOF
)"
# Bug fix
git commit -m "$(cat <<'EOF'
fix(cache): resolve connection pool exhaustion
Root cause: connections not returned to pool on error
Solution: use context manager for automatic cleanup
Fixes #123
EOF
)"
Automated Pre-Commit Check
Run the bundled script for structured pre-commit analysis:
python3 ${CLAUDE_SKILL_DIR}/scripts/pre-commit-check.py
Use the output to validate staged changes, detect secrets, and suggest commit type/scope.
Pre-Commit Checklist
Before committing:
- Run linting:
make lint(ordocker exec {app-container} make lint) - Run tests:
make test(ordocker exec {app-container} make test) - Check for secrets: No API keys or passwords
Git Safety
- NEVER use
--forcepush without explicit request - NEVER skip hooks (
--no-verify) unless explicitly asked - ALWAYS create NEW commits (don't amend previous unless asked)
- Stage specific files, avoid
git add -Awith sensitive files