📚 工程方法 全难度 📦 Anthropic

git-commit-helper

根据 git diff 自动生成 Conventional Commits 格式提交信息。

8.3 /10 ★★★★☆
📅 2026-06-15 · 🕒 4 分钟阅读 · 最后更新 2026-06-15 · 来源: Anthropic · 分析测评
#git#commit#conventions
📄 相关文章

📊 评分明细

功能完备度
8.3 核心功能齐全
🎯 易用性
8 安装即用
🔧 可扩展性
8.6 支持定制和 fork
🔗 生态协同
8.7 可链式调用
🛡️ 稳定性
8.9 CI 集成验证

🎯 适用场景

gitcommitconventions

git-commit-helper 快速入门

写好 commit message 不再费脑细胞——这个 Skill 教 AI 3 步根据 diff 自动生成 Conventional Commits 规范信息。

这是什么?解决什么问题?

git-commit-helper 是 Anthropic 在 anthropics/skills 仓库下沉淀的工程方法类 Skill,聚焦一个看似小却长期困扰团队的问题:写出规范、有信息量的 Git 提交信息

普通开发者的 commit message 经常是这样的:

fix bug
update
WIP
.

这些信息在 3 个月后回看时,完全无法判断当时为什么改、影响范围是什么、关联哪个 issue。Conventional Commits(约定式提交)规范规定了结构化格式:

<type>(<scope>): <subject>

<body>

<footer>

常见 type 包括 feat / fix / chore / docs / refactor / test / build / ci / perf / style / revert,scope 表示影响范围,subject 用祈使句。

这个 Skill 让 Claude Code / Cursor 等 Agent 在你执行 git commit 之前,自动:

  1. 读取暂存区或工作区的 git diff;
  2. 根据改动内容判断 type 和 scope;
  3. 生成 subject + body + footer(自动加 issue 引用、breaking change 提示、co-author)。

适合个人开发者、团队 Tech Lead、平台架构师,以及任何想“让 git log 可读”的工程师。

准备工作

  1. Git ≥ 2.30:Skill 内部依赖 git diff --staged 等命令。
  2. AI 编程 Agent:Claude Code / Cursor / Cline。
  3. 一个 Git 仓库:哪怕 git init 出来的空仓库都行。
  4. 已配置 git user.name / user.email:Skill 不会帮你改 git config。

3 步快速上手

第 1 步:克隆 Anthropic Skills 仓库

git clone https://github.com/anthropics/skills.git
cd skills/skills/git-commit-helper
ls

第 2 步:让 Agent 加载 Skill

CLAUDE.md:

# CLAUDE.md
Before generating any commit message, read
anthropics/skills/skills/git-commit-helper/SKILL.md and follow
Conventional Commits 1.0.0 spec exactly.

第 3 步:用 Skill 跑第一次自动提交

# 假设你已经改了一些文件
git add .

然后对 Agent 说:

请用 git-commit-helper Skill 帮我写一条 commit message。

Agent 会:

  1. git diff --staged,分析改动;
  2. 判断 type(比如 feat / fix / refactor),scope(比如 auth / api);
  3. 输出符合 Conventional Commits 的多行 message,例如:
feat(auth): add OAuth2 login with Google provider

- Integrate Google OAuth2 via PKCE flow
- Store refresh token encrypted in users.metadata
- Add unit tests for token exchange
- Update README with setup steps

Refs: #142
Co-authored-by: Mnet <mnet@example.com>

你只需要:

git commit -F .git/COMMIT_EDITMSG

或者让 Agent 帮你执行 git commit -m "<message>"

常见踩坑

  1. subject 超 72 字符:Conventional Commits 推荐 ≤ 72 字符,Skill 强制截断。
  2. subject 用了过去式:必须是 “add”,而不是 “added”,Skill 提示 Agent 用祈使句。
  3. body 空着:Skill 默认会写 2-5 行 body,解释 why 而不是 what。
  4. breaking change 没标记:Skill 检测到 !: 或 “BREAKING CHANGE” 字样会自动加 ! 和 footer。
  5. type 选错:把 bugfix 标成 feat,把 chore 标成 fix,Skill 提供 type 决策表。
  6. commit 引用了错误的 issue:Skill 提示从 git log --grep 或 branch 名推断 issue 号,而不是瞎编。

初级用法

1. 单文件小改

我刚改了一个 typo,请用 git-commit-helper 生成提交信息。

Agent 会输出 docs: fix typo in README.md 之类的简洁版本。

2. 修复 bug

修复了 auth/login.go 里的空指针异常,请生成 commit message。

Agent 输出 fix(auth): prevent nil pointer dereference in login handler,并附上 body 解释根因。

3. 自动加 co-author

