원클릭으로
git-commit
Smart Git commit message generation
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Smart Git commit message generation
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
AI Agent code quality check - Use Ruff to check code standards for LangChain, AutoGen, and other AI Agent projects
Database migration management - Use Flyway and Atlas for version-controlled database schema migrations
Dockerfile best practices check - Use hadolint to validate Dockerfile security, performance, and compliance
Format JavaScript/TypeScript code with Prettier
Format Python code with Black
Auto-generate project changelog
| name | git-commit |
| description | Smart Git commit message generation |
Automatically generate standardized Git commit messages based on code changes, following Conventional Commits:
| Tool | Purpose | Check Command | Installation |
|---|---|---|---|
| Git | Version control | git --version | git-scm.com |
Optional tools:
- commitizen: Interactive commits (
npm install -g commitizen)- commitlint: Commit message validation (
npm install --save-dev @commitlint/cli)
"Generate Git commit message"
"Analyze my code changes and create a commit"
"Generate commit message based on staged changes"
AI will:
git status and git diff --stagedgit commit -m ... command# Install
npm install -g commitizen
cz-cli init cz-conventional-changelog --save-dev --save-exact
# Usage
git add .
git cz # or cz
git commit -m "feat(auth): add OAuth2 login support"
git commit -m "fix(api): resolve null pointer in user profile endpoint"
git commit -m "docs(readme): update installation instructions"
Following Conventional Commits standard:
<type>(<scope>): <subject>
<body>
<footer>
| type | Description | Example |
|---|---|---|
| feat | New feature | feat(auth): add Google SSO |
| fix | Bug fix | fix(api): handle timeout errors |
| docs | Documentation update | docs(api): update endpoint descriptions |
| style | Code formatting (no logic change) | style: format code with Black |
| refactor | Refactoring (not feat or fix) | refactor(db): simplify query logic |
| perf | Performance optimization | perf(api): cache frequently accessed data |
| test | Test related | test(auth): add unit tests for login |
| build | Build system or dependencies | build: upgrade webpack to v5 |
| ci | CI config files and scripts | ci: add GitHub Actions workflow |
| chore | Other changes not modifying src/test | chore: update .gitignore |
| revert | Revert previous commit | revert: revert commit abc1234 |
Specify the module or component being changed:
auth - Authentication moduleapi - API relatedui - User interfacedb - Databaseconfig - Configurationdeps - DependenciesBREAKING CHANGE: <description>Closes #123, #456Refs #789git commit -m "feat: add dark mode toggle"
git commit -m "fix: resolve login redirect issue"
git commit -m "docs: update API documentation"
git commit -m "feat(auth): implement two-factor authentication"
git commit -m "fix(ui): correct button alignment on mobile"
git commit -m "refactor(api): extract common validation logic"
git commit -m "feat(payment): integrate Stripe payment gateway
- Add Stripe SDK dependency
- Implement payment processing workflow
- Add webhook for payment status updates
- Include error handling for failed transactions
Closes #234"
git commit -m "feat(api)!: change authentication endpoint structure
BREAKING CHANGE: The /auth/login endpoint now requires email instead of username.
Migration guide: Update all API clients to send 'email' field instead of 'username'.
Refs #456"
{
"extends": ["@commitlint/config-conventional"],
"rules": {
"type-enum": [
2,
"always",
[
"feat", "fix", "docs", "style", "refactor",
"perf", "test", "build", "ci", "chore", "revert"
]
],
"type-case": [2, "always", "lower-case"],
"subject-case": [2, "never", ["upper-case"]],
"subject-empty": [2, "never"],
"subject-full-stop": [2, "never", "."],
"header-max-length": [2, "always", 100]
}
}
{
"path": "cz-conventional-changelog",
"types": {
"feat": {
"description": "A new feature",
"title": "Features"
},
"fix": {
"description": "A bug fix",
"title": "Bug Fixes"
}
},
"scopes": ["auth", "api", "ui", "db", "config"]
}
{
"husky": {
"hooks": {
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
}
}
# .git/hooks/commit-msg
#!/bin/sh
npx --no-install commitlint --edit $1
name: Lint Commits
on: [pull_request]
jobs:
commitlint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: wagoid/commitlint-github-action@v5
Q: How to modify the last commit message?
A: git commit --amend -m "new commit message"
Q: How to generate commit messages for multiple changes?
A:
git add file1 → git commit → git add file2 → git commitgit add -pQ: When is Breaking Change needed?
A: When changes cause existing functionality to be incompatible (API changes, config format changes, etc.)
Q: Is Scope required?
A: Not required, but strongly recommended for quick understanding of change scope
Q: How to enforce team compliance?
A: