commit
Smart Atomic Commits
Analyze workspace changes, split into logical atomic units, and commit with emoji conventional format.
Process
- Inspect: Run
git statusandgit diff HEADto understand changes - Auto-stage: If nothing is staged,
git addall modified and new files - Analyze: Identify if multiple distinct logical changes should be split based on:
- Different concerns (unrelated parts of codebase)
- Different types (features vs fixes vs refactoring)
- File patterns (source vs docs vs config)
- Logical grouping (easier to understand separately)
- Size (large changes clearer when broken down)
- Commit: For each atomic unit, stage relevant files and commit
Commit Format
type(scope)!: emoji description
| Component | Required | Notes |
|---|---|---|
type |
Yes | Conventional commit type |
(scope) |
No | Lowercase, hyphenated (e.g., user-auth, api-client). Omit only when truly global |
! |
No | Breaking change indicator |
emoji |
Yes | After the colon, before description |
description |
Yes | Imperative mood, present tense |
Constraints: First line under 72 characters. Focus on "why" over "what". Imperative mood ("add" not "added").
Breaking Changes
Add ! after scope/type. Include BREAKING CHANGE footer:
git commit -m "feat(api)!: ๐ฅ change auth response format" \
-m "BREAKING CHANGE: /auth/login now returns { token, user } instead of { accessToken, refreshToken }"
Commit Types
| Type | Emoji | Description |
|---|---|---|
feat |
โจ | New feature |
fix |
๐ | Bug fix |
docs |
๐ | Documentation |
style |
๐ | Code style (formatting) |
refactor |
โป๏ธ | Neither fix nor feature |
perf |
โก๏ธ | Performance improvement |
test |
โ | Adding/fixing tests |
chore |
๐ง | Build process, tools |
ci |
๐ | CI/CD improvements |
revert |
โช๏ธ | Reverting changes |
Extended Emoji Reference
Features: ๐ท๏ธ types, ๐ฌ text/literals, ๐ i18n, ๐ business logic, ๐ฑ responsive, ๐ธ UX, ๐ฆบ validation, ๐งต concurrency, ๐๏ธ SEO, ๐ logs, ๐ฉ feature flags, ๐ฅ breaking, โฟ๏ธ a11y, โ๏ธ offline, ๐ analytics
Fixes: ๐ฉน simple fix, ๐ฅ catch errors, ๐ฝ๏ธ external API changes, ๐ฅ remove code, ๐๏ธ hotfix, ๐ CI fix, โ๏ธ typos, ๐ remove logs, ๐จ linter warnings, ๐๏ธ security
Refactoring: ๐ move/rename, ๐๏ธ architecture, โฐ๏ธ dead code, ๐จ structure/format
Chore: ๐ merge, ๐ฆ๏ธ packages, โ add dep, โ remove dep, ๐ฑ seeds, ๐งโ๐ป DX, ๐ฅ contributors, ๐ init project, ๐ release, ๐ pin deps, ๐ท CI system, ๐ license, ๐ gitignore
Docs: ๐ก source comments
Testing: ๐คก mocks, ๐ธ snapshots, ๐งช failing test
UI/Assets: ๐ซ animations, ๐ฑ assets
Database: ๐๏ธ DB changes
Other: โ๏ธ experiments, ๐ง WIP
Examples
feat: โจ add user authentication system
fix(parser): ๐ resolve memory leak in rendering process
refactor(api): โป๏ธ simplify error handling logic
feat(api)!: ๐ฅ change authentication endpoint response format
Split example (one diff, four commits):
feat(solc): โจ add new version type definitions
docs(solc): ๐ update documentation for new versions
chore(deps): ๐ง update package.json dependencies
test(solc): โ
add unit tests for new version features