Commit message
The batteries included framework for building Agent Skills.
npx -y skills add bh-rat/steer --skill commit-messageAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Writes a conventional commit message from the staged diff, one logical change at a time.
SKILL.md
1.5 KB, as published. Nobody here has run it
commit-message
Turn whatever is currently staged into one well-formed conventional
commit message the user can apply as-is. The user gets the message text;
you never run git commit yourself.
Steps
- Run:
git diff --cached --statthengit diff --cached. If nothing is staged, say so and stop; never guess from unstaged changes. - Check the diff is atomic (one logical change). If it mixes concerns,
propose how to split it (
git reset -p/ staging hunks) instead of writing a muddled message. - Pick the type and scope. When unsure which type fits, first read
references/conventional-commits.md. - Write the message: imperative subject ≤ 50 chars
(
type(scope): change), blank line, body wrapped at 72 explaining what changed and why, not how. - Present the message in a fenced block, then ask whether to adjust tone or detail.
References
Keep this file lean; put branch-only detail behind pointers so it loads only when that branch is hit:
- When choosing the commit type or handling a breaking change, first read
references/conventional-commits.md.
Gotchas
- Empty staged diff → stop at step 1; do not invent a message.
- Generated/lockfile-only diffs (
uv.lock,package-lock.json) → say the change is mechanical and suggestchore(deps). - Never include ticket numbers or co-author trailers unless the user asks.