一键导入
nfr-capture
Generate pre-populated NFR table for a system's HLD based on tier and project type
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generate pre-populated NFR table for a system's HLD based on tier and project type
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Generate C4 architecture diagrams from system notes
Create and edit Obsidian Canvas files for architecture visualization
Visualize system dependencies and relationships
Analyse architecture diagrams and flowcharts
Generate architecture diagrams using Python diagrams library
Batch populate summary fields using content analysis
| name | nfr-capture |
| skill | nfr-capture |
| description | Generate pre-populated NFR table for a system's HLD based on tier and project type |
| context | fork |
| arguments | [{"name":"system","description":"System name (e.g., \"ERPSystem\", \"DataPlatform\", \"AlertHub\")","required":true},{"name":"tier","description":"CS tier (CS1-CS4) — if omitted, skill will ask or run scoping questionnaire","required":false},{"name":"types","description":"Comma-separated project types (all,pci,gdpr,caa_nis) — if omitted, skill will ask","required":false},{"name":"output","description":"Output format — \"markdown\" (default), \"confluence\" (wiki markup), \"jira\" (for epic creation)","required":false},{"name":"flags","description":"Comma-separated flags — \"with-evidence-prompts\" (include AI draft prompts per NFR), \"from-hld:<page-id>\" (pre-fill evidence from existing HLD)","required":false}] |
| model | opus |
Generate a pre-populated NFR requirements table for a system's HLD, filtered by classification tier and project type. Reads from the NFR-as-Code YAML single source of truth.
/nfr-capture ERPSystem
/nfr-capture ERPSystem CS2
/nfr-capture "AlertHub" CS1 all,gdpr
/nfr-capture DataPlatform CS2 all,pci,gdpr confluence
/nfr-capture ERPSystem CS2 all,gdpr markdown with-evidence-prompts
/nfr-capture ERPSystem CS2 all,gdpr markdown from-hld:664765269
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.
.claude/data/nfr-reference.yamlclassification_tiersOption A: Direct arguments — If tier and types are provided, use them.
Option B: Scoping questionnaire — If arguments are omitted, offer the user a choice:
scoping_questions in the YAML. Map answers to tier and types using the maps_to fields.archetypes in the YAML and let the user pick one.If only tier is omitted, show the tier selection table:
What is the Criticality / Service Level tier for [system]?
| Tier | Criticality | Availability | RTO | RPO |
|------|-------------|-------------|-----|-----|
| CS1/SL1 | Critical | 99.95% | 4 hours | Zero data loss |
| CS2/SL2 | High | 99.50% | 8 hours | 1 hour |
| CS3/SL3 | Medium | 99.00% | 5 working days | 1 day |
| CS4/SL4 | Low | 98.50% | 10 working days | 5 days |
If only types is omitted, show the type selection:
Which project types apply to [system]? (select all that apply)
- [ ] All Projects (mandatory baseline)
- [ ] PCI — system handles payment card data
- [ ] GDPR — system processes personal data of UK/EEA subjects
- [ ] CAA/NIS — system supports essential aviation services
Note: "All Projects" should always be selected as it is the mandatory baseline.
Using the selected tier and project types:
Include sections where the section's applicability overlaps with the selected project types:
applicability: [all] are always includedapplicability: [pci] only included if PCI is selectedapplicability: [gdpr] only included if GDPR is selectedapplicability: [caa_nis] only included if CAA/NIS is selected[all, pci, gdpr, caa_nis]) — include if ANY matchMap CS tier to SL tier: CS1→SL1, CS2→SL2, CS3→SL3, CS4→SL4
Pre-fill tier values for tiered NFRs using the selected SL tier's tier_values
from-hld:<page-id> flag)If the from-hld flag is present:
getConfluencePage with the given page IDrequirement, guidance, and aws_services fields"Pre-filled from HLD page [ID], section [name]: [extracted evidence]"Generate the NFR table in the requested format (default: markdown).
For each applicable section, generate:
### [Section Name]
> **Purpose:** [section.purpose]
>
> **Compliance:** [section.compliance_frameworks joined]
>
> **Applicability:** [section.applicability_notes]
**Tier Targets ([CS tier] / [SL tier]):**
[If section has tier_guidance, render the selected tier's values as a summary table]
| NFR ID | Requirement | Target ([SL tier]) | Verification / Evidence | Status |
|--------|------------|---------------------|------------------------|--------|
| [nfr.id] | [nfr.title]: [nfr.requirement] | [tier_values for SL tier if tiered, else "See guidance"] | _[nfr.evidence_guidance]_ | |
Important formatting rules:
with-evidence-prompts flag)When this flag is present, add an additional column or section per NFR with an AI Evidence Prompt — a structured template the team can use to draft their evidence statement.
For each NFR, generate a prompt block after the table row:
<details>
<summary>AI Evidence Prompt for [NFR-ID]</summary>
**To draft evidence for this NFR, describe:**
- [Specific questions based on evidence_guidance field]
- [For automated evidence_type]: Which AWS Config rules or CLI commands can verify this? (See nfr-evidence-rules.yaml)
- [For manual evidence_type]: What documents, diagrams, or procedures demonstrate compliance?
**Example evidence statement:**
> [Generate a realistic example based on the NFR's requirement and evidence_guidance, using the system name and tier context]
</details>
For NFRs with evidence_type: automated, also include the specific AWS checks from .claude/data/nfr-evidence-rules.yaml:
**Automated checks available:**
- [check description]: `[command or config rule]`
If output is confluence, generate Confluence wiki markup instead of markdown:
|| for header rows and | for data rows{info} macros for section intro boxes{status} macros for the Status column placeholders{page-properties} block at the top (see Phase 4b)Add a {page-properties} block at the top of Confluence output:
{page-properties}
| NFR Status | Draft |
| NFR Tier | [CS tier] |
| NFR Sections Applicable | [included] of 13 |
| NFR Completion | 0/[total] (0%) |
| NFR Last Reviewed | [today's date] |
{page-properties}
This enables estate-wide dashboards via Confluence {page-properties-report}.
If output is jira, generate a structured list suitable for creating a Jira Epic:
Concept - NFR Capture - [System Name].md---
type: Concept
title: "NFR Capture - [System Name]"
created: [today]
modified: [today]
tags:
- activity/governance
- activity/architecture
- domain/engineering
confidence: high
freshness: current
source: synthesis
verified: false
reviewed: [today]
keywords: [nfr, nfr-capture, [system-name lowercase]]
relatedTo:
- "[[Pattern - NFR Standards and Governance]]"
---
createConfluencePage to create as child of system's HLD pageAfter generating the table, print a summary:
NFR Capture Summary for [System Name] ([CS tier]/[SL tier])
- Sections included: [count] of 13
- NFRs included: [count] of 66
- Sections excluded: [list excluded section names with reason]
- Tiered NFRs: [count] with [SL tier] values pre-filled
- Evidence types: [count automated] automated, [count manual] manual
- Pre-filled from HLD: [count] NFRs (if from-hld flag used)
- Evidence prompts: included (if with-evidence-prompts flag used)
.claude/data/nfr-reference.yaml — NFR single source of truth.claude/data/nfr-evidence-rules.yaml — Automated AWS evidence checks for 37 NFRs.claude/skills/nfr-review/SKILL.md — Gap analysis against existing HLDs.claude/skills/nfr-jira-epic/SKILL.md — Create Jira Epic with stories per NFRPattern - NFR Standards and Governance — Tiered framework contextPattern - NFR Compliance Evidence Best Practices — Evidence patterns