mcpField
T
to-spec

to-spec

github.com/tt-a1i开发192132 次安装2 天前更新
代码仓库

关于 to-spec

to-spec 是一项开发技能,可将对话上下文和代码库理解整理为功能规格,并发布到问题跟踪系统。它会确认测试边界,并为已就绪的工作选择实施或拆分路径。

主要功能

  1. 01综合上下文编写功能规格
  2. 02探索代码并遵循领域决策
  3. 03与用户确认测试边界
  4. 04添加分类标签并发布规格
  5. 05选择实施交接路径

适用场景

  1. 01根据现有讨论编写功能规格
  2. 02实施前定义测试边界
  3. 03向问题跟踪系统发布就绪事项
  4. 04拆分需要进一步规划的工作

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tt-a1i/matt-skills-with-to-goal --skill to-spec

安装后在 Claude Code 中输入/to-spec确认已加载。

附带文件agents/openai.yaml

详细介绍

此技能会利用当前对话上下文和对代码库的理解来编写规格说明。不要采访用户;只综合你已掌握的信息。

问题跟踪系统和分类标签词汇表应该已提供给你。如果没有,请告知用户运行 /setup-matt-pocock-skills。

流程

  1. 如果你还不了解代码库的当前状态,请探索仓库。编写规格说明时,始终使用项目的领域词汇表,并遵循你要修改的相关区域中的 ADR。

  2. 勾勒出你将在哪些边界测试该功能。优先使用现有边界,并选择尽可能高层的边界。如果需要新增边界,请在可行的最高层提出。整个代码库中的边界越少越好——默认每份规格说明一个边界,除非确实存在外部边界,迫使你增加边界。

向用户确认这些边界是否符合他们的预期。

  1. 使用下方模板编写规格说明,然后将其发布到项目的问题跟踪系统。应用 ready-for-agent 分类标签——无需进行额外分类。

问题陈述

从用户的角度描述他们遇到的问题。

解决方案

从用户的角度描述问题的解决方案。

用户故事

一份内容详尽、按编号排列的用户故事列表。每条用户故事均应采用以下格式:

  1. 作为一名<角色>,我希望获得<功能>,从而<收益>
1. 作为一名手机银行客户,我希望查看我的账户余额,从而更好地了解自己的消费情况

这份用户故事列表应极其详尽,涵盖该功能的各个方面。

实现决策

列出已作出的实现决策。包括以下内容:

  • 将要构建或修改的模块
  • 将要修改的模块接口
  • 开发者提供的技术说明
  • 架构决策
  • 架构变更
  • API 契约
  • 具体交互

不要包含具体文件路径或代码片段,因为它们很快就可能过时。

例外:如果原型生成的代码片段比文字更精确地表达了某项决策(例如状态机、reducer、架构或类型形状),请将其内联到相关决策中,并简要说明它来自原型。只保留体现决策的关键部分,不要包含可运行的演示代码。

测试决策

列出已作出的测试决策。包括:

  • 优秀测试的特征(只测试外部行为,不测试实现细节)
  • 将要测试的模块
  • 测试的先例(即代码库中类似的测试)

范围之外

描述不属于此规格说明范围的事项。

补充说明

有关该功能的其他补充说明。

  1. 发布后选择执行路径:
  • 如果完整规格说明适合在一个实现上下文中完成,并且当前对话足够连贯、可以分叉,则将其标记为 fork → /spec-executor。
  • 如果需要分成多个示踪弹切片、并行工作、跨 Agent 交接或压缩上下文,则改为标记为 /to-tickets。不要假装大型规格说明可以直接分叉执行。
  • 如果产品决策或测试边界仍未确定,则输出 SPEC NOT READY,并指出缺少的决策。不要启动实现。
  1. 准备就绪时,以以下精简启动块结尾,以便分叉出的线程能找到最终契约,而无需在多个草稿中猜测:
SPEC READY

- Status: ready for implementation
- Source: <published spec URL or path>
- Repository: <implementation repository>
- Baseline: <current commit, branch, or explicit source baseline>
- Test seam: <highest agreed behavior seam>
- Non-goals: <explicit exclusions>
- External authority: <commit, push, review, deploy, tracker, data, and real-service permissions; default ungranted>
- Next route: fork + /spec-executor | /to-tickets

启动块是已批准规格说明的索引,而非其替代品。不要在启动块中重复完整规格说明。

评论

支持 Markdown