# Commit Message

> Generates concise, intent-driven Git commit messages in imperative mood. Use when the user asks to create, write, draft, make, generate, or suggest a commit message, says "commit these changes" or "what should I commit?", or asks for help with a Git commit.

- Skill: `ycs77/commit-message` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ycs77/commit-message`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ycs77/commit-message/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ycs77 (https://skillmd.com/u/ycs77)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ycs77/commit-message

---


# Git Commit Message Generator

Generate concise, descriptive and intent-driven Git commit messages in English.

## Process

1. Run `git diff --cached` directly to check for staged changes
2. If staged changes exist: generate commit message based on staged changes only
3. If no staged changes: run `git diff` directly and `git status` directly to view unstaged and untracked files
4. For untracked files, intelligently assess which need content review (code/config files) vs which can be inferred from filename (assets, dependencies)
5. Combine the diff with the intent supported by the conversation context; do not invent motivation that is not evident
6. Generate a single-line commit message that prioritizes known intent, then observable outcome, then the concrete change

## Output

Output ONLY the commit message — a single line, no explanation, no code block fencing.

## Format

- In English, imperative mood, under 72 characters
- Prefer the intended outcome over the edited file or implementation detail. If the intent is unknown, describe the concrete behavioral change.
- No type prefix (e.g., `feat:`, `fix:`) unless the user explicitly requests Conventional Commits format

## Examples

```
Add JWT authentication to protect account access
Add payment edge-case tests to prevent regressions
Validate login input before submitting credentials
Make search accessible from the navbar
Clarify installation requirements in README
Remove deprecated endpoints to simplify the API surface
Rename userService to clarify account responsibilities
Handle missing users during authentication
Fix database deadlock when updating concurrent balances
Preserve authentication behavior with regression tests
Return actionable errors when payment processing fails
Reduce page load time by batching database queries
Decouple user persistence with a repository pattern
Keep CI builds portable by migrating to GitHub Actions
Upgrade Vue to resolve hydration errors
```

