# Gcm

> Generate a conventional commit message from current changes. Use when you have staged changes, want to write a commit message, or invoke /gcm

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

---


Generate a conventional commit message for the current changes.

## Process

1. Run `git log --oneline -10` to match the existing commit style.
2. Run `git diff --cached` for staged changes, or `git diff` if none are staged.
3. Generate the message per the rules below.

## Format

```text
<type>(<scope>): <description>

<body>

```

## Rules

**Types:** `fix`, `feat`, `docs`, `style`, `refactor`, `test`, `chore`, `spelling`, `rename`

**Scope:** Infer from changed file paths. If changes span multiple scopes, only commit changes relevant to the users' original intent for the session.

**Body:** Include a body when the change is non-trivial. Explain **why**, not what. Separate from a blank line. Wrap at 72 characters.

**Breaking changes:** If the change is breaking, add `!` after the scope and a `BREAKING CHANGE:` footer:

```text
feat(sdk)!: rename updateSnapshot to updateProject

BREAKING CHANGE: updateSnapshot removed, use updateProject(projectId, { snapshotId }) instead.

```

Conforms to the Agent Skills specification: <https://agentskills.io/specification>

