← Back to Skills Marketplace
lnguyen1996

Commit Message Writer

by Lnguyen1996 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
159
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install commit-message-writer
Description
Generate Conventional Commit messages, PR titles, and summaries from git diffs, code snippets, or change descriptions for any project or language.
README (SKILL.md)

commit-message-writer

Description

Write Conventional Commit messages from a git diff, code snippet, or plain description. Also generates PR titles and 3-bullet PR summaries. Works with any language and any project — no setup, no config.

Use when

  • "write a commit message"
  • "what should I commit this as"
  • "conventional commit for this diff"
  • "write a PR title and description"
  • Any git diff or code change needing a message

Supported conventions

  • Conventional Commits 1.0 (default)
  • Angular commit format
  • GitHub squash-merge style
  • Plain descriptive (no convention)

Request a specific one or it defaults to Conventional Commits.

Input

Paste one of:

  • A git diff (git diff --staged)
  • A description of what changed ("I added rate limiting to the API")
  • Code before/after

Optionally specify:

  • Convention (defaults to Conventional Commits)
  • Scope (component, module, or area affected)
  • Whether this is a breaking change

Output format

## Commit Message

[type]([scope]): [subject]

[body — explains WHY, not just WHAT. Omitted if obvious from subject]

[BREAKING CHANGE: description — only if applicable]
[Closes #123 — only if issue number is known]

---

## PR Title
[short, imperative, under 70 chars]

## PR Summary
- [What changed]
- [Why it changed / what problem it solves]
- [Any notable side effects, caveats, or follow-up needed]

Conventional Commits type guide

Type When to use
feat New feature (triggers minor version bump)
fix Bug fix (triggers patch version bump)
docs Documentation only
style Formatting, whitespace — no logic change
refactor Restructure without changing behavior
perf Performance improvement
test Adding or fixing tests
chore Build system, CI, dependency updates
revert Reverts a prior commit
ci CI pipeline changes

Writing rules

  • Subject: imperative mood ("add", "fix", "remove" — not "added", "fixed", "removes")
  • Subject: no period at end
  • Subject: under 72 characters
  • Body: explain WHY the change was made, not just what the diff shows
  • Breaking change: always include BREAKING CHANGE: footer with migration notes
  • Scope: use the module, file, or feature name (e.g., auth, api, db, ui)
  • If the diff touches multiple concerns: suggest splitting into multiple commits

Examples

Simple fix

fix(auth): reject expired JWT tokens before checking claims

Previously, token expiry was checked after claim validation,
which allowed attackers to replay expired tokens with valid claims.

New feature with breaking change

feat(api)!: require API key on all public endpoints

BREAKING CHANGE: All requests now require `X-API-Key` header.
Clients using anonymous access will receive 401. See migration guide.

Dependency update

chore(deps): bump openssl from 1.1.1 to 3.0.8

Addresses CVE-2023-0286 (X.400 address type confusion).
No API changes.

Self-improvement instructions

After each commit message written, note whether the input was a diff, description, or code snippet. After 20 uses, surface the most common missing context that leads to weaker messages.

Usage Guidance
This skill appears coherent for generating Conventional Commit messages and PR summaries and asks for nothing unusual. Before installing, confirm how the agent will implement the 'note/after 20 uses' behavior: will it store counts in the agent's memory, write files locally, or send telemetry to an external service? Decide whether you are comfortable with that storage. Never paste secrets, API keys, or private credentials into diffs or code snippets you provide to the skill. If you are concerned about any persistent tracking, ask the platform how skills persist memory and consider disabling autonomous invocation or limiting the skill's access to agent memory. If you need stronger assurance, request the skill author supply an explicit storage policy or remove the self-improvement instruction.
Capability Analysis
Type: OpenClaw Skill Name: commit-message-writer Version: 1.0.0 The 'commit-message-writer' skill is a purely prompt-based utility designed to generate Conventional Commit messages and PR summaries from user-provided git diffs or descriptions. The SKILL.md file contains standard formatting rules and examples, and lacks any executable code, network requests, or instructions to access sensitive data. A 'self-improvement' instruction at the end is a benign prompt-engineering technique to track usage patterns for the user's benefit.
Capability Assessment
Purpose & Capability
Name/description match the SKILL.md instructions. The skill only describes how to produce commit messages, PR titles, and summaries from diffs, code, or descriptions and does not request unrelated binaries, credentials, or config paths.
Instruction Scope
Most instructions are narrowly scoped to parsing diffs/descriptions and producing commit messages/PR summaries. However, the 'Self-improvement instructions' ask the agent to 'note' input type for each use and, after 20 uses, surface common missing context — this implicitly requires counting or storing per-use metadata across runs. The document does not say where or how that state is stored or reported, which is ambiguous.
Install Mechanism
Instruction-only skill with no install spec and no code files. Nothing is written to disk by the skill itself based on the provided metadata.
Credentials
The skill requires no environment variables, credentials, or config paths and the instructions do not reference any external credentials or unrelated environment details.
Persistence & Privilege
The skill does not request always:true or any system-level privileges. The only persistence concern is the implicit requirement to track usage (count of inputs and common missing context). It's unclear whether that uses the agent's memory API, local storage, or external telemetry — you should confirm where that metadata would be stored and who can read it.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install commit-message-writer
  3. After installation, invoke the skill by name or use /commit-message-writer
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of commit-message-writer. - Generates Conventional Commit messages, PR titles, and succinct PR summaries from diffs, code, or descriptions - Supports multiple conventions: Conventional Commits, Angular, GitHub squash-merge, and plain - Covers input types: git diff, code before/after, or plain language summary - Customizable: specify convention, scope, and breaking change status - Provides clear usage examples and type guide for message consistency - Includes self-improvement: tracks input context to improve outputs over time
Metadata
Slug commit-message-writer
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Commit Message Writer?

Generate Conventional Commit messages, PR titles, and summaries from git diffs, code snippets, or change descriptions for any project or language. It is an AI Agent Skill for Claude Code / OpenClaw, with 159 downloads so far.

How do I install Commit Message Writer?

Run "/install commit-message-writer" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Commit Message Writer free?

Yes, Commit Message Writer is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Commit Message Writer support?

Commit Message Writer is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Commit Message Writer?

It is built and maintained by Lnguyen1996 (@lnguyen1996); the current version is v1.0.0.

💬 Comments