用途:把一份计划、规格说明或当前对话内容,拆解成一组 tracer-bullet 票据,发布到已配置的工单追踪器。追踪器与 triage 标签词汇应事先提供,否则需提示用户运行 /setup-matt-pocock-skills。
主要能力与流程:
- 收集上下文:基于对话已有内容;若用户传入规格路径、issue 编号或 URL,则抓取并阅读其正文与评论。
- 可选地探索代码库,了解现状,票据标题与描述使用项目领域词汇并遵循相关 ADR;寻找预重构机会,先让改动变容易,再做容易的改动。
- 拆分为垂直切片:每个切片贯穿 schema、API、UI、测试各层,是一条窄而完整的路径,而非单层水平切片;完成后可独立演示或验证,规模适配单个全新上下文窗口;预重构应最先完成。为每个票据标注阻塞边(blocked by),无阻塞者可立即开始。宽泛重构是例外,应按 expand–contract 排序:先扩展(新旧并存),再分批迁移调用点,最后收缩删除旧形式,并保留集成与验证票据。阻塞边是真实的产品与实现依赖,不应仅因评审顺序添加;堆叠 PR 是可选的交付拓扑,不替代阻塞图。
- 向用户提问:以编号列表展示标题、阻塞项、交付内容,确认粒度、阻塞边正确性、是否合并或拆分,以及是否将分叉/汇合序列化为线性堆栈。迭代至用户批准。
- 发布到已配置追踪器:本地文件则写入 .scratch/<feature-slug>/issues/<NN>-<slug>.md,按依赖顺序从 01 编号,每票据一个文件;真实追踪器(GitHub、Linear 等)则按依赖顺序每票据发布一个 issue,保留文本阻塞边并尽量用平台原生关系。GitHub 上父 issue 的原生子 issue 关联是发布的一部分:可时用 gh issue create --parent <parent>,或用 gh issue edit <parent> --add-sub-issue <child>,仅文本父引用不够;发布后须验证父的 sub_issues 列表包含每个子项、每个子项 parent 端点指回父项,失败时报告具体阻塞原因。默认打上 ready-for-agent 标签。不要关闭或编辑父 issue 正文或状态,附加子 issue 是允许且必需的。
票据模板含:What to build(从用户视角描述的端到端行为,非逐层实现清单)、Blocked by、Status: ready-for-agent、验收标准、可选 Parent。避免具体文件路径与代码片段,除非原型中的片段比散文更精确地编码了决策。
限制:需预先配置追踪器;未提供具体价格、平台支持范围、性能数据或额外收费信息。