一个端到端自动化的 commit + push + PR + 可视化报告 Skill。
当你让 AI 改完代码后,只需说一句:
AI 会全自动完成(绝不二次确认;触发即完整流程,没有"只 commit 不 push"的退路):
git status / git diff 与本次会话上下文,生成符合规范的 commit message(中/英语言由项目历史决定)git add + git commitchore/auto-commit-<时间戳> 临时分支再 push,并把本地保护分支 reset 回 origin/<branch> 保持干净远程不是 cnb(github / gitlab)时优雅降级:完成 push,跳过 PR/评论;终端仍输出 markdown 4 维度分析,并提示用户去对应平台手动开 PR。
想本地暂存式 commit(不推送)?请直接
git commit,不要召唤本 skill。
采用 Progressive Disclosure(渐进式披露) 设计,主入口精简,按需加载详细文档:
commit-skill/
├── SKILL.md # 主入口:触发条件 + 6 步主流程 + 红线
├── README.md # 你正在看的这份
└── references/
├── commit-message-guide.md # commit message 完整生成规范(type、风格对齐、正反例)
├── protected-branch-flow.md # 受保护分支自动分流(切临时分支 + reset main)
├── visual-report-and-pr.md # 可视化报告生成(Chrome headless)+ PR 创建
├── push-conflict-resolution.md # push 失败的 6 种场景及处理 SOP
└── edge-cases.md # 边界情况(未跟踪文件、hook 失败等)
主流程中通过相对路径链接到 references/ 下的文档,AI 仅在需要时才会加载,节省上下文。
将整个 commit-skill 目录放到对应 Agent 的 skills 路径下:
# 用户级(所有项目可用)
npx skills add https://cnb.cool/skill-studio/auto-commit.git -g -y
# 项目级(仅当前项目)
cp -r commit-skill .codebuddy/skills/auto-commit
具体路径以你使用的 AI Agent(CodeBuddy / Claude Code 等)文档为准。
@cnbcool/cnb-cli):用于 upload-image 与 post-pull。jq(拼装 PR body JSON 时用,缺失则退路用系统 Python json.dumps)。push --force / --force-with-lease / clean -fd 默认禁用)--no-verify)--amend 已有 commitgit reset --hard origin/<protected-branch>——仅在受保护分支自动分流时、且工作区已 clean 时使用,用于把本地 main 拉回干净状态直接编辑对应文件即可:
| 想改什么 | 改哪个文件 |
|---|---|
| 触发关键词、主流程顺序 | SKILL.md |
| commit 语言(中/英)、type 取值、风格 | references/commit-message-guide.md |
| 受保护分支识别、切分支命名规则 | references/protected-branch-flow.md |
| 可视化报告 HTML 模板、Chrome 寻路、PR body 结构 | references/visual-report-and-pr.md |
| push 冲突的处理策略 | references/push-conflict-resolution.md |
| 边界情况(hook 失败、lock 文件等) | references/edge-cases.md |