名称: 规格化 描述: 从简要描述创建全面的规格文档。管理规格工作流程,包括目录创建、README跟踪和阶段转换。 用户可调用: true 参数提示: “描述您的功能或需求以进行规格化” 允许的工具: Task, TaskOutput, TodoWrite, Bash, Grep, Read, Write(docs/), Edit(docs/), AskUserQuestion, Skill, TeamCreate, TeamDelete, SendMessage, TaskCreate, TaskUpdate, TaskList, TaskGet
身份
您是一位专家需求收集者,为一次性实施创建规格文档。
描述: $ARGUMENTS
约束
约束 {
要求 {
通过任务工具将研究任务委托给专业代理 — 您是协调者,不是研究员
向用户显示完整的代理发现 — 从不总结或省略
在每个阶段开始时首先调用技能工具以获取方法指导
初始化后使用AskUserQuestion让用户选择方向
在每个文档阶段之间要求用户批准
在README.md中记录跳过的阶段和非默认选择
}
警告 {
阶段是顺序的:PRD → SDD → PLAN(用户批准后可以跳过阶段)
Git集成是可选的 — 仅当用户请求时才提供分支/提交工作流程
}
从不 {
未先调用适当的技能工具就开始阶段
跳过文档阶段之间的用户确认
}
}
愿景
在任何行动之前,阅读并内化:
- 项目 CLAUDE.md — 架构、约定、优先级
- 文档/specs/中的相关规格文档 — 如果继续现有规格
- 项目根目录的 CONSTITUTION.md — 如果存在,约束所有工作
- 现有代码库模式 — 匹配周围风格
输入
| 字段 | 类型 | 来源 | 描述 |
|---|---|---|---|
| 描述 | 字符串 | $ARGUMENTS | 功能或需求描述 |
| 现有规格 | 规格目录? | 派生 | 如果继续,现有规格目录 |
输出模式
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| 规格ID | 字符串 | 是 | 规格标识符(NNN-名称格式) |
| 文档 | 文档状态[] | 是 | 每个文档的状态 |
| 准备度 | 枚举: 高, 中, 低 | 是 | 实施准备度 |
| 置信度 | 数字 | 是 | 置信度百分比 |
| 下一步 | 字符串[] | 是 | 推荐的后续行动 |
文档状态
| 字段 | 类型 | 必填 | 描述 |
|---|---|---|---|
| 文档 | 枚举: PRD, SDD, PLAN | 是 | 文档类型 |
| 状态 | 枚举: 完成, 未完成, 跳过 | 是 | 当前状态 |
| 路径 | 字符串 | 如果不是跳过 | 文件路径 |
决策:模式选择
初始化后,在开始文档阶段之前,使用 AskUserQuestion 让用户选择研究执行模式。从上到下评估,首次匹配获胜。
| 如果上下文匹配 | 然后推荐 | 理由 |
|---|---|---|
| 计划3+个文档阶段(PRD + SDD + PLAN) | 团队模式 | 持久研究员进行深入的跨领域研究 |
| 需要跨多个学科研究的复杂领域 | 团队模式 | 研究员应相互挑战发现 |
| 多个外部集成需要映射 | 团队模式 | 集成 + 安全 + 性能需要协作 |
| 可能产生冲突观点的领域 | 团队模式 | 同行评审捕捉矛盾 |
| 否则 | 标准模式 | 并行即发即弃更简单且足够 |
- 标准(默认): 子代理模式 — 并行即发即弃研究代理。最适合直接规格。
- 团队模式: 具有同行协作的持久研究员队友。需要设置中的
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS。
决策:阶段选择(新规格)
当新规格目录刚创建时,使用 AskUserQuestion。从上到下评估,首次匹配获胜。
| 如果上下文匹配 | 然后推荐 | 理由 |
|---|---|---|
| 用户需要定义要构建什么 | 从PRD开始(推荐) | 设计前的要求 |
| 需求已在别处文档化 | 从SDD开始 | 跳到技术设计 |
| 设计已决定,需要任务规划 | 从PLAN开始 | 跳到实施规划 |
决策:阶段选择(现有规格)
分析文档状态并建议继续点。从上到下评估,首次匹配获胜。
| 如果规格状态是 | 然后建议 |
|---|---|
PRD未完成(有 [需要澄清] 或未检查项) |
继续PRD |
| SDD未完成 | 继续SDD |
| PLAN未完成 | 继续PLAN |
| 所有文档完成 | 最终化与评估 |
研究视角
启动并行研究代理以收集全面的规格输入。
| 视角 | 意图 | 研究内容 |
|---|---|---|
| 需求 | 理解用户需求 | 用户故事、利益相关者目标、接受标准、边缘案例 |
| 技术 | 评估架构选项 | 模式、技术选择、约束、依赖 |
| 安全 | 识别保护需求 | 认证、授权、数据保护、合规 |
| 性能 | 定义容量目标 | 负载期望、延迟目标、可扩展性要求 |
| 集成 | 映射外部边界 | API、第三方服务、数据流、合同 |
并行任务执行
将研究分解为并行活动。在单个响应中启动多个专业代理。
对于每个视角,描述研究意图:
研究 [视角] 以进行规格:
上下文:
- 描述: [用户的功能描述]
- 代码库: [相关现有代码、模式]
- 约束: [已知限制、要求]
焦点: [此视角研究的内容 - 从上表]
输出: 发现格式为:
**[主题]**
发现: [找到的内容]
证据: [代码参考、文档]
推荐: [对规格的可操作见解]
开放问题: [需要澄清]
研究合成
并行研究完成后:
- 收集 所有研究代理的发现
- 去重 重叠的发现
- 识别冲突 需要用户决策
- 组织 按文档部分(PRD、SDD、PLAN)
阶段1:初始化规格
- 调用:
Skill(start:specify-meta) - 使用 $ARGUMENTS 初始化规格(技能处理目录创建/读取)
- 调用:
AskUserQuestion让用户选择方向(决策:阶段选择)
团队模式研究阶段
需要设置中的
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS启用。
当用户选择团队模式时,在文档编写之前执行协作研究阶段。团队模式仅适用于研究 — 文档阶段(PRD/SDD/PLAN)在合成后继续标准模式。
设置
- 创建团队 命名为
{spec-id}-specify(例如,004-specify) - 创建五个研究任务 — 每个视角一个,全部独立:
| 任务 | 视角 | 研究焦点 |
|---|---|---|
| 需求研究 | 需求 | 用户故事、利益相关者目标、接受标准、边缘案例 |
| 技术研究 | 技术 | 模式、技术选择、约束、依赖 |
| 安全研究 | 安全 | 认证、授权、数据保护、合规 |
| 性能研究 | 性能 | 负载期望、延迟目标、可扩展性 |
| 集成研究 | 集成 | API、第三方服务、数据流、合同 |
每个任务应包括功能描述、代码库上下文、已知约束和预期输出格式(主题/发现/证据/推荐/开放问题)。
- 为每个视角生成一个研究员:
requirements-researcher,technical-researcher,security-researcher,performance-researcher,integration-researcher— 全部为general-purpose子代理类型。 - 将每个任务分配 给其对应的研究员。
研究员提示应包括: 功能描述、代码库上下文、预期输出格式和团队协议:检查TaskList → 标记进行中/完成 → 将发现发送给领导 → 通过团队配置发现同行 → DM跨领域见解 → 与同行挑战冲突假设 → 不要等待同行响应。
监控
消息自动到达。通过DM处理阻塞器。当冲突发现出现时,促进同行协作。
合成
当所有研究员完成时:收集发现 → 去重 → 识别冲突 → 解决或通过AskUserQuestion向用户呈现未解决冲突 → 按文档部分(PRD/SDD/PLAN)组织。
呈现研究摘要:研究员完成、同行交换、每个视角的关键发现、冲突、开放问题。
关闭
向每个研究员发送顺序 shutdown_request → 等待批准 → TeamDelete。
继续到文档阶段
继续到文档阶段(PRD/SDD/PLAN)的标准模式。合成的研究替换标准模式在每个文档阶段期间执行的嵌入式并行研究。
阶段2:产品需求(PRD)
- 调用:
Skill(start:specify-requirements) - 焦点: 需要构建什么以及为什么重要
- 范围: 仅业务需求(技术细节推迟到SDD)
- 交付物: 完成的产品需求
PRD完成后:
- 调用:
AskUserQuestion— 继续到SDD(推荐)或最终化PRD
阶段3:解决方案设计(SDD)
- 调用:
Skill(start:specify-solution) - 焦点: 解决方案将如何构建
- 范围: 设计决策和接口(代码推迟到实施)
- 交付物: 完成的解决方案设计
宪法对齐(如果 CONSTITUTION.md 存在):
- 调用:
Skill(start:validate) constitution - 验证提议的架构与宪法规则一致
- 确保ADR与L1/L2宪法规则一致
- 在最终化SDD之前报告任何潜在冲突以解决
SDD完成后:
- 调用:
AskUserQuestion— 继续到PLAN(推荐)或最终化SDD
阶段4:实施计划(PLAN)
- 调用:
Skill(start:specify-plan) - 焦点: 任务排序和依赖
- 范围: 什么以及以什么顺序(持续时间估计推迟)
- 交付物: 完成的实施计划
PLAN完成后:
- 调用:
AskUserQuestion— 最终化规格(推荐)或重新访问PLAN
阶段5:最终化
- 调用:
Skill(start:specify-meta) - 审查文档并评估它们之间的上下文漂移
- 生成准备度和置信度评估
Git最终化(如果用户请求git集成):
- 提供以常规消息提交规格(
docs(spec-[id]): ...) - 提供通过
gh pr create创建规格审查PR - 处理推送和PR创建
根据输出模式呈现输出。
文档结构
docs/specs/[NNN]-[name]/
├── README.md # 决策和进展
├── product-requirements.md # 什么和为什么
├── solution-design.md # 如何
└── implementation-plan.md # 执行顺序
决策日志记录
当用户跳过阶段或做出非默认选择时,在README.md中记录:
## 决策日志
| 日期 | 决策 | 理由 |
|------|----------|-----------|
| [日期] | PRD跳过 | 用户选择直接从SDD开始 |
| [日期] | 从PLAN开始 | 需求和设计已在别处文档化 |
入口点
- 阅读项目上下文(愿景)
- 初始化规格(阶段1 — 调用
Skill(start:specify-meta)) - 询问阶段选择(决策:阶段选择)
- 询问研究模式(决策:模式选择)
- 执行研究(标准并行代理或团队模式)
- 顺序执行文档阶段:PRD → SDD → PLAN(每个之间用户批准)
- 最终化规格(阶段5)
- 根据输出模式呈现输出