From humaninloop
Authors technology-agnostic functional requirements in FR-XXX format with RFC 2119 keywords, edge cases, and measurable success criteria. For feature specs, API contracts, and stakeholder reviews.
How this skill is triggered — by the user, by Claude, or both
Slash command
/humaninloop:authoring-requirementsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Write technology-agnostic functional requirements, identify edge cases, and define measurable success criteria. Focus on WHAT the system does and WHY, never HOW it's implemented.
Write technology-agnostic functional requirements, identify edge cases, and define measurable success criteria. Focus on WHAT the system does and WHY, never HOW it's implemented.
humaninloop:patterns-api-contracts insteadhumaninloop:patterns-entity-modeling insteadhumaninloop:authoring-user-stories instead (this skill focuses on the underlying requirements)Write requirements using the FR-XXX format with RFC 2119 keywords:
## Functional Requirements
- **FR-001**: System MUST [specific capability]
- **FR-002**: Users MUST be able to [specific action]
- **FR-003**: System SHOULD [recommended behavior]
- **FR-004**: System MAY [optional capability]
| Keyword | Meaning |
|---|---|
| MUST | Absolute requirement; no exceptions |
| SHOULD | Recommended; valid exceptions may exist |
| MAY | Optional; implementation choice |
See RFC-2119-KEYWORDS.md for detailed usage guidance.
Good (what):
Bad (how):
Identify 3-5 boundary conditions that need explicit handling:
## Edge Cases
1. **System limits**: What happens at maximum capacity?
2. **Invalid input**: How are malformed requests handled?
3. **External failures**: What if dependencies are unavailable?
4. **Concurrent access**: How are race conditions prevented?
5. **Permission boundaries**: What happens with unauthorized access?
| Category | Examples |
|---|---|
| System limits | Max items, file size limits, rate limits |
| Invalid input | Empty fields, wrong types, boundary values |
| External failures | Network timeouts, service unavailable |
| Concurrency | Simultaneous edits, duplicate submissions |
| Permissions | Unauthorized access, expired tokens |
See EDGE-CASES.md for detailed patterns.
Define 3-5 measurable outcomes using SC-XXX format:
## Success Criteria
- **SC-001**: Users complete the task creation flow in under 2 minutes
- **SC-002**: 95% of users successfully create their first recurring task
- **SC-003**: Support tickets related to task scheduling decrease by 50%
Good:
Bad:
When the feature involves data, describe entities conceptually:
## Key Entities
### RecurringPattern
Represents the schedule for a repeating task.
**Attributes:**
- Frequency (how often: daily, weekly, monthly)
- Interval (every N occurrences)
- End condition (never, after N times, on date)
**Relationships:**
- Belongs to one Task
- Generates many TaskInstances
Validate requirement format with the included script:
python scripts/validate-requirements.py path/to/spec.md
The script checks:
Before finalizing, verify:
❌ "System MUST use PostgreSQL for storage" ✅ "System MUST persist data durably"
❌ "MUST implement using the Observer pattern" ✅ "System MUST notify relevant components when state changes"
❌ "System MUST be fast" or "MUST be user-friendly" ✅ "Users MUST complete the flow in under 2 minutes"
❌ "System will notify users" ✅ "System MUST notify users" (use MUST/SHOULD/MAY)
❌ "API latency MUST be under 100ms" ✅ "Users MUST perceive responses as instantaneous"
❌ "As a user, I want to see my balance" ✅ "System MUST display current balance to authenticated users" (FR) + separate user story
❌ Listing 20+ edge cases covering every hypothetical ✅ Focus on 3-5 high-impact boundary conditions
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-agent-framework --plugin deepeshbodh-human-in-loopTransforms vague feature ideas into clear, testable requirements using EARS format. Captures user stories, acceptance criteria, edge cases before design phase.
Creates clear, testable specifications from feature descriptions with user stories, acceptance criteria, and measurable success metrics.
Authors, updates, and validates atomic functional and non-functional requirements with traceability matrices, validation packs, and explicit human-in-the-loop approvals. Use for creating or reviewing requirements as source of truth.