用途
to-issue 用于把一次已完成的 Beat 探索(/beat:explore)的结论写入问题追踪系统,形成可被编排器(orchestrator)或其他人接手的 issue。它的核心立场是:issue 正文就是规格说明,接手者看不到这段对话,因此没有写进正文的决定就等于没有做过。
主要能力
- 小/标准(small / standard)探索:新建一个 issue,或把探索起始的那个已有 issue 重写为规格格式。
- 过大(too-big)探索:创建 epic,并为每个 change 节点创建一个子 issue,用 sub-issue 配方挂到 epic 下,按 blocked_by 关系添加 blocked-by 边。
- 受阻(blocked)探索:登记为一个 issue,说明阻塞内容、阻塞类型(研究、原型、决策)、谁能解决以及问题本身。
- 放弃(drop):不创建任何 issue;若探索源自某个 issue,则评论一行原因并用关闭配方关闭。
- 按用户口头要求添加 dispatch 标签,并在添加后轮询状态(约每分钟一次、最多一分钟),等待 status/running 或 status/blocked。
使用方式
技能规定了一套固定流程:
- 读取 docs/agents/issue-tracker.md,获取追踪器与 CLI、Conventions 中的命令配方、Vocabulary 中的 assignee、dispatch 标签和五个 status 标签(status/ready、status/running、status/waiting、status/blocked、status/in-review),以及 Epics 规则。文件缺失则停止并提示运行 /beat:setup。
- 读取探索 ## Beat Handoff 块上方的 Exit: 行。没有 Exit 则停止,要求先完成 /beat:explore,不得自行推断。
- 撰写正文,分段标题依 beat/config.yaml 的 language 选择中文或英文标题,其中“已定案(不要重新讨论)”与“先不做”两个锁定标题必须逐字照抄,因为 /beat:design 按标题识别。
- 以常规提交格式写标题,正文写入仓库外的临时文件再通过 body-file 配方提交,禁止内联多行正文。
- too-big 情形需存在 beat/routes/<route>/route.md 与 status.yaml,否则停止;生成 epic 与子 issue 后,把 issue 号写回 status.yaml,运行 validate-beat.mjs 校验,仅提交路由文件。
- 回读每个 issue,核对锁定标题下的决定均为用户确认过的内容、标签与 assignee 符合 exit,并报告链接与待办事项。
- 以 Beat Handoff 块结束,给出 next 建议(小/标准指向 /beat:design,too-big 指向 /beat:explore 的首个前沿节点)。
适用场景
适用于探索已结束、需要把结论固化为可执行工单的时刻,例如用户说“开成 issue”“把结论开票”“交给 Rhythm”或“split this route into issues”。不适用于尚未探索的想法、未读过的他人 issue(应先用 /beat:explore)、创建规格产物(/beat:design)或撰写 PR 描述。
限制
- 缺少 docs/agents/issue-tracker.md 时无法运行,必须先用 /beat:setup 生成。
- 缺少 Exit 声明、too-big 却无路由目录时必须中止,不得猜测。
- dispatch 标签只能依据用户明确措辞添加,因为它会以他人账户启动无人值守运行。
- 不得使用配置文件中未列出的追踪器命令,不得写五个 status 之外的标签,不得把推断的决定放入锁定标题下。
- 超出本页资料的其他细节暂未提供。