git-commit · fvadicamo — Claude Code skill: Conventional Commits, done right
A skill that writes git commits in Conventional Commits format with a type, a required scope and a short subject. Useful when the agent commits on your behalf.
npx skills add fvadicamo/dev-agent-skills --skill git-commit -a claude-codeWhat git-commit does
The skill builds the commit message for you. It first reads the last five commits with git log --oneline -5, then produces a line like type(scope): subject. Scope is required and uses kebab-case, for example validation, auth, cookie-service or api. The subject is an imperative verb, no trailing period, 50 characters max.
On top of the standard Conventional Commits types, the skill allows one extra: security, for vulnerability fixes and hardening. Multi-line commits go through a HEREDOC — headline, blank line, body as a list. Related changes are meant to land in a single focused commit, and vague messages such as "update code" or "changes" are rejected.
Before any of that, the skill checks the conventions in CLAUDE.md. If your project format differs, the project format wins. So in a repo with its own type names and scope rules, expect those instead of the default scheme. Extended per-type examples live in references/commit_examples.md.
What it helps with
- write a commit message in Conventional Commits format
- add the required kebab-case scope
- block vague messages like "fix bug"
- keep the subject line within 50 characters
- format a multi-line commit with a HEREDOC body
Example prompts for the agent
- commit the changes in the validation module
- make a Conventional Commits commit for the auth fixes
- stage the files and commit with the security type
How to install git-commit
1Skills CLI (Vercel)
npx skills add fvadicamo/dev-agent-skills --skill git-commit -a claude-code2Manually: put the files in place
~/.claude/skills/git-commit/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/git-commit/
1Skills CLI (Vercel)
npx skills add fvadicamo/dev-agent-skills --skill git-commit -a codex2Manually: put the files in place
.agents/skills/git-commit/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add fvadicamo/dev-agent-skills --skill git-commit -a cursor2Manually: put the files in place
.cursor/skills/git-commit/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install fvadicamo/dev-agent-skills git-commit2Manually: put the files in place
.github/skills/git-commit/SKILL.md1Skills CLI (Vercel)
npx skills add fvadicamo/dev-agent-skills --skill git-commit -a gemini-cli2Platform CLI
gemini skills install https://github.com/fvadicamo/dev-agent-skills --path plugins/github-workflow/skills/git-commitManually: put the files in place
.devin/skills/git-commit/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add fvadicamo/dev-agent-skills --skill git-commit -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about git-commit
How do I install git-commit in Claude?
Run npx skills add fvadicamo/dev-agent-skills --skill git-commit -a claude-code. The skill file then lands at ~/.claude/skills/git-commit/SKILL.md.
What does git-commit do?
It creates git commits in Conventional Commits format with a type, a required scope and a short subject. It also enforces the project conventions found in CLAUDE.md.
Which commit types does the skill support?
The standard Conventional Commits types plus an extra security type for vulnerability fixes and hardening.
Source text
SKILL.md · MIT
---
name: git-commit
description: Creates git commits following Conventional Commits format with type/scope/subject. Use when user wants to commit changes, create commit, save work, or stage and commit. Enforces project-specific conventions from CLAUDE.md.
---
# Git commit
Creates git commits following Conventional Commits format.
## Recent project commits
!`git log --oneline -5 2>/dev/null`
## Quick start
```bash
# 1. Stage changes
git add <files>
# 2. Create commit
git commit -m "type(scope): subject"
```
## Project conventions
- Scope is **required** (kebab-case): `validation`, `auth`, `cookie-service`, `api`
- Additional type beyond standard CC: `security` (vulnerability fixes or hardening)
- HEREDOC for multi-line commits:
```bash
git commit -m "$(cat <<'EOF'
feat(validation): add URLValidator with domain whitelist
Implement URLValidator class supporting:
- Domain whitelist enforcement
- Dangerous scheme blocking
Addresses Requirement 31
Part of Task 5.1
EOF
)"
```
## Important rules
- **ALWAYS** check CLAUDE.md conventions first - use project format if it differs
- **ALWAYS** include scope in parentheses
- **ALWAYS** use present tense imperative verb for the subject
- **NEVER** end subject with a period
- **NEVER** exceed 50 chars in the subject line
- **NEVER** use generic messages ("update code", "fix bug", "changes")
- Group related changes into a single focused commit
## References
- `references/commit_examples.md` - Extended examples by type, good/bad comparisons
© fvadicamo · MIT · fvadicamo/dev-agent-skills
Similar skills
All skills for Git and GitHub →git-commit by other authors comes first.