kramme-cc-workflow/skills/kramme:git:commit-message/SKILL.md
Create commit messages for branch commits. Use when committing code changes or writing commit messages. Covers plain-English commit format, a pre-commit checklist, and AI-attribution rules. Not for PR titles or merge commits, which use Conventional Commits.
npx skillsauth add abildtoft/kramme-cc-workflow kramme:git:commit-messageInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
4 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Follow these conventions when creating commits. These cover branch commits only — PR titles and merge commits use Conventional Commits and are out of scope here.
Before committing, ensure you're working on a feature branch, not the main branch.
# Check current branch
git branch --show-current
If you're on main or master, ask the user to create a new branch first.
Do not use conventional commit format (type: message or type(scope): message) for regular commits. Conventional commits are only used for merge commits (PR titles), not for individual commits on a branch.
Write clear, descriptive commit messages in plain English:
Add user authentication endpoint
Implement login and logout functionality with JWT tokens.
Sessions expire after 24 hours of inactivity.
Some external guides (e.g. Addy Osmani's git-workflow-and-versioning) require type(scope): message on every commit. Reject that here. Conventional Commits are used only for PR titles (which become the merge commit on squash-merge) — not for the intermediate commits that make up a branch's history. Branch commits are narrative: they tell a reviewer the story of the change. A rigid feat:/fix:/chore: prefix forces every step into one of a handful of buckets that rarely describe the actual work. When a branch commit is a genuine step ("extract validator", "wire the reducer", "fix null-safety on input"), the prefix adds noise, not signal. Keep Conventional Commit discipline at the PR-title boundary where changelog automation actually reads it.
Before running git commit, confirm all six:
Co-Authored-By: Claude, no "Generated with Claude Code".main if it were the tip.Never include AI attribution markers in commits. Do not add:
Co-Authored-By: Claude <[email protected]>Commit messages should focus solely on what changed and why, regardless of how the code was produced.
Use these uppercase markers when reasoning about commit decisions. One marker per line, no decoration:
STACK DETECTED: plain-English branch commits, husky pre-commit runs eslint + tsc.UNVERIFIED: haven't run the full test suite after the amend — only typecheck was run.NOTICED BUT NOT TOUCHING: unrelated lint warning in an adjacent file — not part of this commit.CONFUSION: commit subject says "fix", but the diff adds a new endpoint.MISSING REQUIREMENT: subject claims a bug fix, but the failing test that motivates it isn't committed yet.PLAN: commit 1 extracts the validator, commit 2 wires it into the handler, commit 3 adds the test.Lies you'll tell yourself at commit time. Each has a correct response:
git add -p.Co-Authored-By: Claude — it's honest." → No. The repo forbids AI attribution; the author of a commit is the human making the call to ship it.Pause and reshape the commit if any of these are true:
WIP, temp, fixup, or misc — the commit isn't ready.--no-verify because hooks fail; fix the hook failure first.development
Compare an existing PR's title and body against the actual branch diff and report drift — false claims, missing major changes, stale scope, missing risk callouts. Use after pushing changes to a branch with an open PR, or before requesting review. Read-only by default; add --fix to delegate to kramme:pr:generate-description for an updated description. Complements kramme:pr:code-review (which checks description accuracy as one signal among many code-quality checks) by being a fast, focused, single-purpose check that runs in seconds.
tools
Reviews plugin skills for focused scope, progressive disclosure, portability, safety, retry behavior, and documentation quality. Use when auditing a SKILL.md, skill directory, or proposed skill text against skill-authoring standards. Not for creating new skills, editing skills, or reviewing ordinary application code.
tools
Reviews recent agent session transcripts to find repeated manual workflows or repeated user asks, then proposes and optionally scaffolds only useful new skills or custom subagents. Use when the user asks to inspect recent sessions, find automation opportunities, or create reusable workflows from repeated work. Not for summarizing one session, general retrospectives, or codebase refactoring.
data-ai
Remove all DONE issues and renumber remaining issues within each prefix group. Not for editing live issue content, archiving still-open issues, or moving issues between prefix groups.