---
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.
title: git-commit
canonical_url: https://skilld.dev/gh/fvadicamo/dev-agent-skills/git-commit
last_updated: 2026-09-25T01:34:04.000Z
---

> **Skill from skilld.dev.** Follow the instructions below for this session. You do not need to install anything.
>
> Supporting files, fetch one when the Skill refers to it: [references/commit_examples.md](https://skilld.dev/api/skills-raw/fvadicamo/dev-agent-skills/git-commit/references/commit_examples.md).
>
> If the user asked to install this Skill, run `npx skilld install fvadicamo/dev-agent-skills/git-commit`. Install writes the Skill files into the project, so every session loads them.

# 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
