金色时刻 · 15:48
让好资源,触手可及
AGENT SKILL

commit

commit 是面向效率工具、商业与营销、开发运维的 Agent Skill,来自 kasperjunge/agent-resources。查看技能说明、操作步骤与使用约定,并通过原项目了解详细用法。

Generate perfect semantic commit messages from staged changes. Use when the user says "commit", "/commit", asks for a commit message, wants to commit changes, or needs help writing a commit. Analyzes git diff to produce conventional commit format messages with appropriate type, scope, and description.

SKILL.md

下载 MD ↓
namecommit
descriptionGenerate perfect semantic commit messages from staged changes. Use when the user says "commit", "/commit", asks for a commit message, wants to commit changes, or needs help writing a commit. Analyzes git diff to produce conventional commit format messages with appropriate type, scope, and description.

Commit Message Generator

Generate semantic commit messages that tell the story of your changes.

Workflow

  1. Analyze staged changes (git diff --cached)
  2. Identify change type and scope
  3. Generate commit message following conventional commits
  4. Present for approval and commit

Step 1: Gather Context

# Get staged changes
git diff --cached

# Get file list for scope detection
git diff --cached --name-only

# Check for related recent commits (style reference)
git log -5 --oneline

If nothing is staged, inform the user and suggest staging with git add.

Step 2: Analyze Changes

Determine: - Type: What category of change is this? - Scope: What module/component is affected? - Breaking: Does this break existing functionality?

Commit Types

Type When to Use
feat New feature for users
fix Bug fix for users
docs Documentation only
style Formatting, no code change
refactor Code change, no feature/fix
perf Performance improvement
test Adding/fixing tests
build Build system, dependencies
ci CI configuration
chore Maintenance tasks

Scope Detection

Infer scope from file paths: - src/auth/* → auth - components/Button/* → button - api/users.ts → users - Multiple areas → omit scope or use parent

Step 3: Generate Message

Format: type(scope): description

Rules: - Imperative mood: "add" not "added" or "adds" - Lowercase first letter - No period at end - Max 72 characters for subject - Body for complex changes (what + why)

Examples

Simple feature:

feat(auth): add password reset flow

Bug fix with context:

fix(api): handle null response from payment provider

The Stripe API returns null for cancelled subscriptions.
Add defensive check to prevent TypeError in billing page.

Breaking change:

feat(api)!: change authentication to OAuth 2.0

BREAKING CHANGE: Remove support for API key authentication.
All clients must migrate to OAuth tokens by v3.0.

Multi-file refactor:

refactor: consolidate database connection logic

Move connection pooling from individual services to
shared db module. Reduces connection overhead by 40%.

Step 4: Commit

After user approves the message:

git commit -m "$(cat <<'EOF'
<commit message here>

Co-Authored-By: Claude <[email protected]>
EOF
)"

Quality Checklist

  • [ ] Type accurately reflects the change
  • [ ] Scope matches affected area (or omitted if broad)
  • [ ] Subject is clear without reading the diff
  • [ ] Body explains WHY for non-obvious changes
  • [ ] Breaking changes are marked with ! and explained

来源:kasperjunge/agent-resources · MIT 许可 · 许可原文 · MD 为来源页保存的历史版本