Create a Jira Epic with one story per applicable NFR for tracking NFR compliance as sprint work
Scanned 9/9/2026
Install to Claude Code
npx -y skills add DavidROliverBA/ArchitectKB --skill nfr-jira-epic --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Nfr Jira Epic?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/davidroliverba-nfr-jira-epic)More formats (shields.io, HTML) on the badges page.
---
name: nfr-jira-epic
skill: nfr-jira-epic
description: Create a Jira Epic with one story per applicable NFR for tracking NFR compliance as sprint work
context: fork
arguments:
- name: system
description: System name (e.g., "ERPSystem", "DataPlatform", "AlertHub")
required: true
- name: tier
description: CS tier (CS1-CS4)
required: true
- name: types
description: Comma-separated project types (all,pci,gdpr,caa_nis)
required: true
- name: project
description: Jira project key (e.g., "ARCH", "ENG") — if omitted, skill will ask
required: false
model: opus
---
# /nfr-jira-epic
Create a Jira Epic with one story per applicable NFR, turning the NFR compliance table into trackable sprint work. Each story includes the requirement, evidence guidance, and acceptance criteria.
## Usage
```
/nfr-jira-epic ERPSystem CS1 all,gdpr
/nfr-jira-epic "AlertHub" CS1 all,gdpr ARCH
/nfr-jira-epic DataPlatform CS2 all,pci,gdpr,caa_nis
```
## Data Source
All NFR data is read from `.claude/data/nfr-reference.yaml` — the single source of truth for all 66 NFRs. Do NOT hard-code NFR content; always read from the YAML.
## Prerequisites
- Atlassian MCP tools must be available (Jira access via `createJiraIssue`)
- User must have permissions to create issues in the target Jira project
## Instructions
### Phase 1: Load NFR Data
1. **Read** `.claude/data/nfr-reference.yaml`
2. Parse sections and NFRs
3. **Read** `.claude/data/nfr-evidence-rules.yaml` for automated check references
### Phase 2: Filter NFRs
1. Parse the `types` argument into a list (split on comma)
2. Always include `all` in the types list
3. Filter sections by applicability (same logic as `/nfr-capture`)
4. Map CS tier to SL tier: CS1→SL1, CS2→SL2, CS3→SL3, CS4→SL4
### Phase 3: Determine Jira Project
If `project` argument is provided, use it. Otherwise, ask the user:
```
Which Jira project should the NFR Epic be created in?
Enter the Jira project key (e.g., ARCH, ENG, OPS):
```
### Phase 4: Create Epic
Use the Atlassian MCP `createJiraIssue` tool to create the Epic:
- **Issue Type:** Epic
- **Project:** [project key]
- **Summary:** `NFR Compliance — [System Name] ([CS tier]/[SL tier])`
- **Description:**
```
h2. NFR Compliance Epic
*System:* [System Name]
*Classification:* [CS tier] / [SL tier]
*Applicability:* [types list]
*Sections:* [included count] of 13
*NFRs:* [included NFR count] of 66
This epic tracks NFR compliance for [System Name] as defined in the BA NFR Template (Confluence page 664765269, v0.2).
Each story represents one NFR requirement. Stories close when evidence is attached and reviewed.
*Generated by:* /nfr-jira-epic skill
*NFR Reference:* .claude/data/nfr-reference.yaml
```
- **Labels:** `nfr-compliance`, `nfr-epic`
### Phase 5: Create Stories
For each applicable NFR, create a Jira story linked to the Epic:
- **Issue Type:** Story
- **Project:** [project key]
- **Summary:** `[NFR ID] — [NFR title]`
- **Description:**
```
h2. [NFR ID]: [NFR title]
h3. Requirement
[nfr.requirement]
h3. Guidance
[nfr.guidance]
h3. Target ([SL tier])
[tier_values for SL tier if tiered, else "Not tiered — applies uniformly"]
h3. Evidence Guidance
[nfr.evidence_guidance]
h3. Evidence Type
[nfr.evidence_type] — [If automated: "Automated checks available via nfr-evidence-collect.sh"]
h3. Acceptance Criteria
* Evidence is documented and linked to this story
* Evidence matches the format described in Evidence Guidance
* Status is confirmed as Met, Partial, or N/A with justification
[If evidence_type == automated]:
* Automated check results attached (AWS Config / CLI output)
```
- **Labels:** `nfr-compliance`, `nfr-[section-id lowercase]` (e.g., `nfr-sec`, `nfr-rel`)
- **Priority:** Mapped from CS tier:
- CS1 → Critical
- CS2 → High
- CS3 → Medium
- CS4 → Low
- **Epic Link:** Link to the Epic created in Phase 4
**Rate limiting:** Pause briefly between story creation calls to avoid Jira API rate limits. Create stories section by section.
### Phase 6: Summary
After creating all stories, print a summary:
```
NFR Jira Epic Created for [System Name] ([CS tier]/[SL tier])
Epic: [PROJ]-[ID] — NFR Compliance — [System Name] ([CS tier]/[SL tier])
URL: [epic URL]
Stories created: [count] of [total applicable NFRs]
| Section | Stories | IDs |
|---------|---------|-----|
| [Section Name] | [count] | [PROJ-ID, PROJ-ID, ...] |
| ... | ... | ... |
Priority: [CS1→Critical/CS2→High/CS3→Medium/CS4→Low]
Labels: nfr-compliance, nfr-[section-ids]
Next steps:
1. Assign stories to team members or squads
2. Add to sprint backlog
3. Use /nfr-capture with-evidence-prompts for guidance on completing each NFR
4. Close stories when evidence is attached and reviewed
```
## Related
- `.claude/data/nfr-reference.yaml` — NFR single source of truth
- `.claude/data/nfr-evidence-rules.yaml` — Automated AWS evidence checks
- `.claude/skills/nfr-capture/SKILL.md` — Generate NFR tables
- `.claude/skills/nfr-review/SKILL.md` — Gap analysis against existing HLDs
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!