Marketplace git-commit

Use this skill when user asks to "commit changes", "create a commit", "stage and commit", or wants help with git commit workflow.

install
source · Clone the upstream repo
git clone https://github.com/aiskillstore/marketplace
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/aiskillstore/marketplace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/21pounder/git-commit" ~/.claude/skills/aiskillstore-marketplace-git-commit && rm -rf "$T"
manifest: skills/21pounder/git-commit/SKILL.md
source content

Git Commit

Create well-structured git commits with conventional commit messages based on staged changes.

Parameters

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Optional commit message override"
    },
    "type": {
      "type": "string",
      "enum": ["feat", "fix", "docs", "style", "refactor", "test", "chore"],
      "description": "Conventional commit type",
      "default": "auto"
    },
    "scope": {
      "type": "string",
      "description": "Optional scope for the commit"
    }
  }
}

When to Use

  • User asks to "commit" changes
  • User wants to "save" their work to git
  • User asks for help with commit messages
  • User wants to stage and commit files

Methodology

Phase 1: Status Check

  • Run
    git status
    to see current state
  • Run
    git diff --staged
    to see staged changes
  • Run
    git diff
    to see unstaged changes
  • Check recent commit history for message style

Phase 2: Analysis

  1. Categorize Changes: Identify what changed (new files, modifications, deletions)
  2. Determine Type: Is this a feature, fix, refactor, etc.?
  3. Identify Scope: What component/module is affected?
  4. Summarize Purpose: What does this change accomplish?

Phase 3: Commit Creation

  • Stage relevant files if not already staged
  • Generate conventional commit message
  • Execute the commit
  • Verify success with
    git status

Phase 4: Output

Report:

  • What was committed
  • The commit message used
  • The new commit hash

Guidelines

  • Follow Conventional Commits format:
    type(scope): description
  • Keep subject line under 72 characters
  • Use imperative mood ("Add feature" not "Added feature")
  • Don't commit sensitive files (.env, credentials, etc.)
  • Don't use --force or --amend unless explicitly requested
  • Include meaningful description of WHY, not just WHAT

Examples

Example 1: Auto Commit

User Input: "Commit my changes"

Expected Behavior:

  1. Run
    git status
    and
    git diff
    to understand changes
  2. Analyze the nature of changes
  3. Generate appropriate commit message
  4. Stage files if needed
  5. Create commit and report success

Example 2: Specific Type

User Input: "创建一个 fix 类型的 commit"

Expected Behavior:

  1. 检查当前的改动
  2. 确认这些改动符合 "fix" 类型
  3. 生成格式为
    fix(scope): 描述
    的提交信息
  4. 执行提交并报告结果