用途:读取 git 变更,生成规范提交信息并创建 commit。
主要能力:提交前先运行 git status 与 git diff --staged(未暂存则用 git diff),仅依据 diff 实际内容编写信息;检查变更文件与模块以确定 scope;留意被移除的导出、签名变更、被删函数以识别破坏性变更;用途不明时询问用户而非猜测。若 diff 混杂无关事项,可用 git add <files> 分组拆成多个提交,否则一个提交即可。
提交格式:type(scope): description,scope 可选,描述用祈使语气(add 而非 added),约 50 字符内。type 取值包括 feat、fix、docs、style、refactor、perf、test、build、ci、chore、revert。拼写修正或单个依赖升级可省略正文;改动影响行为或涉及多文件时补充说明原因而非做法。破坏性变更在 scope 后加 ! 并添加 BREAKING CHANGE: 页脚。
代码检查:在 Claude Code 中,PreToolUse 钩子会在每次 git commit 前运行,自动检测项目 linter(Node 的 npm/bun/pnpm/yarn run lint、Python 的 ruff/flake8、make lint、rubocop、golangci-lint),失败则阻止提交;未配置 linter 则直接提交。在 Claude Code 之外(不支持钩子)需自行运行项目 lint 命令。不要用 --no-verify 绕过失败的 lint,应修复错误后重新提交。
限制:仅依据资料所述,未提供更多平台与配置细节;复杂或多主题变更会先请求确认再提交。