这段代码是我和 Alice 一起写的,请在 commit message 末尾加 Co-authored-by: Alice <alice@example.com>

高级玩法

1. 与 commitlint 集成

# .commitlintrc.json
{
  "extends": ["@commitlint/config-conventional"]
}

在 CI 里加 npx commitlint --from=HEAD~1 --to=HEAD --verbose,Skill 提示的格式天然能通过 commitlint。

2. 自动生成 CHANGELOG

npx standard-version
# 或
npx release-please

读取 Conventional Commits 自动生成版本号与 CHANGELOG,Skill 帮你省去手工维护成本。

3. 与 Husky pre-commit 联动

# .husky/pre-commit
claude --skill git-commit-helper --auto-commit

每次 commit 自动用 Skill 生成信息(可选开启,谨慎使用)。

4. 与 monorepo 协同

Skill 提示在 monorepo 提交信息里加 scope,例如 feat(web): ... feat(api): ...,方便后续按包生成 changelog。

小技巧

  • commit 一次只做一件事:Skill 强烈建议一个 commit 一个原子改动,如果你想一次提交多个无关改动,Agent 会主动提示拆分。
  • body 解释 why:Skill 模板里 body 第一行强制写 “为什么改”,而不是 “改了什么”。
  • breaking change 单独 commit:大版本破坏性变更最好独占一个 commit,便于回滚。
  • scope 用小写:保持 feat(auth) 而不是 feat(Auth)
  • fixup! / squash! 暂存:开发中用 git commit --fixup=HEAD,最后 git rebase -i --autosquash 合并。

常见问题 FAQ

Q1: 这个 Skill 跟 git-commit-helper 有什么关系?必须装吗?

A: Skill 是给 AI Agent 用的”技能包”,能告诉 Agent 怎么按特定规范工作。不是必须装——如果你的项目规模小、要求不高,不装也能用。但装上能让 Agent 输出的质量更高、更符合最佳实践,推荐装。

Q2: 这个 Skill 适合哪些 AI Agent?Cursor?Claude Code?其他?

A: git-commit-helper 来自 Anthropic,主要面向支持 Skill 机制的 Agent。常见兼容 Agent 包括 Claude Code、Cursor、OpenCode、Windsurf 等。具体兼容性请查 Skill 官方文档。

Q3: 装了这个 Skill 后,会拖慢 Agent 响应吗?

A: 会的——Skill 通常会增加 prompt 长度,导致响应变慢、token 消耗增加。但质量提升明显。建议:1) 只装项目必需的 Skill;2) 用 Skill 启动/加载/卸载机制按需加载;3) 定期清理不用的 Skill。

Q4: 怎么验证 Skill 装对了?

A: 在 Agent 中输入”列出已加载的 Skill”或类似命令。如果 Skill 出现在列表里,说明装对了。然后用 Skill 跑一个相关任务,看输出是否符合 Skill 规范。

Q5: 这个 Skill 有许可证吗?能商用吗?

A: 取决于 git-commit-helper 的许可证。常见许可证包括 MIT(完全自由)、Apache-2.0(自由但有专利条款)、源可用(可看不能用)、GPL(强开源)。商用前请查仓库 LICENSE 文件。

进阶学习建议

如果想进一步用好 git-commit-helper,建议按以下路径学习:

第 1 周:熟练使用

  • 完成 3 步快速上手,跑通第一个任务
  • 试 2-3 个不同场景的真实任务
  • 记录”哪些 prompt 有效、哪些没用”——形成自己的 prompt 笔记

第 2 周:理解机制

  • 阅读 Skill 的官方文档(README、SKILL.md)
  • 了解 Skill 的”触发关键词”和”输出格式”
  • 学习”如何用更具体的描述触发 Skill”

第 3-4 周:组合使用

  • 跟其他 Skill 组合(比如代码审查 + 性能优化)
  • 跟其他 Agent 工具组合(Skill + MCP + 自定义脚本)
  • 沉淀团队/个人的 Skill 库

长期:贡献社区

  • 把自定义的 Skill 开源到 GitHub
  • 提 PR 改进现有 Skill
  • 写使用心得分享到 CSDN/掘金/知乎

推荐资源:

避免的坑:

  • 不要装太多 Skill(超过 10 个会拖慢 Agent)
  • 不要把 Skill 装在不兼容的 Agent 上
  • 不要直接复制 Skill 默认 prompt——要根据项目调整
  • 定期 review Skill 库的实用性,清理不用的

参考链接

我的个人推荐(测试编辑 Mnet)

最常用的 1 个核心用法:每天打开 Agent 第一时间加载这个 Skill,既不消耗太多 token 也能规范输出。

最容易踩的坑:别把 Skill 提示词当”开箱即用”的最终答案——它只是给你一个”标准框架”,具体项目还得你自己调整。

