AgentSkillsCN

git-commit

遵循常规的 Commit 消息规范进行提交。适用于提交代码变更或撰写 Commit 消息时使用。

SKILL.md
--- frontmatter
name: git-commit
description: Create conventional commit messages. Use when committing changes or writing commit messages.

Conventional Commits Format

code
<type>(<scope>): <subject>

<body>

<footer>

Types

TypeDescription
featNew feature
fixBug fix
docsDocumentation only
styleFormatting, no code change
refactorCode restructuring, no behavior change
perfPerformance improvement
testAdding/updating tests
buildBuild system or dependencies
ciCI/CD configuration
choreMaintenance tasks
revertReverting previous commit

Rules

Subject Line

  • Max 50 characters
  • Imperative mood ("add" not "added")
  • No period at end
  • Lowercase

Body (optional)

  • Wrap at 72 characters
  • Explain what and why, not how
  • Separate from subject with blank line

Footer (optional)

  • Reference issues: Closes #123, Fixes #456
  • Breaking changes: BREAKING CHANGE: description

Examples

Simple

code
feat(auth): add OAuth2 login support

With Body

code
fix(api): handle null response from payment gateway

The payment gateway occasionally returns null instead of an error
object when the service is degraded. This caused unhandled exceptions.

Added null check and appropriate error handling.

Fixes #789

Breaking Change

code
refactor(api)!: change user endpoint response format

BREAKING CHANGE: The /api/users endpoint now returns an object
with a `data` wrapper instead of a raw array.

Before: [{ id: 1, name: "John" }]
After: { data: [{ id: 1, name: "John" }], meta: { total: 1 } }

Commands

bash
# Stage and commit
git add .
git commit -m "feat(scope): description"

# Amend last commit
git commit --amend

# Interactive rebase to fix commits
git rebase -i HEAD~3