From spec-driven-workflow
Generate or update requirements with EARS notation
npx claudepluginhub iButters/ClaudeCodePlugins --plugin spec-driven-workflow<feature-slug>/spec-requirementsGenerate comprehensive requirements with ultrathink enabled (Michi version)
/spec-requirementsGenerate comprehensive requirements with ultrathink enabled (Michi version)
You are generating structured requirements for the feature specification at .specs/$ARGUMENTS/
First, read the existing .specs/$ARGUMENTS/requirements.md file if it exists to understand the current state.
If this is a fresh spec, ask the user to describe what they want to build.
Generate comprehensive requirements following the EXACT Kiro format:
# Requirements Document
## Introduction
[2-3 sentences describing the feature, its purpose, and the problem it solves]
## Requirements
### Requirement 1: [Descriptive Title]
**Objective:** As a [user role], I want [feature/capability], so that [benefit/value]
#### Acceptance Criteria
1. WHEN [trigger event] THE [System] SHALL [expected behavior]
2. IF [condition] THEN THE [System] SHALL [expected behavior]
3. WHILE [ongoing state] THE [System] SHALL [continuous behavior]
4. WHERE [context/feature present] THE [System] SHALL [behavior]
5. IF [error/edge case] THEN THE [System] SHALL [error handling]
### Requirement 2: [Descriptive Title]
**Objective:** As a [user role], I want [feature/capability], so that [benefit/value]
#### Acceptance Criteria
1. WHEN ... THE [System] SHALL ...
[continue pattern]
You MUST use these exact patterns. No variations allowed:
| Pattern | Syntax | When to Use |
|---|---|---|
| Ubiquitous | THE [System] SHALL [behavior] | Always-true requirements |
| Event-Driven | WHEN [event] THE [System] SHALL [response] | Triggered behaviors |
| State-Driven | WHILE [state] THE [System] SHALL [behavior] | Ongoing conditions |
| Optional Feature | WHERE [feature] THE [System] SHALL [behavior] | Feature-dependent |
| Unwanted Behavior | IF [condition] THEN THE [System] SHALL [response] | Error handling, edge cases |
| Complex | WHILE [state] WHEN [event] THE [System] SHALL [response] | Multi-condition |
Write the complete requirements to .specs/$ARGUMENTS/requirements.md
After completion, instruct the user:
/spec-design $ARGUMENTS to proceed to design phaseBefore proceeding, check:
If .specs/ directory does not exist:
/spec-init <feature-name> first to create a new feature specification."If .specs/$ARGUMENTS/ does not exist:
/spec-init $ARGUMENTS to create it, or check the feature slug.".specs/If requirements.md is empty (only template):