SuperAPI AI 工具集

commit-assisted-by

编程与开发

查看项目

更新于 10-16 08:47

技能介绍

用途:在提交中记录 AI 助手的参与情况,添加 Assisted-by: <agent-name>/<model-id> git 尾部标记,其中 <agent-name> 为具体 AI 助手(CLI/运行框架),<model-id> 为参与提交的 LLM 版本。

主要能力与用法分三种模式: 模式一(自行创建的提交):提交主题限 50 字符,使用祈使语气;正文按需换行至 72 字符,力求简洁。直接在提交命令上传递尾部标记: git commit -s -m "Add support for X" --trailer "Assisted-by: <agent-name>/<model-id>" 所有提交必须由真实人名与邮箱签署以满足 DCO;签署或共同作者字段不得使用助手名称或化名。

模式二(非自身提交命令产生的提交):先运行随附安全检查脚本,需使用加载 SKILL.md 目录下的完整路径(非当前工作目录): <skill-dir>/scripts/safety-check.sh 仅当输出恰为 safe 时才执行: git commit --amend --no-edit --trailer "Assisted-by: <agent-name>/<model-id>" 随后用一行短提示告知用户哈希已变动;若输出以 skip: 开头,则说明跳过原因。

模式三(明确要求标记整个分支):仅由“add assisted-by to commits in this branch”等明确请求触发,默认以 @{u} 为基线,保证范围仅含未推送提交;无上游时须询问用户指定基线。先展示计划 git log --oneline <base>..HEAD;若基线非 @{u} 且 git rev-list <base>..@{u} 非空,需警告改写后要强制推送并确认。含合并提交须停下询问。执行: git rebase <base> --exec 'git log -1 --format=%B | git interpret-trailers --parse | grep -qi "^Assisted-by:" || git commit --amend --no-edit --trailer "Assisted-by: <agent-name>/<model-id>"' 该命令已带尾部标记的提交会短路跳过,具备幂等性。完成后报告标记与跳过数量,已推送分支需提示用户自行 git push --force-with-lease;遇冲突不得自行解决,交由用户选择 --continue 或 --abort。

限制与反模式:任何模式都不得自行执行 git push;不要使用 Co-authored-by:(AI 助手不是 GitHub 用户,该约定保留给人类协作者);不得伪造或美化两个标记,须使用真实助手/CLI/运行框架名称与模型 ID/版本。