@comfanion/workflow 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +185 -0
- package/bin/cli.js +406 -0
- package/package.json +50 -0
- package/src/build-info.json +16 -0
- package/src/opencode/ARCHITECTURE.md +255 -0
- package/src/opencode/FLOW.yaml +900 -0
- package/src/opencode/agents/analyst.md +141 -0
- package/src/opencode/agents/architect.md +177 -0
- package/src/opencode/agents/change-manager.md +263 -0
- package/src/opencode/agents/dev.md +171 -0
- package/src/opencode/agents/module-docs.md +628 -0
- package/src/opencode/agents/pm.md +157 -0
- package/src/opencode/agents/researcher.md +254 -0
- package/src/opencode/agents/sm.md +184 -0
- package/src/opencode/agents/workflow-orchestrator.md +249 -0
- package/src/opencode/checklists/architecture-checklist.md +166 -0
- package/src/opencode/checklists/code-review-checklist.md +151 -0
- package/src/opencode/checklists/prd-checklist.md +140 -0
- package/src/opencode/checklists/requirements-checklist.md +86 -0
- package/src/opencode/checklists/story-checklist.md +137 -0
- package/src/opencode/commands/architecture.md +68 -0
- package/src/opencode/commands/archive.md +146 -0
- package/src/opencode/commands/change.md +169 -0
- package/src/opencode/commands/clarify.md +132 -0
- package/src/opencode/commands/code-review.md +96 -0
- package/src/opencode/commands/coding-standards.md +102 -0
- package/src/opencode/commands/dev-story.md +80 -0
- package/src/opencode/commands/diagram.md +152 -0
- package/src/opencode/commands/epics.md +52 -0
- package/src/opencode/commands/help.md +139 -0
- package/src/opencode/commands/jira-sync.md +58 -0
- package/src/opencode/commands/module-docs.md +158 -0
- package/src/opencode/commands/prd.md +63 -0
- package/src/opencode/commands/quick.md +166 -0
- package/src/opencode/commands/requirements.md +49 -0
- package/src/opencode/commands/research.md +113 -0
- package/src/opencode/commands/sprint-plan.md +59 -0
- package/src/opencode/commands/stories.md +61 -0
- package/src/opencode/commands/validate.md +84 -0
- package/src/opencode/commands/workflow-status.md +150 -0
- package/src/opencode/config.yaml +223 -0
- package/src/opencode/opencode.json +36 -0
- package/src/opencode/skills/acceptance-criteria/SKILL.md +212 -0
- package/src/opencode/skills/adr-writing/SKILL.md +241 -0
- package/src/opencode/skills/architecture-design/SKILL.md +183 -0
- package/src/opencode/skills/architecture-validation/SKILL.md +199 -0
- package/src/opencode/skills/archiving/SKILL.md +191 -0
- package/src/opencode/skills/changelog/SKILL.md +280 -0
- package/src/opencode/skills/code-review/SKILL.md +193 -0
- package/src/opencode/skills/coding-standards/SKILL.md +430 -0
- package/src/opencode/skills/diagram-creation/SKILL.md +273 -0
- package/src/opencode/skills/doc-todo/SKILL.md +325 -0
- package/src/opencode/skills/epic-writing/SKILL.md +291 -0
- package/src/opencode/skills/jira-integration/SKILL.md +560 -0
- package/src/opencode/skills/methodologies/SKILL.md +376 -0
- package/src/opencode/skills/module-documentation/SKILL.md +214 -0
- package/src/opencode/skills/prd-validation/SKILL.md +164 -0
- package/src/opencode/skills/prd-writing/SKILL.md +104 -0
- package/src/opencode/skills/requirements-gathering/SKILL.md +132 -0
- package/src/opencode/skills/requirements-validation/SKILL.md +141 -0
- package/src/opencode/skills/research-methodology/SKILL.md +140 -0
- package/src/opencode/skills/sprint-planning/SKILL.md +217 -0
- package/src/opencode/skills/story-writing/SKILL.md +574 -0
- package/src/opencode/skills/test-design/SKILL.md +313 -0
- package/src/opencode/skills/translation/SKILL.md +411 -0
- package/src/opencode/templates/CHANGELOG.md +82 -0
- package/src/opencode/templates/adr-template.md +115 -0
- package/src/opencode/templates/architecture-template.md +362 -0
- package/src/opencode/templates/change-proposal-template.md +186 -0
- package/src/opencode/templates/epic-template.md +151 -0
- package/src/opencode/templates/git-workflow-template.md +384 -0
- package/src/opencode/templates/integration-tests-template.md +265 -0
- package/src/opencode/templates/jira-cache-template.yaml +103 -0
- package/src/opencode/templates/module-index-template.md +139 -0
- package/src/opencode/templates/module-test-cases-template.md +230 -0
- package/src/opencode/templates/prd-acceptance-criteria-template.md +124 -0
- package/src/opencode/templates/prd-template.md +479 -0
- package/src/opencode/templates/requirements-template.md +132 -0
- package/src/opencode/templates/sprint-status-template.yaml +84 -0
- package/src/opencode/templates/story-template.md +437 -0
- package/src/opencode/templates/testing-standards-template.md +359 -0
- package/src/opencode/workflows/dev-story/instructions.md +529 -0
- package/src/repo-structure/.gitattributes +64 -0
- package/src/repo-structure/CONTRIBUTING.md +182 -0
- package/src/repo-structure/README.md +77 -0
- package/src/repo-structure/docs/README.md +62 -0
- package/src/repo-structure/docs/api/README.md +43 -0
- package/src/repo-structure/docs/architecture/README.md +36 -0
- package/src/repo-structure/docs/architecture/adr/README.md +53 -0
- package/src/repo-structure/docs/architecture/diagrams/README.md +59 -0
- package/src/repo-structure/docs/coding-standards/README.md +52 -0
- package/src/repo-structure/docs/confluence/README.md +43 -0
- package/src/repo-structure/docs/requirements/README.md +28 -0
- package/src/repo-structure/docs/sprint-artifacts/README.md +76 -0
- package/src/repo-structure/docs/sprint-artifacts/backlog/README.md +24 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prd-validation
|
|
3
|
+
description: How to validate PRD for completeness, requirements coverage, and QA artifact presence
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
metadata:
|
|
7
|
+
domain: quality-assurance
|
|
8
|
+
artifacts: docs/validation/prd-validation-*.md
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# PRD Validation Skill
|
|
12
|
+
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
Use this skill when you need to:
|
|
16
|
+
- Validate PRD before creating architecture
|
|
17
|
+
- Ensure all requirements are covered
|
|
18
|
+
- Check QA artifact (prd-acceptance-criteria.md) exists
|
|
19
|
+
|
|
20
|
+
## Prerequisites
|
|
21
|
+
|
|
22
|
+
- Requirements validation must PASS first
|
|
23
|
+
- File: `docs/requirements/requirements.md`
|
|
24
|
+
|
|
25
|
+
## Validation Checklist
|
|
26
|
+
|
|
27
|
+
### Structure Checks
|
|
28
|
+
|
|
29
|
+
- [ ] File exists at `docs/prd.md`
|
|
30
|
+
- [ ] Executive Summary section exists
|
|
31
|
+
- [ ] Project Classification section exists
|
|
32
|
+
- [ ] Success Criteria section exists
|
|
33
|
+
- [ ] Product Scope section exists (MVP/Growth/Vision)
|
|
34
|
+
- [ ] Functional Requirements section exists
|
|
35
|
+
- [ ] Non-Functional Requirements section exists
|
|
36
|
+
- [ ] Dependencies section exists
|
|
37
|
+
- [ ] Risks section exists
|
|
38
|
+
|
|
39
|
+
### Requirements Coverage
|
|
40
|
+
|
|
41
|
+
- [ ] All FRs from requirements.md are addressed
|
|
42
|
+
- [ ] All NFRs from requirements.md are addressed
|
|
43
|
+
- [ ] No orphan requirements (in PRD but not in requirements.md)
|
|
44
|
+
- [ ] FR IDs match between documents
|
|
45
|
+
|
|
46
|
+
### Quality Checks
|
|
47
|
+
|
|
48
|
+
- [ ] Executive summary explains the "why"
|
|
49
|
+
- [ ] Success criteria are measurable
|
|
50
|
+
- [ ] Scope boundaries are clear
|
|
51
|
+
- [ ] MVP is minimal but viable
|
|
52
|
+
- [ ] Growth features depend on MVP
|
|
53
|
+
- [ ] Priorities are consistent with requirements.md
|
|
54
|
+
|
|
55
|
+
### QA Artifact Check (MANDATORY)
|
|
56
|
+
|
|
57
|
+
- [ ] File exists: `docs/prd-acceptance-criteria.md`
|
|
58
|
+
- [ ] All FRs have acceptance criteria defined
|
|
59
|
+
- [ ] AC uses Given/When/Then format
|
|
60
|
+
- [ ] Coverage matrix is complete
|
|
61
|
+
|
|
62
|
+
### Traceability Check
|
|
63
|
+
|
|
64
|
+
For each FR in PRD:
|
|
65
|
+
- [ ] Maps to requirement in requirements.md
|
|
66
|
+
- [ ] Has clear scope (MVP/Growth/Vision)
|
|
67
|
+
- [ ] Has priority (P0/P1/P2)
|
|
68
|
+
|
|
69
|
+
## Validation Report Format
|
|
70
|
+
|
|
71
|
+
```markdown
|
|
72
|
+
# PRD Validation Report
|
|
73
|
+
|
|
74
|
+
**Date:** YYYY-MM-DD
|
|
75
|
+
**Status:** PASS | WARN | FAIL
|
|
76
|
+
**File:** docs/prd.md
|
|
77
|
+
|
|
78
|
+
## Prerequisites
|
|
79
|
+
|
|
80
|
+
| Prerequisite | Status |
|
|
81
|
+
|--------------|--------|
|
|
82
|
+
| requirements.md validated | ✅ PASS |
|
|
83
|
+
|
|
84
|
+
## Summary
|
|
85
|
+
|
|
86
|
+
| Check Type | Total | Passed | Warnings | Failed |
|
|
87
|
+
|------------|-------|--------|----------|--------|
|
|
88
|
+
| Structure | 9 | 9 | 0 | 0 |
|
|
89
|
+
| Coverage | 3 | 3 | 0 | 0 |
|
|
90
|
+
| Quality | 6 | 5 | 1 | 0 |
|
|
91
|
+
| QA Artifact | 4 | 4 | 0 | 0 |
|
|
92
|
+
|
|
93
|
+
## QA Artifact Status
|
|
94
|
+
|
|
95
|
+
| Artifact | Status |
|
|
96
|
+
|----------|--------|
|
|
97
|
+
| `docs/prd-acceptance-criteria.md` | ✅ Present |
|
|
98
|
+
| FR Coverage | 100% (45/45) |
|
|
99
|
+
| AC Format | Given/When/Then ✅ |
|
|
100
|
+
|
|
101
|
+
## Requirements Coverage
|
|
102
|
+
|
|
103
|
+
| Source | Total | Covered | Missing |
|
|
104
|
+
|--------|-------|---------|---------|
|
|
105
|
+
| Functional (FR) | 45 | 45 | 0 |
|
|
106
|
+
| Non-Functional (NFR) | 12 | 12 | 0 |
|
|
107
|
+
|
|
108
|
+
## Passed Checks
|
|
109
|
+
|
|
110
|
+
- [x] All FRs from requirements.md covered
|
|
111
|
+
- [x] All NFRs from requirements.md covered
|
|
112
|
+
- [x] QA artifact present
|
|
113
|
+
|
|
114
|
+
## Warnings
|
|
115
|
+
|
|
116
|
+
- [ ] Success criteria for Growth phase could be more specific
|
|
117
|
+
|
|
118
|
+
## Failures
|
|
119
|
+
|
|
120
|
+
(None if PASS)
|
|
121
|
+
|
|
122
|
+
## Recommendations
|
|
123
|
+
|
|
124
|
+
1. Add specific metrics to Growth success criteria
|
|
125
|
+
|
|
126
|
+
## Next Steps
|
|
127
|
+
|
|
128
|
+
After fixing issues:
|
|
129
|
+
- Re-run `/validate prd`
|
|
130
|
+
- If PASS, proceed to `/architecture`
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## If QA Artifact Missing
|
|
134
|
+
|
|
135
|
+
```markdown
|
|
136
|
+
## FAILURE: QA Artifact Missing
|
|
137
|
+
|
|
138
|
+
**Required:** `docs/prd-acceptance-criteria.md`
|
|
139
|
+
**Status:** ❌ NOT FOUND
|
|
140
|
+
|
|
141
|
+
### Action Required
|
|
142
|
+
|
|
143
|
+
Create the QA artifact using template:
|
|
144
|
+
`@.opencode/templates/prd-acceptance-criteria-template.md`
|
|
145
|
+
|
|
146
|
+
This artifact is MANDATORY before proceeding to architecture.
|
|
147
|
+
|
|
148
|
+
### What It Should Contain
|
|
149
|
+
|
|
150
|
+
1. Acceptance criteria for ALL FRs
|
|
151
|
+
2. Given/When/Then format
|
|
152
|
+
3. Edge cases and negative tests
|
|
153
|
+
4. NFR test methods
|
|
154
|
+
5. Coverage matrix
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Output
|
|
158
|
+
|
|
159
|
+
Save to: `docs/validation/prd-validation-YYYY-MM-DD.md`
|
|
160
|
+
|
|
161
|
+
## Related Skills
|
|
162
|
+
|
|
163
|
+
- `prd-writing` - For fixing PRD issues
|
|
164
|
+
- `acceptance-criteria` - For writing AC in QA artifact
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prd-writing
|
|
3
|
+
description: How to write a Product Requirements Document with proper structure, sections, and traceability
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
metadata:
|
|
7
|
+
domain: product-management
|
|
8
|
+
artifacts: docs/prd.md
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# PRD Writing Skill
|
|
12
|
+
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
Use this skill when you need to:
|
|
16
|
+
- Create a new PRD from requirements
|
|
17
|
+
- Structure product requirements into a coherent document
|
|
18
|
+
- Define scope boundaries (MVP/Growth/Vision)
|
|
19
|
+
|
|
20
|
+
## Template
|
|
21
|
+
|
|
22
|
+
Use the template at: `@.opencode/templates/prd-template.md`
|
|
23
|
+
|
|
24
|
+
## PRD Structure
|
|
25
|
+
|
|
26
|
+
### Required Sections
|
|
27
|
+
|
|
28
|
+
1. **Executive Summary** (2-3 paragraphs)
|
|
29
|
+
- What is being built
|
|
30
|
+
- Why it's being built (business value)
|
|
31
|
+
- Unique value proposition
|
|
32
|
+
|
|
33
|
+
2. **Project Classification**
|
|
34
|
+
- Technical Type
|
|
35
|
+
- Domain
|
|
36
|
+
- Complexity
|
|
37
|
+
- Architecture style
|
|
38
|
+
|
|
39
|
+
3. **Success Criteria** (measurable!)
|
|
40
|
+
- MVP Success metrics
|
|
41
|
+
- Growth Success metrics
|
|
42
|
+
|
|
43
|
+
4. **Product Scope**
|
|
44
|
+
- MVP features (P0)
|
|
45
|
+
- Growth features (P1)
|
|
46
|
+
- Vision features (P2)
|
|
47
|
+
|
|
48
|
+
5. **Functional Requirements**
|
|
49
|
+
- Organized by domain
|
|
50
|
+
- Each FR has: ID, Priority, Scope, Description, AC
|
|
51
|
+
|
|
52
|
+
6. **Non-Functional Requirements**
|
|
53
|
+
- Performance (with metrics)
|
|
54
|
+
- Security
|
|
55
|
+
- Scalability
|
|
56
|
+
- Reliability
|
|
57
|
+
|
|
58
|
+
7. **Dependencies & Integrations**
|
|
59
|
+
8. **Risks & Mitigations**
|
|
60
|
+
9. **Constraints**
|
|
61
|
+
10. **Open Questions**
|
|
62
|
+
|
|
63
|
+
## Writing Guidelines
|
|
64
|
+
|
|
65
|
+
### Requirement IDs
|
|
66
|
+
- Functional: `FR-001`, `FR-002`, ...
|
|
67
|
+
- Non-Functional: `NFR-001`, `NFR-002`, ...
|
|
68
|
+
|
|
69
|
+
### Priority Levels
|
|
70
|
+
- **P0**: Must have for MVP
|
|
71
|
+
- **P1**: Should have for growth
|
|
72
|
+
- **P2**: Nice to have for vision
|
|
73
|
+
|
|
74
|
+
### Scope Classification
|
|
75
|
+
- **MVP**: Minimum viable product (v1.0)
|
|
76
|
+
- **Growth**: Post-MVP enhancements (v1.x)
|
|
77
|
+
- **Vision**: Future roadmap (v2.0+)
|
|
78
|
+
|
|
79
|
+
### Language Rules
|
|
80
|
+
- Use "must", "shall", "will" for mandatory items
|
|
81
|
+
- Use "should", "may" for optional items
|
|
82
|
+
- Avoid ambiguous terms without metrics
|
|
83
|
+
|
|
84
|
+
## Validation Checklist
|
|
85
|
+
|
|
86
|
+
Before completing PRD:
|
|
87
|
+
- [ ] Executive summary explains the "why"
|
|
88
|
+
- [ ] All FRs from requirements.md are addressed
|
|
89
|
+
- [ ] All NFRs from requirements.md are addressed
|
|
90
|
+
- [ ] Success criteria are measurable
|
|
91
|
+
- [ ] Scope boundaries are clear
|
|
92
|
+
- [ ] No conflicting requirements
|
|
93
|
+
- [ ] Risks are documented with mitigations
|
|
94
|
+
- [ ] Each FR has acceptance criteria
|
|
95
|
+
|
|
96
|
+
## Output
|
|
97
|
+
|
|
98
|
+
Save to: `docs/prd.md`
|
|
99
|
+
|
|
100
|
+
## Related Skills
|
|
101
|
+
|
|
102
|
+
- `acceptance-criteria` - For writing testable AC
|
|
103
|
+
- `requirements-gathering` - For source requirements
|
|
104
|
+
- `prd-validation` - For validating the PRD
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: requirements-gathering
|
|
3
|
+
description: How to conduct stakeholder interviews and extract functional/non-functional requirements
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
metadata:
|
|
7
|
+
domain: business-analysis
|
|
8
|
+
artifacts: docs/requirements/requirements.md
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Requirements Gathering Skill
|
|
12
|
+
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
Use this skill when you need to:
|
|
16
|
+
- Conduct stakeholder interviews
|
|
17
|
+
- Extract functional requirements (FR)
|
|
18
|
+
- Extract non-functional requirements (NFR)
|
|
19
|
+
- Discover hidden requirements through questions
|
|
20
|
+
|
|
21
|
+
## Interview Technique
|
|
22
|
+
|
|
23
|
+
### Phase 1: Context Discovery
|
|
24
|
+
|
|
25
|
+
Ask these questions first:
|
|
26
|
+
1. What problem are we solving?
|
|
27
|
+
2. Who are the users/stakeholders?
|
|
28
|
+
3. What existing systems does this integrate with?
|
|
29
|
+
4. What's the timeline and budget?
|
|
30
|
+
5. What happens if we don't build this?
|
|
31
|
+
|
|
32
|
+
### Phase 2: Functional Discovery
|
|
33
|
+
|
|
34
|
+
For each user type:
|
|
35
|
+
1. What actions should they be able to perform?
|
|
36
|
+
2. What are the main workflows?
|
|
37
|
+
3. What data do they need to see/edit?
|
|
38
|
+
4. What are the edge cases?
|
|
39
|
+
5. What errors might occur?
|
|
40
|
+
|
|
41
|
+
### Phase 3: Quality Attributes (NFR)
|
|
42
|
+
|
|
43
|
+
Ask about:
|
|
44
|
+
- **Performance**: Expected response times? Concurrent users?
|
|
45
|
+
- **Security**: Authentication? Data sensitivity? Compliance?
|
|
46
|
+
- **Scalability**: Data volume growth? User growth?
|
|
47
|
+
- **Reliability**: Uptime requirements? Recovery time?
|
|
48
|
+
- **Usability**: User expertise level? Accessibility?
|
|
49
|
+
|
|
50
|
+
### Phase 4: Constraints & Assumptions
|
|
51
|
+
|
|
52
|
+
Document:
|
|
53
|
+
- Technical constraints (existing systems, languages, platforms)
|
|
54
|
+
- Business constraints (budget, timeline, regulations)
|
|
55
|
+
- Assumptions being made
|
|
56
|
+
|
|
57
|
+
## Output Format
|
|
58
|
+
|
|
59
|
+
### Functional Requirements
|
|
60
|
+
|
|
61
|
+
```markdown
|
|
62
|
+
### FR-001: [Requirement Title]
|
|
63
|
+
|
|
64
|
+
**Priority:** P0 | P1 | P2
|
|
65
|
+
**Source:** [Stakeholder / Document / Interview]
|
|
66
|
+
**Category:** [Domain area]
|
|
67
|
+
|
|
68
|
+
**Description:**
|
|
69
|
+
[Clear, unambiguous description of what the system must do]
|
|
70
|
+
|
|
71
|
+
**Acceptance Criteria:**
|
|
72
|
+
- [ ] [Testable criterion 1]
|
|
73
|
+
- [ ] [Testable criterion 2]
|
|
74
|
+
|
|
75
|
+
**Dependencies:** [FR-XXX, NFR-XXX]
|
|
76
|
+
**Notes:** [Additional context]
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Non-Functional Requirements
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+
### NFR-001: [Requirement Title]
|
|
83
|
+
|
|
84
|
+
**Priority:** P0 | P1 | P2
|
|
85
|
+
**Category:** Performance | Security | Scalability | Reliability | Usability
|
|
86
|
+
|
|
87
|
+
**Requirement:**
|
|
88
|
+
[Specific, measurable requirement]
|
|
89
|
+
|
|
90
|
+
**Metric:** [How to measure]
|
|
91
|
+
**Target:** [Specific target value]
|
|
92
|
+
|
|
93
|
+
**Verification Method:** [How to verify compliance]
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Requirement Quality Checklist
|
|
97
|
+
|
|
98
|
+
Each requirement must be:
|
|
99
|
+
- [ ] **Specific** - Clear, unambiguous
|
|
100
|
+
- [ ] **Measurable** - Has acceptance criteria or metrics
|
|
101
|
+
- [ ] **Achievable** - Technically feasible
|
|
102
|
+
- [ ] **Relevant** - Tied to business value
|
|
103
|
+
- [ ] **Traceable** - Has unique ID and source
|
|
104
|
+
|
|
105
|
+
## Common Anti-patterns to Avoid
|
|
106
|
+
|
|
107
|
+
1. **Vague language**: "The system should be fast" → "API response < 200ms p95"
|
|
108
|
+
2. **Missing metrics**: "High availability" → "99.9% uptime"
|
|
109
|
+
3. **Solution masquerading as requirement**: "Use Redis" → "Cache frequently accessed data"
|
|
110
|
+
4. **Missing acceptance criteria**: Always include testable criteria
|
|
111
|
+
|
|
112
|
+
## Discovery Questions Bank
|
|
113
|
+
|
|
114
|
+
### For Hidden Requirements
|
|
115
|
+
- "What would make this a failure even if it works correctly?"
|
|
116
|
+
- "Who else needs to be involved that we haven't talked to?"
|
|
117
|
+
- "What reports or dashboards do you need?"
|
|
118
|
+
- "How do you handle this process today?"
|
|
119
|
+
|
|
120
|
+
### For Prioritization
|
|
121
|
+
- "If you could only have 3 features, which would they be?"
|
|
122
|
+
- "What's the minimum needed to go live?"
|
|
123
|
+
- "What's the cost of NOT having this feature?"
|
|
124
|
+
|
|
125
|
+
## Output
|
|
126
|
+
|
|
127
|
+
Save to: `docs/requirements/requirements.md`
|
|
128
|
+
|
|
129
|
+
## Related Skills
|
|
130
|
+
|
|
131
|
+
- `prd-writing` - For turning requirements into PRD
|
|
132
|
+
- `requirements-validation` - For validating requirements
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: requirements-validation
|
|
3
|
+
description: How to validate requirements for completeness, clarity, and quality (SMART criteria)
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
metadata:
|
|
7
|
+
domain: quality-assurance
|
|
8
|
+
artifacts: docs/validation/requirements-validation-*.md
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Requirements Validation Skill
|
|
12
|
+
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
Use this skill when you need to:
|
|
16
|
+
- Validate requirements.md before creating PRD
|
|
17
|
+
- Check for missing or conflicting requirements
|
|
18
|
+
- Ensure requirements meet SMART criteria
|
|
19
|
+
|
|
20
|
+
## Validation Checklist
|
|
21
|
+
|
|
22
|
+
### Structure Checks
|
|
23
|
+
|
|
24
|
+
- [ ] File exists at `docs/requirements/requirements.md`
|
|
25
|
+
- [ ] File is not empty
|
|
26
|
+
- [ ] Functional Requirements section exists
|
|
27
|
+
- [ ] Non-Functional Requirements section exists
|
|
28
|
+
|
|
29
|
+
### ID Checks
|
|
30
|
+
|
|
31
|
+
- [ ] All requirements have unique IDs
|
|
32
|
+
- [ ] FR IDs follow format: `FR-XXX` (e.g., FR-001)
|
|
33
|
+
- [ ] NFR IDs follow format: `NFR-XXX` (e.g., NFR-001)
|
|
34
|
+
- [ ] No duplicate IDs
|
|
35
|
+
- [ ] IDs are sequential (no gaps)
|
|
36
|
+
|
|
37
|
+
### Priority Checks
|
|
38
|
+
|
|
39
|
+
- [ ] All requirements have priorities
|
|
40
|
+
- [ ] Priorities use P0/P1/P2 format
|
|
41
|
+
- [ ] P0 requirements are truly critical
|
|
42
|
+
|
|
43
|
+
### Quality Checks (SMART)
|
|
44
|
+
|
|
45
|
+
For each requirement:
|
|
46
|
+
- [ ] **Specific** - Clear, unambiguous description
|
|
47
|
+
- [ ] **Measurable** - Has acceptance criteria or metrics
|
|
48
|
+
- [ ] **Achievable** - Technically feasible
|
|
49
|
+
- [ ] **Relevant** - Tied to business value
|
|
50
|
+
- [ ] **Traceable** - Has source documented
|
|
51
|
+
|
|
52
|
+
### FR-Specific Checks
|
|
53
|
+
|
|
54
|
+
- [ ] Each FR has acceptance criteria
|
|
55
|
+
- [ ] AC is testable (can be verified as pass/fail)
|
|
56
|
+
- [ ] No implementation details in requirements
|
|
57
|
+
- [ ] Dependencies are identified
|
|
58
|
+
|
|
59
|
+
### NFR-Specific Checks
|
|
60
|
+
|
|
61
|
+
- [ ] Each NFR has measurable metric
|
|
62
|
+
- [ ] Target values are specified
|
|
63
|
+
- [ ] Verification method is defined
|
|
64
|
+
- [ ] Categories are valid (Performance/Security/Scalability/Reliability)
|
|
65
|
+
|
|
66
|
+
### Language Checks
|
|
67
|
+
|
|
68
|
+
Scan for ambiguous language:
|
|
69
|
+
- [ ] No "should" without "must" clarification
|
|
70
|
+
- [ ] No "might", "could", "possibly"
|
|
71
|
+
- [ ] No "fast", "quick", "responsive" without metrics
|
|
72
|
+
- [ ] No "user-friendly" without specific criteria
|
|
73
|
+
- [ ] No "etc.", "and so on", "..."
|
|
74
|
+
|
|
75
|
+
### Conflict Checks
|
|
76
|
+
|
|
77
|
+
- [ ] No conflicting requirements
|
|
78
|
+
- [ ] No circular dependencies
|
|
79
|
+
- [ ] Priorities don't conflict with dependencies
|
|
80
|
+
|
|
81
|
+
## Validation Report Format
|
|
82
|
+
|
|
83
|
+
```markdown
|
|
84
|
+
# Requirements Validation Report
|
|
85
|
+
|
|
86
|
+
**Date:** YYYY-MM-DD
|
|
87
|
+
**Status:** PASS | WARN | FAIL
|
|
88
|
+
**File:** docs/requirements/requirements.md
|
|
89
|
+
|
|
90
|
+
## Summary
|
|
91
|
+
|
|
92
|
+
| Check Type | Total | Passed | Warnings | Failed |
|
|
93
|
+
|------------|-------|--------|----------|--------|
|
|
94
|
+
| Structure | 4 | 4 | 0 | 0 |
|
|
95
|
+
| IDs | 5 | 5 | 0 | 0 |
|
|
96
|
+
| Priorities | 3 | 3 | 0 | 0 |
|
|
97
|
+
| Quality | N | X | Y | Z |
|
|
98
|
+
| Language | 5 | 4 | 1 | 0 |
|
|
99
|
+
|
|
100
|
+
## Passed Checks
|
|
101
|
+
|
|
102
|
+
- [x] All requirements have unique IDs
|
|
103
|
+
- [x] All requirements have priorities
|
|
104
|
+
|
|
105
|
+
## Warnings
|
|
106
|
+
|
|
107
|
+
- [ ] FR-015: Acceptance criteria could be more specific
|
|
108
|
+
- Current: "User can search products"
|
|
109
|
+
- Suggestion: Add search criteria, expected results
|
|
110
|
+
|
|
111
|
+
## Failures
|
|
112
|
+
|
|
113
|
+
- [ ] FR-023: Missing acceptance criteria
|
|
114
|
+
- Impact: Cannot verify implementation
|
|
115
|
+
- Action: Add testable AC
|
|
116
|
+
|
|
117
|
+
- [ ] NFR-005: No measurable metric
|
|
118
|
+
- Current: "System should be fast"
|
|
119
|
+
- Action: Define response time target (e.g., < 200ms p95)
|
|
120
|
+
|
|
121
|
+
## Recommendations
|
|
122
|
+
|
|
123
|
+
1. Add AC to FR-023
|
|
124
|
+
2. Define metric for NFR-005
|
|
125
|
+
3. Clarify ambiguous terms in FR-015
|
|
126
|
+
|
|
127
|
+
## Next Steps
|
|
128
|
+
|
|
129
|
+
After fixing issues:
|
|
130
|
+
- Re-run `/validate requirements`
|
|
131
|
+
- If PASS, proceed to `/prd`
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Output
|
|
135
|
+
|
|
136
|
+
Save to: `docs/validation/requirements-validation-YYYY-MM-DD.md`
|
|
137
|
+
|
|
138
|
+
## Related Skills
|
|
139
|
+
|
|
140
|
+
- `requirements-gathering` - For fixing missing requirements
|
|
141
|
+
- `acceptance-criteria` - For writing better AC
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Research Methodology Skill
|
|
2
|
+
|
|
3
|
+
How to conduct thorough technical, market, domain, and competitive research.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
Provide structured research methodology to gather insights before requirements gathering.
|
|
8
|
+
|
|
9
|
+
## Research Types
|
|
10
|
+
|
|
11
|
+
### 1. Market Research
|
|
12
|
+
|
|
13
|
+
**Goal:** Understand market landscape, trends, and opportunities.
|
|
14
|
+
|
|
15
|
+
**Process:**
|
|
16
|
+
1. Define research scope and questions
|
|
17
|
+
2. Identify target market segments
|
|
18
|
+
3. Research market size and growth
|
|
19
|
+
4. Analyze market trends
|
|
20
|
+
5. Identify opportunities and gaps
|
|
21
|
+
|
|
22
|
+
**Output Sections:**
|
|
23
|
+
- Market Overview
|
|
24
|
+
- Target Segments
|
|
25
|
+
- Market Size & Growth
|
|
26
|
+
- Key Trends
|
|
27
|
+
- Opportunities
|
|
28
|
+
|
|
29
|
+
### 2. Technical Research
|
|
30
|
+
|
|
31
|
+
**Goal:** Evaluate technologies, patterns, and approaches.
|
|
32
|
+
|
|
33
|
+
**Process:**
|
|
34
|
+
1. Define technical questions to answer
|
|
35
|
+
2. Research available technologies
|
|
36
|
+
3. Evaluate pros/cons of each
|
|
37
|
+
4. Review case studies and implementations
|
|
38
|
+
5. Provide recommendations
|
|
39
|
+
|
|
40
|
+
**Output Sections:**
|
|
41
|
+
- Technology Options
|
|
42
|
+
- Comparison Matrix
|
|
43
|
+
- Case Studies
|
|
44
|
+
- Recommendations
|
|
45
|
+
- Risks & Considerations
|
|
46
|
+
|
|
47
|
+
### 3. Domain Research
|
|
48
|
+
|
|
49
|
+
**Goal:** Deep understanding of business domain.
|
|
50
|
+
|
|
51
|
+
**Process:**
|
|
52
|
+
1. Identify domain concepts and terminology
|
|
53
|
+
2. Research industry standards
|
|
54
|
+
3. Understand regulatory requirements
|
|
55
|
+
4. Study domain patterns
|
|
56
|
+
5. Document domain model
|
|
57
|
+
|
|
58
|
+
**Output Sections:**
|
|
59
|
+
- Domain Glossary
|
|
60
|
+
- Industry Standards
|
|
61
|
+
- Regulatory Requirements
|
|
62
|
+
- Domain Patterns
|
|
63
|
+
- Domain Model
|
|
64
|
+
|
|
65
|
+
### 4. Competitive Research
|
|
66
|
+
|
|
67
|
+
**Goal:** Understand competitive landscape.
|
|
68
|
+
|
|
69
|
+
**Process:**
|
|
70
|
+
1. Identify competitors (direct and indirect)
|
|
71
|
+
2. Analyze competitor products/features
|
|
72
|
+
3. Evaluate strengths/weaknesses
|
|
73
|
+
4. Identify differentiation opportunities
|
|
74
|
+
5. Benchmark best practices
|
|
75
|
+
|
|
76
|
+
**Output Sections:**
|
|
77
|
+
- Competitor Overview
|
|
78
|
+
- Feature Comparison
|
|
79
|
+
- SWOT Analysis
|
|
80
|
+
- Differentiation Opportunities
|
|
81
|
+
- Best Practices
|
|
82
|
+
|
|
83
|
+
## Research Template
|
|
84
|
+
|
|
85
|
+
```markdown
|
|
86
|
+
# {{topic}} Research Report
|
|
87
|
+
|
|
88
|
+
**Type:** Market / Technical / Domain / Competitive
|
|
89
|
+
**Date:** {{date}}
|
|
90
|
+
**Author:** {{user_name}}
|
|
91
|
+
|
|
92
|
+
## Executive Summary
|
|
93
|
+
|
|
94
|
+
[2-3 paragraphs summarizing key findings]
|
|
95
|
+
|
|
96
|
+
## Research Questions
|
|
97
|
+
|
|
98
|
+
1. [Question 1]
|
|
99
|
+
2. [Question 2]
|
|
100
|
+
3. [Question 3]
|
|
101
|
+
|
|
102
|
+
## Methodology
|
|
103
|
+
|
|
104
|
+
[How research was conducted]
|
|
105
|
+
|
|
106
|
+
## Findings
|
|
107
|
+
|
|
108
|
+
### [Finding 1]
|
|
109
|
+
[Details]
|
|
110
|
+
|
|
111
|
+
### [Finding 2]
|
|
112
|
+
[Details]
|
|
113
|
+
|
|
114
|
+
## Recommendations
|
|
115
|
+
|
|
116
|
+
1. [Recommendation 1]
|
|
117
|
+
2. [Recommendation 2]
|
|
118
|
+
|
|
119
|
+
## References
|
|
120
|
+
|
|
121
|
+
- [Source 1]
|
|
122
|
+
- [Source 2]
|
|
123
|
+
|
|
124
|
+
## Appendix
|
|
125
|
+
|
|
126
|
+
[Supporting data, charts, etc.]
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Quality Criteria
|
|
130
|
+
|
|
131
|
+
- [ ] Clear research questions defined
|
|
132
|
+
- [ ] Methodology documented
|
|
133
|
+
- [ ] Sources cited
|
|
134
|
+
- [ ] Findings are actionable
|
|
135
|
+
- [ ] Recommendations provided
|
|
136
|
+
- [ ] Limitations acknowledged
|
|
137
|
+
|
|
138
|
+
## Output Location
|
|
139
|
+
|
|
140
|
+
`docs/research/[type]/[topic]-research.md`
|