a15a046e4e
Promote ship to the user-facing delivery skill. Kind is short or long from an explicit mode, then self-judgment, then a question, defaulting to short. Old names remain deprecation stubs.
2.2 KiB
2.2 KiB
name, description
| name | description |
|---|---|
| pr-ship | 处理已有 PR/MR:检查差异、审核和 CI,必要时修复阻塞项,合并后以合并 commit 做完整回归, 再按配置构建、发布和部署。用户说处理、合并、回归或发布 PR 时使用。 |
PR Ship:合并后的完整交付
当前会话只做管理:绑 ship id、按 next_step.py 开新 agent 并等待。不要在本会话
审 diff、合并或跑回归。
何时使用
- 用户提供 PR/MR 或要求处理当前 PR。
- 用户要求合并 PR 后完整回归并部署。
不适用
- 没有 PR、需要从零做小改动或修 bug:使用
ship。 - 复杂需求尚未形成批准 PRD:使用
specifier和shiplong 模式。 - 只做 diff 审查、不合并:使用
check。
工作规则
-
读取已安装 ship 的 manager.md。派发 worker 时再读 worker-prompt.md。从 PR 正文、分支名或 用户给出的 id 绑定已有 ship;没有则用 PR 标题生成 slug,创建
kind: short的 薄记录,source.kind: pr。之后证据都写进这个 ship id。 -
只跑:
python3 <ship-skill>/scripts/next_step.py \ --project-root <root> --ship-id <id> --entry pr检查、修复、合并、回归、obtain、发布、部署都是 worker。主会话只写
source.ref和等待结果。需要字段含义时再读 record.md。 -
合并后的回归和构建必须以合并 commit 为来源;worker 会写
commits.role: merged。
不要读取 check、delivery-loop、tester、builder、deployer、releaser。
安全门
- 开不出新 agent 时停止;worker 失败时不要自己把该步做完。
- 不绕过审核、CI、分支保护或冲突;不强推、不重写已共享历史。
- 不用 PR 源分支的旧 APK/镜像证明合并版本已发布。
- 目标分支变化、合并后代码漂移、回归失败、产物来源不明或部署健康检查失败时停止。
完成报告
报告 ship id、PR/MR、审核/CI 结果、合并 commit、完整回归证据、产物摘要、tag、部署目标、健康检查和回滚点。数字来自账本。