← Back to list

git-commit
by juliaogris
⭐ 0🍴 0📅 Dec 19, 2025
SKILL.md
name: git-commit description: Use when creating git commits or pull requests, or when asked to write a commit message
Git Commit Messages
Overview
Write commit messages and PR descriptions with clear subject lines, explanatory bodies, and optional trailers. Be autonomous when intent is clear, interactive when clarification needed.
Commit Message Format
Subject Line
- Separate from body with blank line
- Limit to 50 characters
- Start with lowercase tag + colon:
cli:,rfd:,api:,db:,release: - Capitalize first word after tag
- Imperative mood ("Add feature" not "Added feature")
- No period at end
Body
- Wrap at 72 characters
- Explain "what" and "why", not "how"
- Prose over bullet lists (bullets only when truly needed)
- May use markdown like
backticksfor code/commands - Include verbatim commands when changes were generated (
go generate,protoc)
Do NOT
- Use semantic commits (
feat:,fix:,chore:) - Add "Generated by Claude" or co-author trailers
- End subject with period
Example
rfd: Update with recent decision to drop DMS
After extensive testing, AWS DMS showed no benefits over logical
replication while being less stable and slower. The production CLI
will use logical replication only, with cluster_name instead of
tenant_id for easier tenant identification.
Trailers
Add at end of body when relevant:
| Trailer | Purpose |
|---|---|
link: | Reference URL for context |
issue: | GitHub issue being addressed |
poc: | Proof of concept repository/URL |
gen-command: | Command that generated changes |
commit-group: | Groups related commits that could be one |
Example with Trailers
api: Add user permissions endpoint
Adds GET /api/v1/users/{id}/permissions for fetching effective
permissions. Required for the new RBAC dashboard.
issue: https://github.com/org/repo/issues/123
gen-command: go generate ./pkg/api/...
Interactive vs Autonomous
Autonomous (just write the message) when:
- Single file or tightly related files changed
- Tag obvious from paths (
rfd/->rfd:,cmd/cli/->cli:) - Purpose clear from diff or conversation context
Interactive (ask questions) when:
- Changes span multiple unrelated areas
- Multiple valid tags could apply
- The "why" isn't clear
- Large refactor where intent matters
- Need to split generated vs manual changes
Questions to Ask
- What tag best describes this change?
- What's the motivation behind this change?
- Should this be split into multiple commits?
- Any trailers to add?
PR Descriptions
Title
Same as commit subject: ~50 chars, tag prefix, imperative mood, no period.
Body
## Summary
<1-3 sentences explaining the "why">
## Test plan
<How to verify — manual steps, test commands, etc.>
Optional Sections
## Breaking changes— if any## Related— links to issues, RFDs, other PRs
Do NOT
- Add "Generated by Claude" footers
- Use bullet lists in summary unless truly needed
Score
Total Score
55/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
○言語
プログラミング言語が設定されている
0/5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon