Commit: One
Generate a commit message. If nothing staged, stage all changes.
SKILL.mdskills/commit-one/SKILL.md
GitHubCurrent state
git status --short
git diff --cached --stat
Steps
- Per the state above: if no changes staged, stage all. If files are already staged, do not stage more files.
- Generate commit message per conventional commits format, honouring
$hint(a type, scope or emphasis nudge) when given. - Show the message and await approval:
- If approved, commit with it
- If
git commitexits non-zero and stderr containscommit-msg:lines, read eachL<n> <rule>: <excerpt>line, rewrite the message to clear every hit (keeping the meaning) and retry the commit once. If the retry fails too, stop and report the stderr verbatim. Never pass--no-verifyand never change git config to get past the hook. - If changes requested, revise and repeat
- Report the commit and stop. Do not push. Publishing is a separate decision from committing; the user pushes, or asks for it explicitly.