Universal-dev-skills commit-standards
install
source · Clone the upstream repo
git clone https://github.com/AsiaOstrich/universal-dev-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/AsiaOstrich/universal-dev-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/commit-standards" ~/.claude/skills/asiaostrich-universal-dev-skills-commit-standards && rm -rf "$T"
manifest:
skills/commit-standards/SKILL.mdsource content
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 |
|---|---|---|
| | New feature |
| | Bug fix |
| | Code refactoring (no functional change) |
| | Documentation only |
| | Formatting (no code logic change) |
| | Adding or updating tests |
| | Performance improvement |
| | Build system or dependencies |
| | CI/CD pipeline changes |
| | Maintenance tasks |
| | Revert previous commit |
| | 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:
Examples
✅ Good Examples (English)
feat(auth): Add OAuth2 Google login support fix(api): Resolve memory leak in user session cache refactor(database): Extract query builder to separate class docs(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 scope feat(auth): added google login # Past tense Update stuff. # Period, vague WIP # Not descriptive
Body Guidelines
Use the body to explain WHY the change was made:
fix(api): Resolve race condition in concurrent user updates Why this occurred: - Two simultaneous PUT requests could overwrite each other - No optimistic locking implemented What this fix does: - Add version field to User model - Return 409 Conflict if version mismatch Fixes #789
Breaking Changes
Always document breaking changes in footer:
feat(api): Change user endpoint response format BREAKING CHANGE: User API response format changed Migration guide: 1. Update API clients to remove .data wrapper 2. Use created_at instead of createdAt
Issue References
Closes #123 # Automatically closes issue Fixes #456 # Automatically closes issue Refs #789 # Links without closing
Configuration Detection
This skill supports project-specific language configuration.
Detection Order
- Check
for "Commit Message Language" sectionCONTRIBUTING.md - 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 Language This project uses **[chosen option]** commit types. <!-- Options: English | Traditional Chinese | Bilingual -->
Configuration Example
In project's
CONTRIBUTING.md:
## Commit Message Language This project uses **English** commit types. ### Allowed Types feat, fix, refactor, docs, style, test, perf, build, ci, chore, revert, security
License: CC BY 4.0 | Source: universal-dev-standards