commit-standards
AsiaOstrich/universal-dev-skills
Format commit messages following conventional commits standard.Use when: writing commit messages, git commit, reviewing commit history.Keywords: commit, git, message, conventional, 提交, 訊息, feat, fix, refactor.
...Expand allAbout commit-standards
The 'commit-standards' skill enforces consistent commit message formatting by following the conventional commits standard. This ensures that commit messages are clear, concise, and informative. It solves the problem of inconsistent or vague commit messages by providing a structured approach to message writing, promoting a more organized and understandable commit history. This standard is particularly useful for collaboration in software development projects, where clear versioning and change documentation are essential for both teams and automated systems.
The skill is designed to provide a simple and intuitive way to format commit messages. It uses a set of predefined commit types like 'feat', 'fix', 'refactor', and others to categorize changes effectively. Users can follow a strict format that includes a subject, body, and footer, with specific rules for subject line length, capitalization, and punctuation. The skill also supports multilingual commit message formats, including English, Traditional Chinese, and Bilingual options, to cater to diverse development environments.
This skill is ideal for developers, teams, and open-source contributors who want to maintain a consistent and professional approach to commit messages. It is particularly beneficial for code reviewers, version control managers, and any stakeholders relying on commit history for understanding code changes. The skill's configuration system allows for flexible customization based on project preferences, making it adaptable to various workflows and team needs.
FAQ
How do I configure the commit message language?
You can configure the commit message language in the 'CONTRIBUTING.md' file of your project. If no configuration is found, the system will default to English. The available options are English, Traditional Chinese, and Bilingual.
What happens if my commit message doesn't follow the standard?
The skill will not automatically enforce any errors but encourages best practices for consistency and clarity. It's up to your team to ensure messages adhere to the format.
Can I use this skill for non-software development projects?
Yes, while primarily designed for software projects, any project that requires clear versioning and documentation of changes can benefit from this skill.
Does this skill support multiple languages in commit messages?
Yes, the skill supports English, Traditional Chinese, and Bilingual commit messages. You can choose your preferred language configuration in the 'CONTRIBUTING.md' file.
What commit types are supported by this skill?
The skill supports various commit types, including 'feat', 'fix', 'refactor', 'docs', 'style', 'test', 'perf', 'build', 'ci', 'chore', 'revert', and 'security'.
Commit Message Standards
This skill ensures consistent, meaningful commit messages following conventional commits.
Quick Reference
Basic Format
<type>(<scope>): <subject><body><footer>Commit Types
| English | 中文 | When to Use |
|---|---|---|
feat | 新增 | New feature |
fix | 修正 | Bug fix |
refactor | 重構 | Code refactoring (no functional change) |
docs | 文件 | Documentation only |
style | 樣式 | Formatting (no code logic change) |
test | 測試 | Adding or updating tests |
perf | 效能 | Performance improvement |
build | 建置 | Build system or dependencies |
ci | 整合 | CI/CD pipeline changes |
chore | 維護 | Maintenance tasks |
revert | 回退 | Revert previous commit |
security | 安全 | Security vulnerability fix |
Subject Line Rules
- Length: ≤72 characters (50 ideal)
- Tense: Imperative mood ("Add feature" not "Added feature")
- Capitalization: First letter capitalized
- No period: Don't end with a period
Detailed Guidelines
For complete standards, see:
- Conventional Commits Guide
- Language Options
Examples
✅ Good Examples (English)
feat(auth): Add OAuth2 Google login supportfix(api): Resolve memory leak in user session cacherefactor(database): Extract query builder to separate classdocs(readme): Update installation instructions for Node 20✅ Good Examples (中文)
新增(認證): 實作 OAuth2 Google 登入支援修正(API): 解決使用者 session 快取記憶體洩漏重構(資料庫): 提取查詢建構器為獨立類別✅ Good Example (Bilingual)
feat(auth): Add OAuth2 Google login support. 新增 OAuth2 Google 登入支援。Implement Google OAuth2 authentication flow for user login.實作 Google OAuth2 認證流程供使用者登入。Closes #123❌ Bad Examples
fixed bug # Too vague, no scopefeat(auth): added google login # Past tenseUpdate stuff. # Period, vagueWIP # Not descriptiveBody Guidelines
Use the body to explain WHY the change was made:
fix(api): Resolve race condition in concurrent user updatesWhy this occurred:- Two simultaneous PUT requests could overwrite each other- No optimistic locking implementedWhat this fix does:- Add version field to User model- Return 409 Conflict if version mismatchFixes #789Breaking Changes
Always document breaking changes in footer:
feat(api): Change user endpoint response formatBREAKING CHANGE: User API response format changedMigration guide:1. Update API clients to remove .data wrapper2. Use created_at instead of createdAtIssue References
Closes #123 # Automatically closes issueFixes #456 # Automatically closes issueRefs #789 # Links without closingConfiguration Detection
This skill supports project-specific language configuration.
Detection Order
- Check
CONTRIBUTING.mdfor "Commit Message Language" section - If found, use the specified option (English / Traditional Chinese / Bilingual)
- If not found, default to English for maximum tool compatibility
First-Time Setup
If no configuration found and context is unclear:
- Ask the user: "This project hasn't configured commit message language preference. Which option would you like to use? (English / 中文 / Bilingual)"
- After user selection, suggest documenting in
CONTRIBUTING.md:
## Commit Message LanguageThis project uses **[chosen option]** commit types.<!-- Options: English | Traditional Chinese | Bilingual -->
Configuration Example
In project's CONTRIBUTING.md:
## Commit Message LanguageThis project uses **English** commit types.### Allowed Typesfeat, fix, refactor, docs, style, test, perf, build, ci, chore, revert, security
License: CC BY 4.0 | Source: universal-dev-standards
Install commit-standards
Download and extract the skill files to your .claude/skills/ directory.
Download ZIPClone the repository and copy the skill files to your project.
git clone https://github.com/AsiaOstrich/universal-dev-skills/blob/main/skills/commit-standards/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
Copy





Home
