SuperAPI AI 工具集

ship-spec

编程与开发

查看项目

更新于 10-16 02:06

技能介绍

用途

Ship Spec 用于把"一个已获批准的规格"推进到交付完成。它的核心设计是:父级代理只做编排,实现交由独立的新子代理(implementation subagent)完成,评审交由另一个独立的新子代理完成,以保证实现与评审相互分离。

主要能力

  • 两道启动门禁:先检查所需技能是否齐备,再检查仓库配置是否就绪,未通过则停止并给出修复动作。
  • 规格与工单解析:从配置的问题追踪器拉取父规格全文与评论,并以"穷尽并集"方式解析子工单(原生父子关系、正文/评论中的显式子引用、反向父级查询),而不是首次命中即止。
  • 依赖图与工作前沿(frontier):构建工作项依赖图,拒绝缺失工单、循环、未解决的阻塞项或不明确的父子关系;每次只处理一个已就绪工作项。
  • 分支与提交契约:记录基线分支与提交,创建 spec/<spec-id>-<short-slug> 分支;每个实现与修复提交遵循 commitlint 兼容的 Conventional Commit 格式。
  • 完整验证门禁:从仓库说明、清单、任务运行器、脚本和 CI 配置中盘点全部验证命令,形成验证契约,实现后与每次变更后都要重跑。
  • Ponytail 精简门禁:将规格、验收标准、仓库规范、深模块边界等视为约束,在约束内最小化实现,并要求每个改动文件与新抽象都有必要性。
  • 独立评审循环:子工单评审与整规格终审都由不同于实现者的新代理执行,分别返回 Standards、Spec、Ponytail 三方面结论。
  • 草稿 PR 发布:整规格评审通过后推送分支,通过仓库托管平台原生机制创建草稿状态的拉取请求,并关联父规格与全部子工单。

使用方式

该技能通过调用 $ship-spec 启动。父规格需先由 to-spec 生成,子工单可由 to-tickets 生成(可选)。若技能缺失,技能会列出缺失名称并要求执行:

npx skills@latest add mattpocock/skills

若 Ponytail 技能缺失,Codex 环境被要求执行:

codex plugin marketplace add DietrichGebert/ponytail
codex plugin add ponytail@ponytail

随后需要审阅并信任 /hooks 中的 Ponytail 钩子,重启 harness 后再次调用 $ship-spec。

适用场景

适用于已经存在一份由 to-spec 产出、包含必需章节与已批准测试接缝的规格,并且希望用可追溯的提交、独立评审与原生追踪器状态流转完成交付的团队或仓库。

限制

  • 缺少任一所需技能或仓库配置不完整时,运行会在对应门禁处停止,需用户完成安装或配置后重启。
  • 子工单发现需要穷尽所有受支持的来源;原生查询返回零结果不能作为"无子工单"的证明。
  • 分支推送或拉取请求创建失败时,父规格保持 In Progress,并保留提交、报告确切重试点;已完成状态的声明有严格前置条件(原文在此处被截断,后续条件内容暂未提供)。
  • 该技能依赖外部问题追踪器与仓库托管平台的原生机制;具体支持范围与配置字段的细节,资料中仅给出了 GitHub 的示例,其余平台信息暂未提供。
  • 文档未说明收费、价格或性能数据,暂未提供。