Get the FREE Ultimate OpenClaw Setup Guide →

commit-messages

Scanned
npx machina-cli add skill athola/claude-night-market/commit-messages --openclaw
Files (1)
SKILL.md
4.6 KB

Conventional Commit Workflow

When To Use

  • Generating conventional commit messages from staged changes
  • Ensuring commit messages follow project conventions

When NOT To Use

  • Full PR preparation - use sanctum:pr-prep instead
  • Amending existing commits - use git directly

Usage

Use this skill to draft a commit message for staged changes. Execute Skill(sanctum:git-workspace-review) first to capture the repository path, status, and diffs. If no changes are staged, stage the relevant files before continuing.

Required Steps

  1. Validate Code Quality: Run make format && make lint. Fix any reported errors before proceeding. Do not bypass pre-commit hooks with --no-verify or -n.
  2. Classify the Change: Choose a type from feat, fix, docs, refactor, test, chore, style, perf, or ci. Select an optional but preferred scope (e.g., core, cli). Identify breaking changes for the BREAKING CHANGE: footer.
  3. Draft the Message:
    • Subject: <type>(<scope>): <imperative summary> (≤50 characters).
    • Body: Wrap at 72 characters. Explain the "what" and "why" behind the change. Use paragraphs for technical rationale.
    • Footer: Include breaking change details or issue references.
  4. Validate Against Slop: Before finalizing, scan the message for AI-generated content markers:
    • Tier 1 (BLOCK): delve, leverage, seamless, comprehensive, robust, multifaceted, utilize, facilitate, streamline, pivotal, nuanced, intricate
    • Tier 2 (WARN): moreover, furthermore, significantly, fundamentally, notably, revolutionize, elevate, unlock
    • Phrases (BLOCK): "it's worth noting", "at its core", "in essence", "a testament to"
    • If any Tier 1 words or blocked phrases found, replace with plain alternatives before proceeding
  5. Write the Output: Use a relative path (e.g., ./commit_msg.txt) to save the message. Overwrite the file with the final message only, without commentary.
  6. Preview: Display the file contents using cat or sed for confirmation.

Guardrails

Do not use git commit --no-verify or the -n flag. Pre-commit hooks are mandatory; fix issues rather than bypassing them.

Slop-Free Commit Messages (MANDATORY)

Commit messages must pass slop detection before being accepted. Apply scribe:slop-detector vocabulary rules:

Never use these words (replace with alternatives):

Slop WordUse Instead
leverageuse
utilizeuse
seamlesssmooth, easy
comprehensivecomplete, full
robustsolid, reliable
facilitateenable, help
streamlinesimplify
optimizeimprove
delveexplore, examine
multifacetedvaried, complex
pivotalkey, important
intricatedetailed

Avoid these phrases (delete or rewrite):

  • "It's worth noting that..." → just state it
  • "At its core..." → delete, start with the point
  • "In essence..." → delete
  • "A testament to..." → "shows" or "proves"

Use plain language: Present-tense imperative for subject lines, technical rationale in body. Write for humans, not to impress. A commit that says "fix auth bug" beats "seamlessly leverage comprehensive authentication optimization."

Technical Integration

Combine this skill with Skill(imbue:catchup) or /git-catchup if additional context is needed. If the type or scope is unclear, re-examine the diffs or consult the project plan before finalizing the draft.

Troubleshooting

Address specific errors reported by pre-commit hooks. Run make format to resolve styling issues and make lint for logic or style violations. Fix all detected issues before re-attempting the commit. If a merge conflict occurs, use git merge --abort to return to a clean state. A rejected commit indicates a failed quality gate; analyze the output and apply fixes before retrying.

Supporting Modules

  • Output templates - conventional commit, PR description, and documentation update formats

See Also

  • Skill(scribe:slop-detector) - Full AI slop detection patterns
  • Skill(scribe:doc-generator) - Slop-free documentation writing
  • /slop-scan - Direct slop scanning command

Source

git clone https://github.com/athola/claude-night-market/blob/master/plugins/sanctum/skills/commit-messages/SKILL.mdView on GitHub

Overview

This skill drafts conventional commit messages from your staged diffs, enforcing a type and optional scope. It guides you through subject/body/footer formatting, checks for slop-detector rules, and saves the final message to a file for review before committing.

How This Skill Works

It uses sanctum:git-workspace-review to read the repo path, status, and diffs, then prompts you to classify the change with a type from feat, fix, docs, refactor, test, chore, style, perf, or ci and an optional scope. It drafts a subject (type(scope): imperatives), a wrapped body, and a footer for breaking changes or references, then writes the result to ./commit_msg.txt and suggests previewing it before commit.

When to Use It

  • Generating conventional commit messages from staged changes
  • Ensuring commit messages follow project conventions
  • Drafting subject/body/footer with type, scope, and breaking-change footer
  • Validating a commit message before writing to the repository
  • Creating a standalone commit message file for review with cat

Quick Start

  1. Step 1: Run Skill(sanctum:git-workspace-review) to capture the repository path, status, and diffs.
  2. Step 2: If no changes are staged, stage the relevant files before continuing.
  3. Step 3: Draft the message following the subject/body/footer rules and save to ./commit_msg.txt, then preview the file contents with cat or sed.

Best Practices

  • Validate code quality with make format && make lint before drafting.
  • Choose a type from feat, fix, docs, refactor, test, chore, style, perf, or ci; add an optional scope.
  • Draft the subject as <type>(<scope>): <imperative summary> (≤50 characters).
  • Wrap the body at 72 characters and explain what and why with technical rationale.
  • Run slop-detector checks and replace flagged terms with plain alternatives before finalizing.

Example Use Cases

  • feat(core): add user authentication flow
  • fix(api): correct 500 on user lookup
  • docs(readme): update usage section
  • refactor(cli): simplify argument parsing
  • chore(ci): update workflow to run lint

Frequently Asked Questions

Add this skill to your agents

Related Skills

Sponsor this space

Reach thousands of developers