Back to list
enisbudancamanak

commit

by enisbudancamanak

Personal backup of my Claude Code skills collection

0🍴 0📅 Jan 18, 2026

SKILL.md


name: commit description: 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.

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

TypeWhen to Use
featNew feature for users
fixBug fix for users
docsDocumentation only
styleFormatting, no code change
refactorCode change, no feature/fix
perfPerformance improvement
testAdding/fixing tests
buildBuild system, dependencies
ciCI configuration
choreMaintenance tasks

Scope Detection

Infer scope from file paths:

  • src/auth/*auth
  • components/Button/*button
  • api/users.tsusers
  • 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 <noreply@anthropic.com>
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

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon