Use when user mentions a Jira issue key (e.g., PLAT-123) or needs context from Jira. Retrieves and formats issue details for PRISM agent workflows.
Scanned 2/12/2026
Install via CLI
openskills install majiayu000/claude-skill-registry---
name: fetch-jira-issue
description: Use when user mentions a Jira issue key (e.g., PLAT-123) or needs context from Jira. Retrieves and formats issue details for PRISM agent workflows.
---
# Task: Fetch Jira Issue
## Purpose
Retrieve and format Jira issue details (Epic, Story, Bug, Task) to provide context for PRISM agent workflows.
## Quick Start
1. Detect or receive Jira issue key (e.g., PLAT-123)
2. Load Jira config from `core-config.yaml`
3. Call Jira REST API via curl
4. Format response for PRISM workflow context
5. Return structured issue details
## When to Use
- User mentions a Jira issue key (e.g., PLAT-123)
- Agent needs context for decomposition, validation, or implementation
- Explicit `*jira {issueKey}` command
## Prerequisites
- Jira integration enabled in core-config.yaml
- Valid Jira credentials configured
- Issue key provided or detected
## Process
### Step 1: Detect or Request Issue Key
**If issue key mentioned in user message:**
- Extract issue key using pattern from config (default: `[A-Z]+-\d+`)
- Inform user: "I found reference to {issueKey}. Let me fetch the details..."
**If no issue key detected:**
- Ask user: "Great! Let's take a look at that. Do you have a JIRA ticket number so I can get more context?"
- Wait for user response
- If provided, proceed with fetch
- If not provided or user declines, continue without Jira context
### Step 2: Read Jira Configuration
**Load config values from `../core-config.yaml`:**
```yaml
jira:
baseUrl: {url}
email: {email}
token: {token}
defaultProject: {project}
```
**Validate configuration:**
- Ensure jira.enabled is true
- Verify all required fields present
- If missing, inform user and proceed without Jira context
### Step 3: Construct API Request
**Build Jira REST API URL:**
```
{baseUrl}/rest/api/3/issue/{issueKey}
```
**Prepare authentication:**
- Use Basic Auth with email:token
- Format: Authorization header with base64(email:token)
**For WebFetch, construct authenticated URL:**
```
https://{email}:{token}@{hostname}/rest/api/3/issue/{issueKey}
```
### Step 4: Fetch Issue Details
**Use WebFetch tool with extraction prompt:**
```
Extract and format the following information from this Jira issue:
## Issue Identification
- Issue Key and Type (Epic/Story/Bug/Task/etc)
- Status and Priority
- Project and Components
## Content
- Summary (title)
- Description (full text, preserve formatting)
- Acceptance Criteria (if present in description or as custom field)
## People & Dates
- Assignee
- Reporter
- Created and Updated dates
- Due Date (if set)
## Estimation & Progress
- Story Points (if applicable)
- Original Estimate
- Time Spent
- Sprint (if applicable)
## Relationships
- Epic Link (what epic this belongs to)
- Parent Issue (if subtask)
- Child Issues (count and list)
- Linked Issues (Blocks, Blocked by, Relates to, etc.)
## Additional Context
- Labels
- Fix Versions
- Last 3 comments (with author and date)
- Attachments (count and types)
Format as a clear, structured markdown summary optimized for development context.
If any field is missing or empty, note it as "Not specified" rather than omitting.
```
### Step 5: Handle Response
**Success (200 OK):**
- Format and display issue summary to user
- Store issue data in conversation context for agent reference
- Include clickable link: `[{issueKey}]({baseUrl}/browse/{issueKey})`
- Proceed with agent workflow using fetched context
**Issue Not Found (404):**
- Display: "Could not find Jira issue {issueKey}. Please verify the issue key."
- Ask user if they want to:
- Try a different issue key
- Search for issues
- Proceed without Jira context
**Permission Denied (403):**
- Display: "Access denied to {issueKey}. This may require different Jira permissions."
- Suggest:
- Verify issue key is correct
- Check Jira permissions for the account
- Contact Jira administrator
- Offer to proceed without Jira context
**Authentication Failed (401):**
- Display: "Jira authentication failed. Please check credentials in core-config.yaml."
- Do not proceed with Jira operations
- Continue agent workflow without Jira context
**Network/API Error:**
- Display: "Unable to connect to Jira at this time. Proceeding without issue context."
- Log error details for troubleshooting
- Continue agent workflow without Jira context
### Step 6: Present Formatted Summary
**Display format:**
```markdown
## 📋 {IssueKey}: {Summary}
**Type:** {Type} | **Status:** {Status} | **Priority:** {Priority}
**Assignee:** {Assignee} | **Reporter:** {Reporter}
### Description
{Description}
### Acceptance Criteria
{Acceptance Criteria or "Not specified"}
### Epic Context
{Epic Link and summary, if applicable}
### Related Issues
- Blocks: {list}
- Blocked by: {list}
- Relates to: {list}
- Child Issues: {count} issues
### Estimation
- Story Points: {points}
- Time Spent: {time}
### Additional Details
- Labels: {labels}
- Components: {components}
- Last Updated: {date}
[View in Jira]({link})
```
### Step 7: Context Integration
**For different issue types:**
**Epic:**
- Fetch child issues count
- Extract epic goals and scope
- Identify existing stories to avoid duplication
**Story:**
- Extract acceptance criteria carefully
- Note dependencies and blockers
- Check for technical notes in comments
**Bug:**
- Extract reproduction steps from description
- Review existing comments for additional context
- Note severity and customer impact
**Task:**
- Extract deliverables and requirements
- Check for related technical documentation
- Note any dependencies
### Step 8: Offer Follow-up Actions
**Based on issue type and agent, offer:**
- "Would you like me to fetch the epic details?" (if story has epic link)
- "Shall I retrieve all child stories?" (if epic has children)
- "Would you like to see the linked issues?" (if has dependencies)
- "Ready to proceed with {agent task}?" (to continue workflow)
## Error Recovery
**Invalid Issue Key Format:**
- Display: "'{input}' doesn't match Jira issue key format (e.g., PLAT-123)"
- Ask for correct issue key or offer to proceed without
**Multiple Issue Keys Detected:**
- List all detected keys
- Ask user which one to fetch first
- Offer to fetch all
**Jira Configuration Missing:**
- Display: "Jira integration not configured. Proceeding without issue context."
- Continue agent workflow
- Do not block on missing Jira config
## Agent-Specific Integration
**Story Master (sm):**
- When decomposing epic: fetch epic + all existing child stories
- When creating story: check for duplicate summaries in epic
- When estimating: review similar completed stories (if available)
**Product Owner (po):**
- When validating story: fetch full acceptance criteria
- When refining: check for missing fields or incomplete descriptions
- When prioritizing: review linked dependencies
**Support (support):**
- When investigating bug: fetch full reproduction steps and comments
- When creating tasks: link to original bug report
- When escalating: include all bug context
**QA (qa):**
- When creating tests: fetch acceptance criteria and edge cases
- When validating: check test requirements from story
- When reporting: link test results to original story
**Dev (dev):**
- When implementing: fetch technical notes from comments
- When fixing bug: review reproduction steps
- When completing: verify acceptance criteria met
**Architect (architect):**
- When reviewing epic: fetch scope and technical requirements
- When designing: review architectural decisions in comments
- When approving: check component relationships
**Peer (peer):**
- When reviewing: fetch story context and acceptance criteria
- When approving: verify implementation matches requirements
- When suggesting changes: reference architectural constraints
## Best Practices
1. **Always ask first** if context is ambiguous
2. **Cache fetched data** for the conversation session
3. **Format consistently** for readability
4. **Handle errors gracefully** - never block workflow on Jira failures
5. **Respect privacy** - only fetch explicitly referenced issues
6. **Link issues** - always include clickable Jira links
7. **Extract acceptance criteria carefully** - critical for implementation
8. **Note blocking issues** - important for planning
9. **Preserve formatting** - maintain description structure
10. **Offer follow-ups** - suggest related fetches when relevant
## Output
**On Success:**
- Formatted issue summary displayed to user
- Issue context available for agent workflow
- Clickable Jira link included
- Follow-up actions offered
**On Failure:**
- Clear error message
- Recovery options offered
- Workflow continues without Jira context
- No blocking behavior
## Completion Criteria
- Issue details retrieved or error handled gracefully
- Formatted summary displayed to user (if successful)
- Issue context integrated into agent workflow
- User can proceed with requested task
- No workflow blocking on Jira failures
No comments yet. Be the first to comment!