SuperAPI AI 工具集

commit

编程与开发

查看项目

更新于 10-16 10:33

技能介绍

本技能用于在 AI 代理进行 git 提交前提供规范指导,确保生成的提交信息简洁且符合 Conventional Commits 风格。

用途

在需要为当前代码变更创建 git 提交时使用。它规范了提交信息的结构,并限定了提交操作的边界(只提交、不推送)。

提交信息格式

<type>(<scope>): <summary>

type 为必填项。新增功能使用 feat,缺陷修复使用 fix。其他常见类型包括 docs、refactor、chore、test、perf。

scope 为可选项。使用括号包裹的简短名词,表示受影响的区域(例如 api、parser、ui)。

summary 为必填项。要求简短、使用祈使语气、不超过 72 个字符,且末尾不加句号。

正文说明

正文为可选项。如需添加,应在主题后空一行,然后书写简短段落。

明确禁止事项

不得包含破坏性变更(breaking-change)标记或页脚。

不得添加签署信息(不使用 Signed-off-by)。

仅执行提交,不得执行推送(push)。

如果无法确定某个文件是否应被包含在提交中,应向用户询问要提交哪些文件。

参数处理

调用方提供的任何参数都应视为额外的提交指引。常见模式包括:

自由形式的指令会影响 scope、summary 和正文。

文件路径或 glob 表达式用于限定要提交的文件。如果指定了文件,则仅暂存/提交这些文件,除非用户明确要求其他操作。

如果参数同时包含文件和指令,则两者都要遵循。

执行步骤

  1. 从提示中推断用户是否提供了特定的文件路径/glob 以及/或者额外指令。

  2. 查看 git status 和 git diff,了解当前变更(如提供了参数指定文件,则限定在这些文件范围内)。

  3. (可选)运行 git log -n 50 --pretty=format:%s 查看常用的 scope。

  4. 如果存在含义不明确的多余文件,在提交前向用户询问澄清。

  5. 仅暂存目标文件(如果未指定文件,则包含全部变更)。

  6. 运行 git commit -m "<subject>"(如有需要,附加 -m "<body>")。

适用场景与限制

该技能适用于需要按统一规范撰写提交信息的 git 提交场景,尤其适合由 AI 代理自动执行提交操作的流程。其限制在于:仅覆盖提交信息的格式与提交操作范围,不涉及推送、代码审查或其他 Git 工作流环节;具体文件范围在存在歧义时需要人工确认。