From git-workflow
Creates professional git commits with automated pre-commit checks for Java, Python, React, and documentation projects. Generates emoji conventional commit messages and analyzes staging status. Produces atomic commits following best practices.
How this skill is triggered — by the user, by Claude, or both
Slash command
/git-workflow:professional-commit-workflowThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill automates the complete Git commit workflow with professional quality checks and conventional commit messages. It replaces the `/git-workflow:commit` command with a reusable, distributable skill.
MIGRATION.mdREADME.mdconfig/commit_types.jsonconfig/validation_rules.jsondocs/best-practices.mddocs/commit-types.mddocs/pre-commit-checks.mddocs/troubleshooting.mdrequirements.txtscripts/commit_message.pyscripts/git_analyzer.pyscripts/main.pyscripts/project_detector.pyscripts/utils.pyscripts/validators/__init__.pyscripts/validators/base_validator.pyscripts/validators/docs_validator.pyscripts/validators/java_validator.pyscripts/validators/python_validator.pyscripts/validators/react_validator.pyThis skill automates the complete Git commit workflow with professional quality checks and conventional commit messages. It replaces the /git-workflow:commit command with a reusable, distributable skill.
Special Features:
Required:
Optional (for specific validations):
# Install Python dependencies
pip install -r requirements.txt --break-system-packages
User initiates commit: "Create a commit" or "Commit the changes"
Detect options:
--no-verify: Skips pre-commit checks--skip-tests: Skips tests only--force-push: Force push after commit (use with caution!)Execute project detection:
python scripts/project_detector.py
Automatically detects:
Pre-commit validation (unless --no-verify):
python scripts/main.py --validate-only
Executes project-specific checks:
Staging analysis:
python scripts/git_analyzer.py --analyze-staging
git status for staged filesDiff analysis:
python scripts/git_analyzer.py --analyze-diff
git diff for logical changesGenerate commit message:
python scripts/commit_message.py --generate
<emoji> <type>: <description>Create commit:
git commit -m "$(python scripts/commit_message.py --output)"
Optional: Offer push:
git push origin <branch>
# Standard commit workflow
python scripts/main.py
# Validation only (no commit)
python scripts/main.py --validate-only
# Skip checks
python scripts/main.py --no-verify
# Skip tests
python scripts/main.py --skip-tests
# With force push
python scripts/main.py --force-push
Successful workflow:
Project detected: React/TypeScript
Pre-commit checks passed (3/3)
ESLint: 0 errors
TypeScript: Compilation successful
Build: Successful
Staging analysis: 5 files ready
Commit type detected: feat
Commit created: feat: Add user dashboard with metrics
On validation failures:
Pre-commit checks failed (1/3)
ESLint: 0 errors
TypeScript: 2 errors found
- src/components/Dashboard.tsx:12 - Type 'string' is not assignable to type 'number'
Build: Successful
Commit aborted. Please fix errors or use --no-verify.
Defines emoji mappings for Conventional Commits:
{
"feat": {"emoji": "✨", "description": "New functionality"},
"fix": {"emoji": "🐛", "description": "Bug fix"},
"docs": {"emoji": "📚", "description": "Documentation"}
}
Project-specific validation rules:
{
"java": {
"build": true,
"tests": true,
"checkstyle": true
},
"python": {
"ruff": true,
"black": true,
"pytest": true,
"mypy": true
}
}
Validation errors:
--no-verify optionGit errors:
Tool not found:
Atomic commits:
Meaningful messages:
Code quality:
Complete guidelines: docs/best-practices.md
npx claudepluginhub talent-factory/claude-plugins --plugin git-workflowValidates git commits with conventional commit format. Handles staging, message generation, and commit execution. Activates on explicit commit requests or ship/finalization intent.
Guides systematic git commits: checks staging status, reviews diffs, splits changes into atomic commits, formats conventional messages. Use before PRs or when committing code.
Creates git commits with repo detection, pre-commit checks, submodule support, and conventional messages. Activates on /commit or git commit requests.