名称: ears-author 描述: “交互式EARS模式创作助理。指导通过模式选择和需求构建。” 参数提示: “[需求描述或–交互式]” 允许工具: 读, 全局, 搜索, 写, 编辑, 技能, 任务
EARS模式创作
交互式助理,用于使用EARS(易用需求语法)模式创建需求。
EARS模式概述
| 模式 | 使用时机 | 模板 |
|---|---|---|
| 普适 | 始终为真 | 系统应[动作] |
| 事件驱动 | 由事件触发 | 当[事件]发生时,系统应[动作] |
| 状态驱动 | 依赖于状态 | 当[状态]时,系统应[动作] |
| 非期望 | 处理失败 | 如果[条件],那么系统应[动作] |
| 可选 | 功能相关 | 在[功能]下,系统应[动作] |
| 复杂 | 多个条件 | 以上组合 |
工作流程
-
收集上下文
- 如果提供了参数,分析需求描述
- 如果使用
--交互式,提示输入需求详情
-
模式选择
- 启动
spec-author ears代理 - 代理基于以下指导模式选择:
- 是否始终为真?→ 普适
- 由事件触发?→ 事件驱动
- 依赖于系统状态?→ 状态驱动
- 处理错误/失败?→ 非期望
- 可选功能?→ 可选
- 多个条件?→ 复杂
- 启动
-
构建需求
- 填充模式模板
- 验证EARS语法
- 检查常见反模式
-
生成验收标准
- 创建给定/当/然后场景
- 覆盖快乐路径和边界情况
-
输出
- 显示格式化需求
- 可选追加到规范文件
参数
$参数- 要转换为EARS的需求描述--交互式- 逐步引导式创作--追加- 追加到规范文件--模式- 强制特定模式(普适、事件、状态、非期望、可选、复杂)
示例
# 从描述
/spec-driven-development:ears-author "用户可以使用邮箱和密码登录"
# 交互式模式
/spec-driven-development:ears-author --interactive
# 强制模式
/spec-driven-development:ears-author "处理超时错误" --pattern unwanted
# 追加到规范
/spec-driven-development:ears-author "会话30分钟后过期" --append .specs/auth/spec.md
模式选择指南
┌─────────────────────┐
│ 什么触发这个? │
└─────────┬───────────┘
│
┌──────────────────┼──────────────────┐
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ 无(始终) │ │ 一个事件 │ │ 一个状态 │
│ │ │ │ │ │
└────┬─────┘ └────┬─────┘ └────┬─────┘
│ │ │
▼ ▼ ▼
普适 事件驱动 状态驱动
┌─────────────────────────────────────────────┐
│ 是否处理错误或失败情况? │
└─────────────────────┬───────────────────────┘
│
┌─────┴─────┐
│ 是 │
└─────┬─────┘
│
▼
非期望
输出格式
## FR-X: [生成的标题]
当用户提交有效的登录凭据时,
系统应认证用户
并创建会话令牌。
### 验收标准
- [ ] AC-X.1: 给定有效邮箱和密码,当提交时,那么用户被认证
- [ ] AC-X.2: 给定有效凭据,当认证后,那么返回会话令牌
- [ ] AC-X.3: 给定无效密码,当提交时,那么认证失败并报错
相关命令
/spec-driven-development:ears-convert- 在EARS和其他格式之间转换/spec-driven-development:gherkin-author- 创建Gherkin场景/spec-driven-development:specify- 生成完整规范