commit

Creates git commits following Japanese Conventional Commits rules with one-purpose-per-commit splitting.

1|Updated Mar 12, 2025
One-click install
npx skills add https://github.com/void2610/dotfiles --skill commit-void2610
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: commit
Source: https://github.com/void2610/dotfiles/tree/main/.claude/skills/commit
Command: npx skills add https://github.com/void2610/dotfiles --skill commit-void2610

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Enforcing consistent commit message conventions and clean commit history is hard when commits are made ad hoc. This Skill ensures every git commit follows a strict Japanese-language Conventional Commits format, splits mixed changes into separate single-purpose commits, and avoids unnecessary commit bodies. ## Core Features & Use Cases - Standardized Message Format: Enforces a fixed set of seven type prefixes (feat, fix, refac, docs, style, test, chore) with concise Japanese subjects under 50 characters and no body by default. - Commit Splitting Rules: Classifies pending changes by meaning and stages explicit paths so each commit contains exactly one purpose, never sweeping in unrelated changes. - Hook-Enforced Execution: Requires the CLAUDE_GIT_SKILL=commit environment marker so the PreToolUse hook can verify commits go through this policy. - Use Case: After finishing a feature and a bug fix in the same working tree, ask the AI to commit; it inspects git status and diff, splits the changes, and produces two clean commits like "feat: 未解決レビューコメント収集スクリプトを追加" and "fix: macOS BSD sort 互換のバージョン比較に置換". ## Quick Start Ask the AI to commit the current changes following the commit skill rules.

Frequently Asked Questions about commit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write Conventional Commits messages in Japanese?▼

Use the format "<type>: <short summary>" with one of seven types: feat, fix, refac, docs, style, test, or chore. Keep the subject under about 50 characters, start with a verb describing what changed, and omit the trailing period and the body.

How do I split mixed changes into separate git commits?▼

Run git status and git diff to classify changes by meaning, then stage each group with explicit paths using git add <path> instead of git add . or -A. Create one commit per purpose and verify each commit contains only a single objective.

When should a git commit message include a body?▼

Only when the subject alone cannot convey the "Why" of the change, and even then keep it within two lines. Never use the body to list changed files or explain code details that are obvious from reading the diff.

Why is my git commit blocked by the PreToolUse hook?▼

The hook enforce-git-skill.sh blocks direct git commit commands that lack the CLAUDE_GIT_SKILL=commit environment marker. Prefix the command as CLAUDE_GIT_SKILL=commit git commit -m "<subject>" so the hook recognizes it went through the commit policy.

Can I split changes line-by-line within a single file?▼

Line-level splitting within a file is generally avoided because it risks corrupting the file. The same applies to binary-like files such as Unity scenes or prefabs, which should not be forcibly split.