home / skills / gentleman-programming / gentleman-skills / jira-epic

jira-epic skill

/curated/jira-epic

This skill creates Jira epics for large features using Prowler's standard format, guiding structure, sections, and task generation for clarity and reuse.

This is most likely a fork of the jira-epic skill from gentleman-programming
npx playbooks add skill gentleman-programming/gentleman-skills --skill jira-epic

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
7.3 KB
---
name: jira-epic
description: >
  Creates Jira epics for large features following Prowler's standard format.
  Trigger: When user asks to create an epic, large feature, or multi-task initiative.
license: Apache-2.0
metadata:
  author: gentleman-programming
  version: "1.0"
---

## When to Use

Use this skill when creating Jira epics for:
- Large features spanning multiple components
- New views/pages in the application
- Major refactoring initiatives
- Features requiring API + UI + SDK work

## Epic Template

```markdown
# {Epic Title}

**Figma:** {figma link if available}

## Feature Overview

{2-3 paragraph description of what this feature does and why it's needed}

## Requirements

### {Section 1: Major Functionality Area}

#### {Subsection}
- Requirement 1
- Requirement 2
- Requirement 3

#### {Another Subsection}
- Requirement 1
- Requirement 2

### {Section 2: Another Major Area}

#### {Subsection}
- Requirement 1
- Requirement 2

## Technical Considerations

### Performance
- {Performance requirement 1}
- {Performance requirement 2}

### Data Integration
- {Data source}
- {Integration points}

### UI Components
- {Component 1}
- {Component 2}

## Implementation Checklist

- [ ] {Major deliverable 1}
- [ ] {Major deliverable 2}
- [ ] {Major deliverable 3}

## Diagrams

{Mermaid diagrams for architecture, flow, data model, etc.}
```

## Epic Title Conventions

Format: `[EPIC] Feature Name`

**Examples:**
- `[EPIC] Findings View`
- `[EPIC] Multi-tenant Support`
- `[EPIC] Compliance Dashboard Redesign`
- `[EPIC] GovCloud Support`

## Required Sections

### 1. Feature Overview
Brief but complete description of:
- What the feature does
- Who uses it
- Why it's needed

### 2. Requirements
Organized by functional area:
- Group related requirements together
- Use clear headers and subheaders
- Be specific and testable

### 3. Technical Considerations
Always include:
- **Performance**: Large dataset handling, pagination, caching
- **Data Integration**: Data sources, APIs, relationships
- **UI Components**: Reusable components, design system usage

### 4. Implementation Checklist
High-level deliverables that will become individual tasks:
- Each checkbox = potential Jira task
- Order by dependency (API before UI)
- Include testing milestones

## Diagrams

Use Mermaid for:

### Architecture Diagrams
```mermaid
graph TB
    UI[UI Components] --> API[API Endpoints]
    API --> SDK[Prowler SDK]
    SDK --> Cloud[Cloud Providers]
```

### Data Flow Diagrams
```mermaid
sequenceDiagram
    User->>UI: Apply filters
    UI->>API: GET /findings?filters
    API->>DB: Query findings
    DB-->>API: Results
    API-->>UI: JSON response
    UI-->>User: Render table
```

### State Diagrams
```mermaid
stateDiagram-v2
    [*] --> Pending
    Pending --> InProgress: Start triage
    InProgress --> Resolved: Mark resolved
    InProgress --> Pending: Reset
    Resolved --> [*]
```

### Entity Relationship Diagrams
```mermaid
erDiagram
    FINDING ||--o{ RESOURCE : affects
    FINDING }|--|| CHECK : "belongs to"
    RESOURCE }|--|| ACCOUNT : "belongs to"
    ACCOUNT }|--|| PROVIDER : "belongs to"
```

## Splitting Epic into Tasks

After creating the epic, generate individual tasks using the `jira-task` skill:

### Task Naming Pattern
From epic `[EPIC] Findings View`, create:
- `[FEATURE] Findings table with pagination (UI)`
- `[FEATURE] Findings filters - provider and account (UI)`
- `[FEATURE] Findings detail panel - Overview tab (UI)`
- `[FEATURE] Findings detail panel - Resources tab (UI)`
- `[FEATURE] Findings bulk actions - mute/suppress (API + UI)`
- `[FEATURE] Findings search functionality (API + UI)`

### Task Dependencies
Always specify in each task:
```markdown
## Related Tasks
- Epic: [EPIC] Findings View
- Blocked by: [task if any]
- Blocks: [task if any]
```

## Figma Integration

When Figma links are provided:
- Include main Figma link at top
- Reference specific frames in relevant sections
- Example: `https://www.figma.com/design/xxx?node-id=1830-44712&m=dev`

## Output Format

```markdown
## Epic: [EPIC] {Title}

{Full epic content following template}

---

## Suggested Tasks

Based on this epic, create the following tasks:

| # | Title | Component | Blocked By |
|---|-------|-----------|------------|
| 1 | [FEATURE] Task name | API | - |
| 2 | [FEATURE] Task name | UI | Task 1 |
| 3 | [FEATURE] Task name | UI | Task 2 |

Would you like me to generate the full task descriptions?
```

## Checklist Before Submitting

