caveman-commit

Generates terse Conventional Commits messages from staged changes.

Updated Jun 16, 2022
One-click install
npx skills add https://github.com/SimonZimmer/dotfiles --skill caveman-commit-simonzimmer
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: caveman-commit
Source: https://github.com/SimonZimmer/dotfiles/tree/main/.config/opencode/skills/caveman-commit
Command: npx skills add https://github.com/SimonZimmer/dotfiles --skill caveman-commit-simonzimmer

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Writing commit messages often produces verbose, inconsistent, or filler-heavy text that obscures intent. This Skill generates compact Conventional Commits messages that preserve the reasoning behind a change while cutting noise. ## Core Features & Use Cases - Conventional Commits formatting: Produces <type>(<scope>): <imperative summary> subjects with a 50-character target and 72-character hard cap. - Context-aware bodies: Adds a body only when the why is non-obvious, and always for breaking changes, security fixes, data migrations, and reverts. - Noise elimination: Excludes AI attribution, emoji, first-person phrasing, and restatements of the diff. - Use Case: After staging a breaking API rename, ask for a commit message and receive a subject with the ! breaking-change marker plus a BREAKING CHANGE: footer explaining the migration deadline. ## Quick Start Ask the assistant to write a commit message for your staged changes using the caveman-commit style.

Frequently Asked Questions about caveman-commit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a Conventional Commits message?▼

Use the format type(scope): imperative summary, with types like feat, fix, refactor, or chore. Keep the subject under 50 characters, use imperative mood like "add" or "fix", and add a body only when the reasoning is not obvious from the diff.

When should a commit message include a body?▼

Include a body only when the why is non-obvious, and always for breaking changes, security fixes, data migrations, and reverts. Wrap body lines at 72 characters and put issue references like Closes #42 at the end.

How do I mark a breaking change in Conventional Commits?▼

Append an exclamation mark after the type or scope, such as feat(api)!: rename endpoint, and add a BREAKING CHANGE: footer in the body explaining the migration path and any deadlines for consumers.

Does this skill run git commit or stage files?▼

No. It only generates the commit message text and outputs it as a code block ready to paste. It does not stage files, run git commit, or amend existing commits.

What should never appear in a commit message?▼

Avoid phrases like "this commit does X", first-person pronouns, AI attribution lines, and emoji unless the project convention requires them. The diff already shows what changed, so the message should focus on intent.