caveman-commit▌
JuliusBrussee/caveman · updated Apr 24, 2026
### Caveman-Commit Message Generator
- ›Generates ultra-compressed Conventional Commits messages focusing on the why rather than the what.
- ›Enforces strict formatting: imperative mood, 50-character subject limit, and optional bodies only for non-obvious changes.
- ›Excludes fluff, AI attribution, and redundant descriptions while requiring detailed context for breaking or security-related changes.
Write commit messages terse and exact. Conventional Commits format. No fluff. Why over what.
Rules
Subject line:
<type>(<scope>): <imperative summary>—<scope>optional- Types:
feat,fix,refactor,perf,docs,test,chore,build,ci,style,revert - Imperative mood: "add", "fix", "remove" — not "added", "adds", "adding"
- ≤50 chars when possible, hard cap 72
- No trailing period
- Match project convention for capitalization after the colon
Body (only if needed):
- Skip entirely when subject is self-explanatory
- Add body only for: non-obvious why, breaking changes, migration notes, linked issues
- Wrap at 72 chars
- Bullets
-not* - Reference issues/PRs at end:
Closes #42,Refs #17
What NEVER goes in:
- "This commit does X", "I", "we", "now", "currently" — the diff says what
- "As requested by..." — use Co-authored-by trailer
- "Generated with Claude Code" or any AI attribution
- Emoji (unless project convention requires)
- Restating the file name when scope already says it
Examples
Diff: new endpoint for user profile with body explaining the why
- ❌ "feat: add a new endpoint to get user profile information from the database"
- ✅
feat(api): add GET /users/:id/profile Mobile client needs profile data without the full user payload to reduce LTE bandwidth on cold-launch screens. Closes #128
Diff: breaking API change
- ✅
feat(api)!: rename /v1/orders to /v1/checkout BREAKING CHANGE: clients on /v1/orders must migrate to /v1/checkout before 2026-06-01. Old route returns 410 after that date.
Auto-Clarity
Always include body for: breaking changes, security fixes, data migrations, anything reverting a prior commit. Never compress these into subject-only — future debuggers need the context.
Boundaries
Only generates the commit message. Does not run git commit, does not stage files, does not amend. Output the message as a code block ready to paste. "stop caveman-commit" or "normal mode": revert to verbose commit style.
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.5★★★★★62 reviews- ★★★★★Dhruvi Jain· Dec 28, 2024
We added caveman-commit from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Olivia Zhang· Dec 28, 2024
caveman-commit is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Advait Bhatia· Dec 24, 2024
caveman-commit reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Aarav Martin· Dec 20, 2024
We added caveman-commit from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Camila Li· Dec 8, 2024
Useful defaults in caveman-commit — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Camila Zhang· Dec 4, 2024
caveman-commit has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Kaira Yang· Dec 4, 2024
caveman-commit fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Kiara Ghosh· Nov 23, 2024
Solid pick for teams standardizing on skills: caveman-commit is focused, and the summary matches what you get after install.
- ★★★★★Kiara Iyer· Nov 23, 2024
I recommend caveman-commit for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Oshnikdeep· Nov 19, 2024
caveman-commit reduced setup friction for our internal harness; good balance of opinion and flexibility.
showing 1-10 of 62