Use when functional requirements are ready and approved. Creates JIRA Epics and Stories for EA then GA sequentially using JIRA MCP.
84
76%
Does it follow best practices?
Impact
96%
2.90xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./.claude/skills/jira-tickets/SKILL.mdCreate JIRA Epics and Stories from approved functional requirements docs using JIRA MCP.
/jira-tickets --project <name>--project — matches folder under docs/projects/. Optional if .current-project is set.Project: --project <name> or .current-project — stop if neither.
Precondition: Check which func-req files exist and have status: approved:
functional-requirements-ea.md exists and is approved: run EA.functional-requirements-ga.md exists and is approved: run GA after EA./func-req first."Read docs/projects/<name>/functional-requirements-<milestone>.md and docs/projects/<name>/prd.md in full. The PRD is needed for the human-readable feature name for the Epic summary.
If the file has status: done, stop:
"Tickets already created for this milestone (status: done). To add new stories, add them to the functional requirements file without JIRA keys and re-run — existing stories will be skipped."
Note all technical task groups per story and any tasks flagged ⚠️ EA blocker.
Ask:
"Three quick things before I create tickets:
- JIRA project key? (e.g.,
PROJ,ALERT)- Team/area base prefix? (e.g.,
WE,ALERT) — I'll append the work-type suffix (-API,-UI,-DB,-OPS) per story- Project label to apply to all stories? (e.g.,
Event_Enrichment,Q2_2026)"
Use JIRA MCP createJiraIssue with:
<EA|GA>: <Human-readable feature name> — use the full feature name, not the slug<One paragraph describing the feature scope for this milestone.>
## Resources
- Functional Requirements: docs/projects/<name>/functional-requirements-<milestone>.md
- PRD: docs/projects/<name>/prd.md
- Tech Design: docs/projects/<name>/tech-design.mdRecord the returned Epic key (e.g., PROJ-42).
For each technical task group, create one JIRA Story per task. Apply sizing judgment:
Summary format: [<TEAM-AREA>] <Feature>: <Specific Task>
Work-type suffixes:
<base>-API<base>-UI<base>-DB<base>-OPSDescription format:
## End Goal
<One paragraph describing the concrete deliverable.>
## Implementation Details
<Specific technical steps: file paths, component names, API contracts, patterns to follow.>
// est: ~N days
## Out of Scope
- <Explicit exclusions>For any task flagged ⚠️ EA blocker: add a note in Implementation Details — "Blocked on <team/dependency> — link JIRA dependency manually once their ticket exists."
Epic Link: set to the Epic key from Step 3
Labels: the project label from Step 2
Update docs/projects/<name>/functional-requirements-<milestone>.md:
jira-epic-key: <EPIC-KEY> in frontmatterAPI:
- Add GET /audit-logs endpoint [PROJ-43]
UI:
- Date range filter component [PROJ-45]Set status: done on the file.
"Created Epic <EPIC-KEY> and <N> stories in JIRA project <PROJECT>. Issue keys written back to
docs/projects/<name>/functional-requirements-<milestone>.md.Story count: <N> stories @ ~3 days each = ~<N×3> engineer-days estimated."
585e8a6
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.