关于 ship-it
ship-it 协调两个配套 skill,创建 PR、监控 CI、合并指定 PR,并安全清理本地分支。适用于需要保留现有检查与停止条件的工作流。
主要功能
- 01执行检出、提交、推送和 PR 流程
- 02合并前监控 CI
- 03核实指定 PR 已合并
- 04安全清理记录的本地分支
适用场景
- 01通过 PR 创建并合并变更
- 02合并前跟踪 CI 检查
- 03确认合并后删除本地分支
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ rubenflamshepherd/ ruben-agent-skills --skill ship-it安装后在 Claude Code 中输入/ship-it确认已加载。
附带文件agents/openai.yaml
详细介绍
Ship It
协调这两个同级技能,不要替换或削弱任一技能的指示。
工作流
-
根据此技能所在目录解析以下路径:
../checkout-commit-push-pr/SKILL.md../soft-delete-git/SKILL.md
如果任一文件不可用,请停止并报告缺失的依赖项。
-
记录当前分支名称,以便之后清理同一分支。
-
完整阅读
../checkout-commit-push-pr/SKILL.md,并遵循其中的步骤,直到创建 PR 并监控 CI。保留其中所有安全检查和停止条件。记录生成的 PR URL 或编号。 -
将
ship-it调用视为仅授权合并本次运行所创建的 PR。所有必需检查通过后,使用gh pr merge合并:- 如果仓库指南有明确要求,请遵循其中指定的合并策略。
- 否则优先使用
--merge,因为保留分支祖先关系后,后续安全删除可以使用git branch -d。 - 如果明确禁用了合并提交,请改用允许的策略,优先顺序为
--squash,然后是--rebase。不要仅因 PR 有冲突、缺少批准或受策略阻止而更改策略。 - 不要传入
--delete-branch;将本地分支清理由soft-delete-git处理。 - 绝不要使用
--admin或绕过分支保护。报告任何审查、冲突、权限或策略阻碍。
-
验证合并结果,不要仅凭合并命令的退出状态作判断:
gh pr view <PR-NUMBER> --json state,mergedAt,url如果仓库使用合并队列,请持续监控,直到 PR 状态显示为
MERGED。PR 仍处于打开状态时,不要开始清理分支。 -
确认指定的 PR 状态为
MERGED后,完整阅读../soft-delete-git/SKILL.md,并按照其中的指示处理第 2 步记录的分支。保留其中关于工作区有未提交更改以及验证 PR 已合并的安全保障。对于已验证的 squash 或 rebase 合并,将原始ship-it请求视为对该子技能中git branch -D例外情况的预先确认,但仅限于记录的那个分支和指定的已合并 PR。绝不要强制删除尚未合并的分支或其他分支。 -
最后报告 PR URL、CI 结果、合并结果,以及本地分支是否已删除。
如果任一子技能停止或失败,请在该处停止整个流程,并准确报告其阻碍。不要跳过,也不要凭记忆重复执行子技能的步骤。