SuperAPI AI 工具集

merge-pr

通用与其它

查看项目

更新于 10-15 22:39

技能介绍

用途:merge-pr 用于合并 jackin 项目的 PR,默认针对当前分支的 PR,也可通过参数指定。它按顺序执行预合并门禁、路线图条目退役和 squash 合并,复用 .github/ 中的 agent 规则与 PULL_REQUESTS.md,不重复其内容。

主要能力与流程:先解析 PR 并读取 gh pr view 与 gh pr diff;进行爆炸半径分类,若 diff 涉及版本化 schema、认证/安全面、.github/workflows/** 或需要 force-push/--admin,则视为高风险并暂停等待一次明确确认;随后执行 CI 门禁,用 gh pr checks <PR> 检查,pending 时轮询至通过(除非使用 --no-poll),任一检查失败即停止,信任 CI 而不在本地重跑。接着处理路线图退役:若 PR 完成路线图条目的最后部分,用 cargo xtask roadmap retire <slug> --plan 打印工作清单,由 agent 完成内容迁移与链接重指,再以 --apply 移除 meta.json 条目、删除 .mdx 并审计悬空链接;部分完成则用 --partial 设置状态并保留页面。之后核对标题与正文是否匹配最终 diff,必要时用 gh pr edit 修正。最后构建正文文件,追加 trailers,执行 gh pr merge <PR> --squash --body-file,并确认标题带 (#N)。

参数:--no-poll 表示不等待 pending CI,直接停止并报告;--admin <check> 表示授权绕过某个指定失败检查,仍需高风险确认。

适用场景:操作者明确运行 /jackin-dev:merge-pr 时使用。不适用于创建或迭代 PR,那些应使用 /jackin-dev:create-pr 或 /jackin-dev:propose。

限制与红线:无明确授权且属高风险时必须先确认;必需 CI 检查失败时停止,除非有 --admin <check> 加确认;路线图条目未退役或未更新状态时先修复。常见错误包括沿用上一会话的“全部合并”授权、在 CI pending/失败时合并、留下 Status: Resolved 页面而非退役、squash 标题缺少 (#N) 或 DCO/Co-authored-by trailers。工具方面捆绑 jackin-pr-trailers,CI 运行 cargo xtask schema-check,本技能只读取其结果。