github.com/qiniu/go-sdk/v7@v7.27.0/.agents/skills/git-commit/SKILL.md (about) 1 --- 2 name: git-commit 3 description: 遵循 Angular 规范生成 git commit 消息。在用户请求创建 commit、写 commit message 或暂存并提交时使用。典型场景:改完代码要提交前、或要求按 Angular 规范写 message 时。 4 argument-hint: "<附加上下文(可选)> [push=true]" 5 allowed-tools: 6 - Bash(git add:*) 7 - Bash(git branch:*) 8 - Bash(git commit:*) 9 - Bash(git diff:*) 10 - Bash(git log:*) 11 - Bash(git status:*) 12 - Bash(git push:*) 13 --- 14 15 # 规范化提交 16 17 开始时声明:"我正在使用 git-commit skill 生成并提交规范化 commit。" 18 19 ## 快速开始 20 21 1. 查看 `status/diff/log`,确认提交范围与语言风格。 22 2. 暂存目标文件并展示"将提交列表"。 23 3. 生成符合 Angular 规范的 commit message。 24 4. 提交后如有上游分支则 push。 25 26 ## 何时不要使用(Do NOT use) 27 28 - 工作区无待提交变更。 29 - 用户仅请求代码分析/评审,不需要提交。 30 - 用户明确要求仅生成建议,不执行 `git commit`。 31 32 ## 触发样例与非样例 33 34 - 应触发: 35 - "帮我按 Angular 规范提交这些改动。" 36 - "写一个 commit message 并 push。" 37 - 不应触发: 38 - "review 这个 PR 有没有问题。" 39 - "分析下这个报错根因。" 40 41 ## 使用示例 42 43 ```bash 44 # 基本提交 45 git-commit 修复上传逻辑 46 47 # 提交并 push 48 git-commit push=true 49 ``` 50 51 ## 预检查命令 52 53 ```bash 54 git status --short 55 git diff HEAD 56 git branch --show-current 57 git log --oneline -10 58 ``` 59 60 ## 消息规范 61 62 Header:`<type>(<scope>): <summary>` 63 64 Type: 65 - `feat` 新功能 66 - `fix` 缺陷修复 67 - `docs` 文档改动 68 - `refactor` 重构 69 - `perf` 性能优化 70 - `test` 测试相关 71 - `chore` 杂项维护 72 - `style` 代码格式调整 73 74 Scope 建议值(本项目常用): 75 - `storage` / `storagev2` / `auth` / `cdn` / `pili` / `rtc` / `sms` / `linking` / `qvs` 76 - `iam` / `media` / `audit` / `sandbox` 77 - `client` / `conf` / `reqid` 78 - `internal` / `examples` 79 80 Summary 规则:祈使句、现在时、首字母小写、不加句号。 81 82 Body 规则: 83 - `docs` 可省略,其他类型建议必须有 84 - 至少说明"为什么改"与"影响范围" 85 - 非 `docs` 类型时,body 至少 20 个字符 86 - 单段 body 不超过 3 行,保持简洁 87 88 Footer(按需): 89 - `BREAKING CHANGE: ...` 90 - `Fixes #123` / `Closes #456` 91 92 ## 语言规则 93 94 - 参考最近 10 条提交语言。 95 - 近期中文为主则用中文;近期英文为主则用英文。 96 97 ## 执行流程 98 99 1. 先确认提交文件列表。 100 2. 执行 `git add`(按文件名添加,避免 `git add -A`)。 101 3. 展示 commit message 草案并确认。 102 4. 执行 `git commit`。 103 5. 如有上游分支则 push: 104 - `git push` 105 - 或 `git push -u origin <current-branch>` 106 107 ## 提交前检查提醒 108 109 提交代码前提醒用户确认已通过: 110 - `make unittest` — 单元测试 111 - `make staticcheck` — 静态检查 112 - `gofmt -s -w .` — 代码格式化 113 114 如果是生成代码相关修改,还需确认已运行 `make generate`。 115 116 ## 关键约束 117 118 - 不要使用 emoji 在 commit message 中 119 - 不要在 commit message 中包含 AI 辅助工具相关信息 120 - 不要添加 "Generated with" 或 "Co-Authored-By: AI" 等内容 121 - 不要使用 `--no-verify` 跳过 hooks 122 123 ## 输出模板 124 125 ```text 126 已提交: <commit-hash> 127 标题: <type(scope): summary> 128 分支: <branch> 129 Push: 成功/失败/未执行 130 ``` 131 132 ## 失败回退 133 134 - 工作区无变更:输出 `git status` 结果,提示无可提交内容。 135 - `git commit` 失败(hook 报错):输出完整报错,建议修复后重试,不跳过 hook。 136 - `git push` 失败(远端冲突):输出报错,建议先 pull/rebase 再重试。 137 138 ## 验收标准(统一) 139 140 - 输入前提:参数与上下文可解析;缺省参数按 skill 默认值执行,并在输出中注明。 141 - 产出要求:按 skill 约定的输出模板给出结果,并包含关键证据(命令、路径、链接或日志摘要)。 142 - 通过判定:主流程步骤已完成且无阻塞;若有未完成项,必须明确标注影响范围与下一步。 143 - 默认策略(非交互):需要确认但用户未及时响应时,采用"推荐默认值/最小风险项"继续;需要交互选择时优先推荐项。 144 - 阻塞升级:遇到权限、凭证、外部依赖缺失时立即停止该步骤,输出"阻塞点 + 已尝试 + 需要用户提供的信息"。 145 146 ## 系统规范(AGENTS.md) 147 148 执行本 skill 时同时遵守 `AGENTS.md` 中的系统规范;与本 skill 冲突时以本 skill 为准。