Back to Skills

commit

verified

This skill should be used when the user asks to "commit", "make a commit", "commit my changes", "create commits", "git commit", or wants to commit staged/unstaged changes with logical grouping and conventional commit format.

View on GitHub

Marketplace

claude-code-in-avinyc

aviflombaum/claude-code-in-avinyc

Plugin

git-workflows

Repository

aviflombaum/claude-code-in-avinyc
31stars

plugins/git-workflows/skills/commit/SKILL.md

Last Verified

February 1, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/aviflombaum/claude-code-in-avinyc/blob/main/plugins/git-workflows/skills/commit/SKILL.md -a claude-code --skill commit

Installation paths:

Claude
.claude/skills/commit/
Powered by add-skill CLI

Instructions

# Git Commit Assistant

Analyze git changes and create logical, well-structured commits using conventional commit format.

## When to Use

- User asks to commit changes
- Multiple unrelated changes need separate commits
- Changes need conventional commit formatting

## Workflow

### Step 1: Review Current State

Run git status to see all changes:

```bash
git status
```

Review both staged and unstaged changes. Identify modified, added, and deleted files.

### Step 2: Analyze and Plan Commits

Group changes into logical commits based on:

- **Feature boundaries**: Files that implement the same feature together
- **Type of change**: Separate fixes from features from refactors
- **Scope**: Group by component, module, or area of the codebase

Present the commit plan to the user before proceeding:

```
I see the following logical commits:
1. feat(auth): Add password reset - auth/reset.rb, auth/mailer.rb
2. fix(api): Handle null responses - api/client.rb
3. docs: Update README - README.md
```

### Step 3: Execute Commits One by One

For each planned commit:

**Stage specific files only:**
```bash
git add <file1> <file2>
```

**Verify staging:**
```bash
git status
```

**Create commit with conventional format:**
```bash
git commit -m "<type>[scope]: <description>" -m "<body>"
```

**Verify commit succeeded:**
```bash
git status
```

Only proceed to the next commit after verifying the current one completed.

## Conventional Commit Types

| Type | Description |
|------|-------------|
| feat | New feature |
| fix | Bug fix |
| docs | Documentation only |
| style | Formatting, no code change |
| refactor | Code change, no new feature or fix |
| perf | Performance improvement |
| test | Adding or fixing tests |
| chore | Build process, auxiliary tools |

## Commit Message Format

```
<type>[optional scope]: <description>

[optional body]

[optional footer]
```

- **Description**: Imperative mood, lowercase, no period ("add feature" not "Added feature.")
- **Body**: Explain wha

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
2961 chars