agentsclimarketplace

Generate commit message

Skill SepantaJoshani/agents-skills/skills/generate-commit-message

Open-source agent skills for AI coding assistants

Install
npx -y skills add SepantaJoshani/agents-skills --skill generate-commit-message

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 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

Generate professional git commit messages following cbea.ms guidelines. Outputs plain copy-pasteable commit message text by default.

SKILL.md

2.9 KB, as published. Nobody here has run it

Generate Commit Message

Generate commit messages following cbea.ms guidelines.

Output Format

Plain text commit message in a code block with NO language tag.

The user should be able to copy the entire content directly. Do NOT include:

  • git commit -m wrapper
  • EOF or HEREDOC syntax
  • bash language tag on the code block
  • Extra commentary outside the code block

Short Example

Add input validation to form components

Detailed Example

Implement input validation for form components

- Create validation utility with reusable validators
- Add validators for email, phone, and text inputs
- Update `Button` and `Input` to use validation

Format: Short vs Detailed

  • Short: Subject line only
  • Detailed: Subject + bullet list body (3–6 bullets)

Decide autonomously based on the nature of the change:

  • Small, focused changes → short
  • Multi-file restructuring, module extraction, or architectural changes → detailed
  • Only ask the user if genuinely uncertain

Workflow

  1. Run git diff --staged --stat to see staged changes
  2. If nothing is staged, ask the user to stage files
  3. Analyze git diff --staged
  4. Generate the commit message based only on staged changes
  5. Output the plain commit message in a code block (no language tag)

Commit Message Rules

  1. Subject line ≤72 chars
  2. Capitalize subject
  3. No period at end
  4. Imperative mood: "Add feature" not "Added feature"
  5. Blank line between subject and body
  6. Body lines ≤72 chars
  7. Backtick code identifiers: Always wrap component names, hooks, props, and other code references in backticks (e.g. OrderForm, useContainerQuery)

Imperative Test

Subject should complete: "If applied, this commit will [subject]"

Imperative Verbs by Change Type

TypeVerbs
FeatureAdd, Implement, Introduce, Create
FixFix, Resolve, Correct
RefactorRefactor, Simplify, Restructure
DocsDocument, Update docs
StyleFormat, Polish, Clean up
TestAdd tests, Update tests
ChoreUpdate deps, Configure

Context Detection

Infer context from file paths in the staged diff:

  • Monorepo app directories (e.g., apps/<name>/*) → mention the app name
  • Shared packages (e.g., packages/<name>/*) → mention the package name
  • Test files (*.test.*, *.spec.*) → "Add tests" / "Update tests"
  • Documentation (*.md) → "Document" / "Update docs"
  • Config files (.eslintrc, tsconfig.json, etc.) → "Configure" / "Update config"

Tips

  • If changes are too large, suggest splitting into multiple commits
  • Keep bullet points action-oriented and concise (3-6 recommended)
  • Focus on WHAT and WHY, not HOW

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.