1. ✅ Title follows `[EPIC] Feature Name` format
2. ✅ Feature Overview explains what/who/why
3. ✅ Requirements are organized by functional area
4. ✅ Technical Considerations cover performance, data, UI
5. ✅ Implementation Checklist has high-level deliverables
6. ✅ Diagrams included where helpful (Mermaid format)
7. ✅ Figma links included if available
8. ✅ Suggested tasks table provided at the end

## Formatting Rules

**CRITICAL:** All output MUST be in Markdown format, ready to paste into Jira.

- Use `#` for epic title, `##` for main sections, `###` for subsections
- Use `**bold**` for emphasis
- Use `- [ ]` for checkboxes in Implementation Checklist
- Use ``` for code blocks and Mermaid diagrams
- Use `backticks` for file paths, commands, and code references
- Use tables for Suggested Tasks section
- Use `---` to separate epic from suggested tasks

## Jira MCP Integration

**CRITICAL:** When creating epics via MCP, use these exact parameters:

### Required Fields

```json
{
  "project_key": "PROWLER",
  "summary": "[EPIC] Feature name",
  "issue_type": "Epic",
  "additional_fields": {
    "customfield_10359": {"value": "UI"}
  }
}
```

### Team Field (REQUIRED)

The `customfield_10359` (Team) field is **REQUIRED**. Options:
- `"UI"` - Frontend epics
- `"API"` - Backend epics
- `"SDK"` - Prowler SDK epics

### Work Item Description Field

**IMPORTANT:** The project uses `customfield_10363` (Work Item Description) instead of the standard `description` field for display in the UI.

**CRITICAL:** Use **Jira Wiki markup**, NOT Markdown:
- `h2.` instead of `##`
- `*text*` for bold instead of `**text**`
- `* item` for bullets (same)
- `** subitem` for nested bullets

After creating the epic, update the description with:

```json
{
  "customfield_10363": "h2. Feature Overview\n\n{overview}\n\nh2. Requirements\n\n*{Section 1}*\n* {requirement 1}\n* {requirement 2}\n\n*{Section 2}*\n* {requirement 1}\n* {requirement 2}\n\nh2. Technical Considerations\n\n*Performance:*\n* {consideration 1}\n\n*Data Integration:*\n* {consideration 2}\n\nh2. Implementation Checklist\n\n* [ ] {deliverable 1}\n* [ ] {deliverable 2}\n* [ ] {deliverable 3}"
}
```

### Linking Tasks to Epic

When creating child tasks, use the epic key as parent:

```json
{
  "additional_fields": {
    "parent": "PROWLER-XXX"
  }
}
```

### Workflow Transitions

```
Backlog (10037) → To Do (14) → In Progress (11) → Done (21)
                → Blocked (10)
```

### MCP Commands Sequence

1. **Create epic:**
```
mcp__mcp-atlassian__jira_create_issue (issue_type: "Epic")
```

2. **Update Work Item Description:**
```
mcp__mcp-atlassian__jira_update_issue with customfield_10363
```

3. **Create child tasks:**
```
mcp__mcp-atlassian__jira_create_issue with parent: EPIC-KEY
```

4. **Assign and transition:**
```
mcp__mcp-atlassian__jira_update_issue (assignee)
mcp__mcp-atlassian__jira_transition_issue (status)
```

## Keywords
jira, epic, feature, initiative, prowler, large feature

Overview

This skill creates Jira epics for large features using Prowler's standard epic format and conventions. It generates a complete, testable epic including a clear overview, organized requirements, technical considerations, implementation checklist, and Mermaid diagrams. Use it to produce epics ready for MCP/Jira creation and downstream task generation.

How this skill works

When asked to create an epic, the skill collects the feature name, scope, stakeholders, and any Figma links, then builds a structured epic that follows Prowler conventions (title format, required sections, Mermaid diagrams). It outputs the epic in the formatted template and suggests a table of child tasks with dependencies. It can also emit the Jira MCP fields and the Work Item Description markup when MCP integration is required.

When to use it

  • When planning a large feature spanning multiple teams or components
  • For new views/pages or major UX flows that need API + UI work
  • When launching major refactors or multi-task initiatives
  • When a feature requires explicit performance, data, and UI considerations
  • When you want a standards-compliant epic plus suggested child tasks

Best practices

  • Provide a concise Figma link and call out specific frames if available
  • Group functional requirements by area and keep each requirement testable
  • List technical considerations explicitly: performance, data integration, UI components
  • Order implementation checklist by dependency (API → SDK → UI) and include testing milestones
  • Use the suggested tasks table to seed Jira child issues and record blockers

Example use cases

  • Create an epic for a new Findings View that includes listing, filters, and detail panels
  • Draft an epic for multi-tenant support spanning API, SDK, and UI work
  • Produce an epic for a Compliance Dashboard redesign with performance and data integration needs
  • Generate an epic for adding GovCloud support with cloud provider integration diagrams
  • Create an epic for a large refactor that requires coordinated API and UI deliverables

FAQ

Will the skill generate Jira fields for MCP?

Yes. It can produce the required MCP JSON fields including project_key, summary, issue_type, and the Team field (customfield_10359). It also prepares the Work Item Description in Jira Wiki markup (customfield_10363).

Can it split the epic into child tasks?

Yes. It suggests a table of child tasks using the [FEATURE] naming pattern, orders them by dependency, and can produce Task templates suitable for the jira-task skill to create Jira issues.