commit

diff分析 → 論理的に分割コミット。conventional commitメッセージを自動生成。

16 stars

Best use case

commit is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

diff分析 → 論理的に分割コミット。conventional commitメッセージを自動生成。

Teams using commit should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/commit-yida29/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/cli-automation/commit-yida29/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/commit-yida29/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How commit Compares

Feature / AgentcommitStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

diff分析 → 論理的に分割コミット。conventional commitメッセージを自動生成。

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Smart Commit — diff分析 → 分割コミット

変更内容を分析し、論理的にまとまった単位で分割コミットする。

## コンテキスト

<git_status>
!`git status`
</git_status>

<git_diff>
!`git diff HEAD`
</git_diff>

<recent_commits>
!`git log --oneline -15`
</recent_commits>

<current_branch>
!`git branch --show-current`
</current_branch>

## ワークフロー

### Step 1: 変更の分析

上記の diff を読み、変更を **論理的なグループ** に分類する。

分類の基準:
- **機能単位**: 1つの機能追加/変更に関するファイル群
- **レイヤー単位**: ドメイン層、インフラ層、API層、テストなど
- **目的単位**: リファクタ、バグ修正、新機能、ドキュメント、設定変更

### Step 2: 分割プランの提示

以下のフォーマットでユーザーに分割プランを提示する:

```
## コミット分割プラン

### Commit 1: <type>(<scope>): <summary>
- `path/to/file1.ts`
- `path/to/file2.ts`

### Commit 2: <type>(<scope>): <summary>
- `path/to/file3.ts`
- `path/to/file4.ts`

(変更が1グループのみなら分割せず1コミットで良い)
```

**重要**: プランを提示したら、ユーザーの承認を待つ。勝手にコミットしない。

### Step 3: ユーザー承認後、順次コミット

承認されたら、各コミットを順番に実行する:

1. `git add <files>` で対象ファイルのみステージ
2. `git commit` でコミット作成
3. 次のコミットへ

### Step 4: 完了報告

全コミット完了後、`git log --oneline -N` で作成したコミットを表示する。

## コミットメッセージ規約

### フォーマット

```
<type>(<scope>): <summary>
```

- **type**: `feat`, `fix`, `docs`, `refactor`, `chore`, `test`, `perf`, `style`, `ci`
- **scope**: 影響範囲(省略可)。例: `ui`, `auth`, `api`
- **summary**: 英語、命令形、72文字以内、末尾ピリオドなし

### このリポジトリのscope例

| scope | 対象 |
|-------|------|
| `pet` | デスクトップペット (`pet/`) |
| `daemon` | デーモン (`daemons/`) |
| `protocol` | 通信プロトコル (`daemons/socket_protocol.py`) |
| `scripts` | スクリプト (`scripts/`, `start.sh`, `stop.sh`) |
| `docs` | ドキュメント (`CLAUDE.md`, `instructions/`, `docs/`) |
| `config` | 設定 (`config/`, `pet/config.py`) |

### 日本語の場合

このリポジトリの `git log` に日本語コミットが多い場合は、日本語で書いても良い。
直近のコミット履歴のスタイルに合わせること。

## 制約

- **pushしない**: コミットのみ。pushはユーザーが明示的に指示した場合のみ。
- **Co-Authored-By**: コミットメッセージ末尾に以下を付与:
  ```
  Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
  ```
- **HEREDOC**: コミットメッセージは必ず HEREDOC で渡す:
  ```bash
  git commit -m "$(cat <<'EOF'
  <type>(<scope>): <summary>

  Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
  EOF
  )"
  ```
- **秘密ファイル**: `.env`, `credentials.json` 等を検知したら警告し、コミットしない。
- **空コミット**: 変更がない場合は空コミットを作成しない。
- **`--amend` 禁止**: 常に新規コミットを作成する(ユーザーが明示的に指示した場合を除く)。
- **引数の尊重**: `$ARGUMENTS` が指定された場合:
  - ファイルパス/globならそのファイルのみ対象
  - テキストならコミットメッセージのヒントとして使用
  - 両方なら両方を尊重

## 分割の判断基準

### 分割すべきケース
- 新機能の追加 + 既存コードのリファクタが混在
- 複数の独立した機能変更
- 型定義の変更 + それを使う実装の変更(レイヤー単位で分けたい場合)
- テストの追加 + 実装の変更

### 分割しなくてよいケース
- 1つの機能に関する一連の変更(型 + 実装 + テスト)
- 小さなリファクタ(ファイル数が少ない)
- 設定ファイルの単独変更

Related Skills

git-commit-for-ai-agents

16
from diegosouzapw/awesome-omni-skill

Commit changes to a git repository. Use whenever a git commit is to be executed.

adversarial-committee

16
from diegosouzapw/awesome-omni-skill

Committee of personas with opposing propensities forcing genuine debate

push-commit

16
from diegosouzapw/awesome-omni-skill

Stage all changes, commit with a descriptive message, and push to the remote. Trigger with "push commit", "commit and push", "push changes", "/push-commit".

git-create-commit-skill

16
from diegosouzapw/awesome-omni-skill

Use when creating git commits - mandates commits format with required scopes for all new commits, provides scope discovery from codebase structure, and prevents rationalization under pressure (emergency, fatigue, ambiguity)

git-commit-push

16
from diegosouzapw/awesome-omni-skill

This skill should be used when the user wants to commit their work to git and push to GitHub. It guides through reviewing changes, crafting meaningful commit messages following project conventions (including Conventional Commits when detected), creating commits with security checks, and pushing to remote repositories.

Git Commit Helper

16
from diegosouzapw/awesome-omni-skill

Creates well-formatted conventional commits with intelligent change analysis. Use when creating commits, committing changes, staging files, or when the user mentions "commit", "git commit", or wants to save their work to version control. Analyzes diffs to suggest splitting commits when multiple concerns are detected.

commit-quick

16
from diegosouzapw/awesome-omni-skill

codemapの更新をスキップして素早くgit commitする。変更内容を分析し、適切なコミットメッセージを自動生成してコミットを作成する。

commit-feature

16
from diegosouzapw/awesome-omni-skill

Stage changes, create conventional commit (no co-author), push to origin, and add detailed PR comment with session context

commit-conventions

16
from diegosouzapw/awesome-omni-skill

This skill should be used when writing commit messages, when asked about commit format, when reviewing a commit message, or when creating a git commit. Provides Conventional Commits format and project-specific conventions.

commit-assistant

16
from diegosouzapw/awesome-omni-skill

Provides conventional commits guidance and auto-generates commit messages from git changes. Integrates with /ccpm:commit for automated git commits linked to Linear issues. Auto-activates when users ask about committing, creating git commits, or discussing commit message formats.

agent-commit

16
from diegosouzapw/awesome-omni-skill

Analyze changes and create a meaningful commit with agent authorship. Internal skill for evolve_loop.

bgo

10
from diegosouzapw/awesome-omni-skill

Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.

Coding & Development