SuperAPI AI 工具集

ship

通用与其它

查看项目

更新于 10-15 22:11

技能介绍

用途:ship 用于把已完成的功能分支从“我觉得做完了”推进到“PR 已开,且合并时会关闭父 PRD”。它属于一套工作流:/to-prd 生成 PRD issue,/to-issues 拆出子 slice issue,afk-cook 与 /tdd 完成 slice 并关闭它们,最后由 ship 做审查门禁、开 PR 并写入关闭父 PRD 的引用。

主要能力与流程:

  1. 校验前置条件:工作区干净(git status --porcelain 为空)、当前分支不是默认分支、分支领先默认分支至少一个提交(git rev-list --count main..HEAD ≥ 1)。任一不满足即停止并报告,不自动修复。
  2. 盘点工作:用 git log main..HEAD --oneline 提取提交中的 slice 引用([#N] 或 Refs #N),再用 gh issue view N --json body,title 读取每个 issue 的 ## Parent 段,收集父 PRD 编号。若出现多个 PRD、或找不到 PRD,会向用户展示映射并询问如何处理,不自行猜测。
  3. 审查门禁:对 main 运行 /code-review,展示结果并等待用户明确表态(通过、接受并继续、先修复)。空结果不算通过。 3a. 可选 /critique:审查通过后、起草正文前,若该技能存在可询问是否运行;它是建议性的,不阻塞发布。
  4. 起草 PR 正文:标题取父 PRD 标题(去掉 PRD: 前缀),并按分支提交是否使用 conventional-commits 前缀决定是否加前缀;标题不含 PRD 编号。正文包含 Implements PRD #<PRD>、slice 列表、## Test plan 与 Closes #<PRD>。不添加 Closes #<slice>,因为 slice 已关闭。
  5. 创建 PR:gh pr create --base main --head <current-branch> --title "<title>" --body "<body>",打印 PR URL;失败则报告并停止,不重试或自动恢复。

适用场景:分支准备合并、即将手敲 gh pr create;某 PRD 的所有 slice 已发布而父 PRD 仍开着;用户说“ship it”“open the PR”“let's merge”等。

限制与不适用:直接在默认分支上工作、分支有未提交改动、单个 issue 且无父 PRD 的改动,都不适合使用;需要安全审查或合并前 ADR 等非标准流程时,应先走该流程。资料未提供收费、价格、平台支持等信息。