名称: spec-creation 描述: 带有模式参考、验收标准和演示脚本的规格创建。在创建实施规格、定义验收标准或分解用户故事时使用。
Spec创建技能
目的
通过清晰的验收标准、执行代理的模式参考和可测试的成功验证命令来指导规格创建。
适用时机
在以下情况下调用此技能:
- 创建实施规格
- 分解用户故事
- 定义验收标准
- 为执行添加模式参考
- 创建验证用的演示脚本
- 将业务需求转换为技术规格
停止线条件
禁止模式
# 禁止:缺少验收标准
## 实施
只管做这件事。
<!-- 未定义可测试的结果 -->
# 禁止:无模式参考
## 技术方法
按您喜欢的方式构建。
<!-- 执行代理需要模式指针 -->
# 禁止:无成功验证
## 完成标准
看起来对审阅者不错。
<!-- 无命令验证完成 -->
正确模式
# 正确:清晰的验收标准
## 验收标准
- [ ] 用户可以点击按钮 → 模态框出现
- [ ] 模态框显示空字段的验证错误
- [ ] 成功提交显示成功提示
# 正确:执行模式参考
## 模式参考
- **UI模式**: `docs/patterns/ui/modal-form.md`
- **API模式**: `docs/patterns/api/crud-endpoint.md`
- **RLS模式**: `docs/patterns/security/rls-user-data.md`
# 正确:成功验证命令
## 成功验证
```bash
# 运行这些命令以验证实施
yarn test:unit --grep "ModalForm"
curl -X POST http://localhost:3000/api/endpoint -d '{"test": true}'
```
## 规格模板(强制)
每个规格必须包括:
````markdown
# SPEC-{{TICKET_PREFIX}}-{编号}: {功能名称}
## 摘要
{一段描述功能的文字}
## 用户故事
作为一名[用户类型],我想要[目标]以便[好处]。
## 验收标准
- [ ] {可测试的标准1}
- [ ] {可测试的标准2}
- [ ] {可测试的标准3}
## 模式参考
- **UI**: `docs/patterns/ui/{模式}.md`
- **API**: `docs/patterns/api/{模式}.md`
- **数据库**: `docs/patterns/database/{模式}.md`
- **安全**: 遵循`docs/database/RLS_IMPLEMENTATION_GUIDE.md`中的RLS模式
## 成功验证命令
```bash
# 运行此命令以验证功能是否正常工作
{验证命令}
演示脚本
- 导航到{页面}
- 点击{按钮}
- 观察{预期行为}
- 验证{成功指示器}
逻辑提交
feat(范围): 实施数据模型 [{{TICKET_PREFIX}}-{编号}]feat(范围): 添加API端点 [{{TICKET_PREFIX}}-{编号}]feat(范围): 创建UI组件 [{{TICKET_PREFIX}}-{编号}]test(范围): 添加单元测试 [{{TICKET_PREFIX}}-{编号}]
## 验收标准模式
### 用户操作标准
```markdown
- [ ] 用户可以{操作} → {结果}
- [ ] 当用户{触发}时,系统{响应}
- [ ] 用户在{操作}后收到{反馈}
```
### 数据标准
```markdown
- [ ] 数据在{操作}后持久化
- [ ] 用户只能看到自己的{数据类型}
- [ ] {字段}验证{约束}
```
### 错误标准
```markdown
- [ ] 无效输入显示{错误消息}
- [ ] 网络故障显示重试选项
- [ ] 未授权访问返回401
```
## 规格的模式发现
在编写任何规格之前:
```bash
# 查找现有模式
ls docs/patterns/
# 搜索类似实施
grep -r "类似功能" app/ lib/
# 检查现有规格的格式
ls specs/
cat specs/SPEC-{{TICKET_PREFIX}}-XXX-example.md
```
## 规格质量检查清单
提交规格前:
- [ ] 所有验收标准都是可测试的(可验证通过/失败)
- [ ] 模式参考指向现有模式
- [ ] 成功验证命令是可运行的
- [ ] 演示脚本是逐步可复现的
- [ ] 逻辑提交遵循SAFe格式
- [ ] 引用Linear票证
## 输出位置
| 输出类型 | 位置 |
| ---------- | -------------------------------------------------- |
| 实施规格 | `specs/SPEC-{{TICKET_PREFIX}}-{编号}-{描述}.md` |
| 需求 | `docs/agent-outputs/requirements/{{TICKET_PREFIX}}-{编号}-*.md` |
| ADRs | `docs/adr/ADR-{编号}-{描述}.md` |
## Linear的证据
规格批准后:
```markdown
**BSA规格证据**
**规格**: specs/SPEC-{{TICKET_PREFIX}}-{编号}-{描述}.md
**状态**: 由[审阅者]批准
**交付物**:
- [x] 定义验收标准
- [x] 添加模式参考
- [x] 创建演示脚本
- [x] 准备实施
```
## 权威参考
- **规格模板**: `docs/archive/specs/spec_template.md`
- **模式库**: `docs/patterns/README.md`
- **规划指南**: `docs/team/PLANNING-AGENT-META-PROMPT.md`
- **SAFe工作流**: `CONTRIBUTING.md`