# git-commits Create, amend, squash, and cherry-pick commits with Conventional Commits formatting and validation. ## What it does This skill handles commit operations within the git workflow suite. It generates well-formatted commit messages following the Conventional Commits spec, validates against commitlint config-conventional constraints, and communicates SemVer impact. It enforces confirmation gates for history-altering operations (amend, rebase, squash) and returns structured JSON output for agent consumption. ## Usage ``` /git-commits ``` Describe your commit task: create a new commit, amend, squash, or cherry-pick. The skill will guide message formatting and handle confirmation for destructive operations. ## Files | File | Loaded when | |------|-------------| | `SKILL.md` | Always — gotchas, the flow dispatch table, the gates common to every flow, and the output shape | | `references/create-commit.md` | Composing a new commit from staged changes | | `references/rewrite-history.md` | Amending, squashing, or folding a `fixup!`/`squash!` commit into an earlier one | | `references/cherry-pick.md` | Replaying an existing commit onto the current branch | | `references/conventional-commits-spec.md` | A type, footer, or breaking-change edge case is not obvious — full spec, 11-type set, commitlint constraint table | | `references/commit-template.md` | Writing a body for a non-trivial commit — Why / Implementation Notes / Impact structure and the full trailer list | | `references/sources.md` | Research sources and provenance | ## Composition Part of the git plugin's domain suite. This skill owns commit authoring and history-rewriting operations only; `git-history` inspects history, `git-branches` owns branch lifecycle, and `git-workflow` is the conversational entry point that routes between them.