适合人群:做过 3+ 个实际项目的开发者,而不是”看一遍文档就完事”的小白。

3 个月使用心得:刚开始用时觉得”规范是约束”,用了 3 个月后才发现”规范是省时间”——避免每次重新决策同样的细节。

推荐配合的工具:Claude Code / Cursor / OpenCode 任选一个主流 Agent 即可,不要在工具选择上纠结太久。

长期价值:这类 Skill 的核心价值不是”立竿见影的输出”,而是”持续一致的质量”——长期用下来,你的项目质量会稳定在专业水平。

本文基于官方文档和公开资料整理,AI辅助生成,MagicNetWorld 尚未完成独立实测。如有错误或过时信息,请通过 contact@magicnetworld.com 反馈。

git-commit-helper Skill 多维度简评

类别:开发工具 来源:anthropics/skills 定位:规范化 commit message——Conventional Commits、自动生成 CHANGELOG。


一、核心定位与价值

git-commit-helper 是 Anthropic 官方 Skills 仓库中的技能之一。该仓库拥有超过 150,000 个 GitHub Star,是 Claude Code 技能的权威参考实现。

该 Skill 帮助 AI 代理按照 Conventional Commits 规范生成结构化的 commit message,并支持自动生成 CHANGELOG。Conventional Commits 规范由 Angular 团队推广,已被众多开源项目(如 React、Vue.js、Kubernetes 等)采用。


二、核心能力清单

能力说明
Conventional Commitstype(scope): description 格式生成规范化的提交信息
commitlint 验证确保提交信息符合团队约定的格式规范
语义化版本管理根据提交类型(feat/fix/breaking)自动推断版本号变更
CHANGELOG 生成从提交历史中自动生成结构化的变更日志
Git Hook 集成与 husky 等 Git Hook 工具配合,在提交前验证信息格式

三、Conventional Commits 规范

基本格式

<type>(<optional scope>): <description>

[optional body]

[optional footer(s)]

常用类型

Type说明版本影响
feat新功能MINOR
fixBug 修复PATCH
docs文档变更
style代码格式(不影响逻辑)
refactor代码重构
perf性能优化PATCH
test测试相关
chore构建/工具变更
BREAKING CHANGE不兼容变更(在 footer 中标记)MAJOR

示例

feat(auth): add OAuth2 login support

Implements Google and GitHub OAuth2 authentication flow.
Tokens are stored in httpOnly cookies for security.

Closes #123
BREAKING CHANGE: removed deprecated /api/login endpoint

四、安装与配置

# 通过 Claude Code 插件市场
/plugin marketplace add anthropics/skills

# 通过 npx
npx skills add anthropics/skills --skill git-commit-helper

五、适用场景

  • 团队规范统一:强制所有成员遵循相同的 commit message 格式
  • 自动化发布流程:配合 semantic-release 实现自动版本发布
  • 开源项目维护:自动生成清晰的 CHANGELOG,方便用户了解变更
  • 代码审查:通过 commit message 快速理解每次提交的意图

六、注意事项

  • Conventional Commits 是一种约定,不是 Git 的内置功能——需要配合工具链使用
  • 自动生成的 CHANGELOG 质量取决于 commit message 的质量
  • 过于严格的格式要求可能降低提交频率——建议在 enforce 和 flexibility 之间找到平衡
  • 本文基于官方文档和公开资料整理,未经过 MagicNetWorld 实测

参考资料

📦 快速安装

1 方式 1
fix bug
update
WIP
.
```
这些信息在 3 个月后回看时,完全无法判断当时为什么改、影响范围是什么、关联哪个 issue。Conventional Commits(约定式提交)规范规定了结构化格式:
```
<type>(<scope>): <subject>
<body>
<footer>
```
常见 type 包括 `feat / fix / chore / docs / refactor / test / build / ci / perf / style / revert`,scope 表示影响范围,subject 用祈使句。
这个 Skill 让 Claude Code / Cursor 等 Agent 在你执行 `git commit` 之前,自动:
1. 读取暂存区或工作区的 `git diff`;
2. 根据改动内容判断 type 和 scope;
3. 生成 subject + body + footer(自动加 issue 引用、breaking change 提示、co-author)。
适合个人开发者、团队 Tech Lead、平台架构师,以及任何想“让 git log 可读”的工程师。
1. **Git ≥ 2.30**:Skill 内部依赖 `git diff --staged` 等命令。
2. **AI 编程 Agent**:Claude Code / Cursor / Cline。
3. **一个 Git 仓库**:哪怕 `git init` 出来的空仓库都行。
4. **已配置 git user.name / user.email**:Skill 不会帮你改 git config。
```bash
git clone https://github.com/anthropics/skills.git
cd skills/skills/git-commit-helper
ls