Commit Message Validation
/install commit-message-writing
Commit Message Writing
Every commit: valid Conventional Commit, atomic, on the right short-lived branch.
Required workflow
git status --shortandgit diff --stat.- Verify you're on a short-lived branch dedicated to one feature, bug, fix, or coding area. If not, create/switch first.
- Confirm the changes are one logical unit. If mixed, split before committing.
- Confirm automated tests appropriate to the scope will run.
- Pick the most specific commit type.
- Write the message:
\x3Ctype>[optional scope][!]: \x3Cimperative lowercase description>
[optional body]
[optional footer(s)]
- Validate with
scripts/validate_commit_message.pybefore committing.
Hard rules
- One short-lived branch per feature, bug, fix, or distinct coding area.
- Keep branches narrow, merge back quickly, avoid long-lived divergence.
- Every PR must have robust automated tests so bugs are caught early.
- Always include a lowercase type followed by
:. - Imperative, lowercase description, no trailing period, ≤72 chars.
- Body: one blank line after description. Footers: one blank line after body.
- Footer format:
Token: value. Hyphens in tokens exceptBREAKING CHANGE. - Use
!and/orBREAKING CHANGE:footer for breaking changes. - Never use
WIP,misc,update, or vague summaries.
Types
| Type | When | SemVer |
|---|---|---|
feat |
new feature | minor |
fix |
bug fix | patch |
refactor |
restructure, no behavior change | none |
perf |
performance improvement | none (patch if fixes bug) |
docs |
documentation only | none |
test |
tests only | none |
build |
build system / deps | none |
ci |
CI/CD changes | none |
chore |
maintenance / tooling | none |
style |
formatting only | none |
revert |
revert prior commit | depends |
Scope
Use a consistent noun for the dominant area. Omit only when truly cross-cutting. Never multiple scopes in one commit line.
Splitting rules
Split when:
- feature + bug fix
- code + formatting-only cleanup
- deps/build + application logic
- refactor + standalone behavior change
- generated files + loosely coupled source
One type, one intent per commit. If you can't describe it that way, split.
Validation
python3 scripts/validate_commit_message.py --message "feat(auth): add otp fallback"
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install commit-message-writing - 安装完成后,直接呼叫该 Skill 的名称或使用
/commit-message-writing触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Commit Message Validation 是什么?
Strict Conventional Commits v1.0.0, atomic commit discipline, and Trunk-Based Development guardrails for git work. Use when preparing a commit, staging chang... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 183 次。
如何安装 Commit Message Validation?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install commit-message-writing」即可一键安装,无需额外配置。
Commit Message Validation 是免费的吗?
是的,Commit Message Validation 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Commit Message Validation 支持哪些平台?
Commit Message Validation 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Commit Message Validation?
由 omaression(@omaression)开发并维护,当前版本 v1.0.0-alpha。