mcpField
W
write-conventional-commit

write-conventional-commit

github.com/liblaf开发0181 次安装4 天前更新
代码仓库

关于 write-conventional-commit

面向 Git 改动审查并撰写 Conventional Commit 消息的技能。它检查暂存区和工作区差异,依据主要改动意图选择一种提交类型,并只输出一条消息。

主要功能

  1. 01检查 Git 状态与差异
  2. 02无暂存差异时回退检查工作区
  3. 03根据主要改动意图选择提交类型
  4. 04按 Conventional Commit 规则撰写消息

适用场景

  1. 01为已暂存改动生成提交消息
  2. 02为未暂存改动撰写提交消息
  3. 03依据代码或文档改动选择提交类型

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/liblaf/skills --skill write-conventional-commit

安装后在 Claude Code 中输入/write-conventional-commit确认已加载。

附带文件agents/openai.yaml

详细介绍

编写 Conventional Commit

检查 Git 更改并编写 Conventional Commit 消息。

工作流

  • 运行 git status --short。
  • 如果没有已暂存或未暂存的更改,请回复:No staged or unstaged changes found.
  • 运行 git diff --staged --no-ext-diff --stat。
  • 运行 git diff --staged --no-ext-diff。
  • 如果暂存差异为空,但工作树有更改,则使用 git diff --no-ext-diff --stat 和 git diff --no-ext-diff 作为回退。
  • 根据差异推断主要意图,并且只编写一条消息。

提交类型

从以下列表中恰好选择一种类型:

  • feat:新功能
  • fix:修复错误
  • docs:仅更改文档
  • style:不影响代码含义的更改(空白字符、格式、缺少分号等)
  • refactor:既不修复错误也不添加功能的代码更改
  • perf:提升性能的代码更改
  • test:添加缺失的测试或修正现有测试
  • build:影响构建系统或外部依赖项的更改
  • ci:更改 CI 配置文件和脚本
  • chore:不修改 src 或 test 文件的其他更改

Conventional Commit 规则

  • 选择主要意图。不要组合类型。
  • 主题末尾不要加句号。
  • 如果更改包含破坏性变更,在类型或作用域后添加 !;如果需要补充迁移细节,则添加 BREAKING CHANGE: 页脚。
  • 主题应简洁;目标长度为 50–72 个字符。
  • 不要包含 Markdown 围栏、项目符号、分析或评论。
  • 简短描述之后可以添加较长的提交正文,提供代码更改的更多背景信息。
  • 冒号后优先使用小写字母,专有名词或缩写除外。
  • 如果上下文中明确包含有用的尾注或页脚信息,请予以保留。
  • 仅在作用域明确且确有帮助时使用可选作用域。
  • 主题使用祈使语气。

评论

支持 Markdown