Nm Sanctum Commit Messages
v1.0.0Generate conventional commit messages from staged changes with correct type/scope
Like a lobster shell, security has layers — review code before you run it.
Runtime requirements
Night Market Skill — ported from claude-night-market/sanctum. For the full experience with agents, hooks, and commands, install the Claude Code plugin.
Conventional Commit Workflow
When To Use
- Generating conventional commit messages from staged changes
When NOT To Use
- Full PR preparation: use sanctum:pr-prep
- Amending existing commits: use git directly
Steps
-
Gather context (run in parallel):
git status -sbgit diff --cached --statgit diff --cachedgit log --oneline -5- When sem is available (see
leyline:sem-integration):sem diff --staged --jsonfor entity-level changes
If nothing is staged, tell the user and stop.
When sem output is available, use entity names (function, class, method) in the commit subject and body instead of parsing raw diff hunks. For example, "add function validate_webhook_url" instead of "add validation logic to notify.py".
-
Classify: Pick type (
feat,fix,docs,refactor,test,chore,style,perf,ci) and optional scope. -
Draft the message:
- Subject:
<type>(<scope>): <imperative summary>(50 chars max) - Body: What and why, wrapped at 72 chars
- Footer: BREAKING CHANGE or issue refs
- Subject:
-
Slop check: reject these words and replace with plain alternatives:
Reject Use instead leverage, utilize use seamless smooth comprehensive complete robust solid facilitate enable streamline simplify optimize improve delve explore multifaceted varied pivotal key intricate detailed Also reject: "it's worth noting", "at its core", "in essence", "a testament to"
-
Write to
./commit_msg.txtand preview.
Rules
- NEVER use
git commit --no-verifyor-n - Write for humans, not to impress
- If pre-commit hooks fail, fix the issues
Comments
Loading comments...
