在很多团队里,真正拖慢节奏的并不总是“写代码”,而是这条重复且容易失误的链路:

- 从默认分支拉最新代码
- 按团队规范创建功能分支
- 把改动拆成可审查的原子提交
- 组织 PR 标题、描述、关联 Issue/Jira
这些步骤都不复杂,但每天重复执行,既耗时又容易出现不一致。branch-commit-pr 这个项目,目标就是把这条链路做成 AI 代理可复用的 Skill,让流程自动且稳定。
项目定位
branch-commit-pr 是一个完整的 Git 开发工作流 Skill,覆盖:
- 上下文检测(默认分支、分支命名约定、提交风格)
- 分支管理(从最新默认分支拉起并设置 upstream)
- 智能提交(按模块/关注点拆分原子 commit)
- PR 创建(通过
ghCLI 自动生成标题与描述) - 事项关联(GitHub Issue,可选 Jira 链接)
一句话总结:把“代码写完后的工程动作”交给 AI 代理处理。
它解决了什么问题
1) 团队约定难以长期一致
常见问题:
- 分支命名风格混乱(
feat/、feature/、平铺命名并存) - commit message 风格不统一(语义化与自然语言混用)
branch-commit-pr 会先读取仓库近期分支与提交历史,再按既有习惯生成分支名与提交信息,减少“人为口径漂移”。
2) 改动提交粒度不合理
很多项目的问题不是“没人提交”,而是“提交太大、太杂”。
该 Skill 在提交阶段会先分析改动,再按目录与关注点分组;实现与对应测试会尽量放在同一提交里,提升 PR 可读性和可回滚性。
3) PR 编写成本高
从 commit 到 PR 的最后一步常被低估:标题、摘要、关联事项、检查信息都需要整理。
该 Skill 通过 gh CLI 自动生成 PR 内容,并支持在你提到 Issue 编号时自动关联,减少人工整理成本。
工作方式(Phase 化流程)
项目把流程拆成 4 个阶段:
- Phase 0 Context Gathering:检测默认分支、命名约定、提交风格、Issue 跟踪能力
- Phase 1 Branch Management:同步默认分支并创建规范 feature branch
- Phase 2 Smart Commit:规划原子提交并按仓库风格生成 commit message
- Phase 3 Pull Request:创建 PR,自动填充摘要与关联信息
这意味着它既可以跑全流程,也可以按需执行单阶段。
使用示例(自然语言)
你可以直接对代理说:
- “开始做 dark mode 功能”
- “给登录模块建分支”
- “提交当前改动并拆成合理 commit”
- “基于这些提交创建 PR,关联 #42”
Skill 会根据指令自动选择执行模式(仅建分支 / 仅提交 / 仅 PR / 提交+PR / 全流程)。
安装方式
推荐使用 skills.sh:
npx skills add nianyi778/branch-commit-pr也可手动复制 SKILL.md 到代理技能目录(如 Claude Code、OpenCode、Cursor)。
依赖与边界
项目依赖很轻:
gitgh(用于 PR 创建)- 可选 Jira 环境变量配置(用于票据链接)
需要注意:它聚焦的是“流程自动化”,不是替代代码评审。它能显著改善流程一致性,但最终质量仍然依赖团队评审与测试体系。
Jira 如何与 PR 绑定(实现细节)
这一块的实现分两层:
1) PR 文案关联(默认)
触发条件:
- 已配置
JIRA_URL、JIRA_EMAIL、JIRA_API_TOKEN - 在指令中明确提到 Jira ticket(如
PROJ-123)
执行方式:
- 在 PR 描述中增加 Jira 链接:
Jira: [PROJ-123](https://yourteam.atlassian.net/browse/PROJ-123)
这一步让评审可以从 PR 一跳到 Jira 工单,建立明确上下文。
2) Jira 状态流转(可选)
只有当你明确要求(例如“把 PROJ-123 流转到 In Review”)时,才会调用 Jira API:
- 接口:
POST /rest/api/3/issue/{KEY}/transitions - 认证:
email + api_token(Basic Auth) - 参数:
transition id(例如31)
也就是说,默认不会自动改 Jira 状态。
3) 安全策略
- 不猜 ticket:你不提 ticket,就不添加 Jira 关联
- 不默认流转:你不明确要求,就不调用 transition API
- Jira API 失败不阻断:会提示告警,但 PR 仍可创建
4) 可直接使用的指令
“提交并创建 PR,关联 PROJ-123;然后把它流转到 In Review”
适用场景
- 正在把 AI 编码接入日常研发流程的团队
- 多人协作、提交与分支规范要求明确的项目
- 希望降低 PR 准备时间、提高审查效率的仓库
结语
如果说 AI 已经提高了“写代码”的速度,那么 branch-commit-pr 在做的是另一件事:
把“写完代码之后”的工程动作标准化、自动化、可复用化。
对于任何希望把 AI 产出稳定落地到真实协作流程的团队,这一步通常比想象中更关键。