jira-assistant

tech-leads-club/agent-skills · updated May 23, 2026

MDX-style export adds YAML metadata + attribution linking explainx.ai and this canonical listing URL.

$npx skills add https://github.com/tech-leads-club/agent-skills --skill jira-assistant
0 commentsdiscussion
summary

Manage Jira issues via Atlassian MCP — search, create, update, transition status, and handle sprint tasks. Auto-detects workspace configuration. Use when user says "create a Jira ticket", "update my sprint", "check Jira status", "transition this issue", "search Jira", or "move ticket to done". Do NOT use for Confluence pages (use confluence-assistant).

skill.md
description
Manage Jira issues via Atlassian MCP — search, create, update, transition status, and handle sprint tasks. Auto-detects workspace configuration. Use when user says "create a Jira ticket", "update my sprint", "check Jira status", "transition this issue", "search Jira", or "move ticket to done". Do NOT use for Confluence pages (use confluence-assistant).
name
jira-assistant

Jira Assistant

You are an expert in using Atlassian MCP tools to interact with Jira.

When to Use

Use this skill when the user asks to:

  • Search for Jira issues or tasks
  • Create new Jira issues (Task, Epic, Subtask)
  • Update existing issues
  • Transition issue status (To Do → In Progress → Done, etc.)
  • Add comments to issues
  • Manage assignees
  • Query issues with specific criteria

Configuration

Project Detection Strategy (Automatic):

  1. Check workspace rules first: Look for Jira configuration in .cursor/rules/jira-config.mdc
  2. If not found: Use MCP search tools to discover available projects
  3. If still unclear: Ask user to specify project key
  4. Use detected values for all Jira operations in this conversation

Configuration Detection Workflow

When you activate this skill:

  1. Check if workspace has .cursor/rules/jira-config.mdc with Jira configuration
  2. If found, extract and use: Project Key, Cloud ID, URL, Board URL
  3. If not found:
    • Use search("jira projects I have access to") via MCP
    • Present discovered projects to user
    • Ask: "Which Jira project should I use? (e.g., KAN, PROJ, DEV)"
  4. Store the configuration for this conversation and proceed with operations

Note for skill users: To configure this skill for your workspace, create .cursor/rules/jira-config.mdc with your project details.

Workflow

1. Finding Issues (Always Start Here)

Use search (Rovo Search) first for general queries:

search("issues in {PROJECT_KEY} project")
search("tasks assigned to me")
search("bugs in progress")
  • Natural language works better than JQL for general searches
  • Faster and more intuitive
  • Returns relevant results quickly
  • Replace {PROJECT_KEY} with the detected project key from configuration

2. Searching with Specific Criteria

Use searchJiraIssuesUsingJql when you need precise filters:

⚠️ ALWAYS include project = {PROJECT_KEY} in JQL queries

Examples (replace {PROJECT_KEY} with detected project key):

project = {PROJECT_KEY} AND status = "In Progress"
project = {PROJECT_KEY} AND assignee = currentUser() AND created >= -7d
project = {PROJECT_KEY} AND type = "Epic" AND status != "Done"
project = {PROJECT_KEY} AND priority = "High"

3. Getting Issue Details

Depending on what you have:

  • If you have ARI: fetch(ari)
  • If you have issue key/id: getJiraIssue(cloudId, issueKey)

4. Creating Issues

ALWAYS use the detected projectKey and cloudId from configuration

Step-by-step process:

a. View issue types:
   getJiraProjectIssueTypesMetadata(
     cloudId="{CLOUD_ID}",
     projectKey="{PROJECT_KEY}"
   )

b. View required fields:
   getJiraIssueTypeMetaWithFields(
     cloudId="{CLOUD_ID}",
     projectKey="{PROJECT_KEY}",
     issueTypeId="from-step-a"
   )

c. Create the issue:
   createJiraIssue(
     cloudId="{CLOUD_ID}",
     projectKey="{PROJECT_KEY}",
     issueTypeName="Task",
     summary="Brief task description",
     description="## Context\n..."
   )

Note: Replace {PROJECT_KEY} and {CLOUD_ID} with values from detected configuration.

Available issue types:

  • Task (default)
  • Epic
  • Subtask (requires parent field with parent issue key)

5. Updating and Transitioning Issues

Edit fields:

editJiraIssue(cloudId, issueKey, fields)

Change status:

1. Get available transitions:
   getTransitionsForJiraIssue(cloudId, issueKey)

2. Apply transition:
   transitionJiraIssue(cloudId, issueKey, transitionId)

Add comment:

addCommentToJiraIssue(cloudId, issueKey, comment)

Default Task Template

ALWAYS use this template in the description field when creating issues:

## Context

[Brief explanation of the problem or need]

## Objective

[What needs to be accomplished]

## Technical Requirements

[This is high level, it doesn't mention which class or file, but the technical high level objective]

- [ ] Requirement 1
- [ ] Requirement 2
- [ ] Requirement 3

## Acceptance Criteria

- [ ] Criteria 1
- [ ] Criteria 2
- [ ] Criteria 3

## Technical Notes

[Don't include file paths as they can change overtime]
[Technical considerations, dependencies, relevant links]

## Estimate

[Time estimate or story points, if applicable]

Best Practices

✅ DO

  • Always use the detected project key in all operations
  • Always use Markdown in the description field
  • Use search first for natural language queries
  • Use JQL for precise filtering (but always include project = {PROJECT_KEY})
  • Follow the task template for consistency
  • Avoid file paths in descriptions (they change over time)
  • Keep summaries brief and descriptions detailed

⚠️ IMPORTANT

  • Issue ID is numeric (internal)
  • Issue Key is "{PROJECT_KEY}-123" format (user-facing)
  • To create subtasks: Use the parent field with parent issue key
  • CloudId can be URL or UUID - both work
  • Use detected configuration values from workspace rules or user input

Examples

Example 1: Create a Task

User: "Create a task to implement user authentication"

createJiraIssue(
  cloudId="{CLOUD_ID}",
  projectKey="{PROJECT_KEY}",
  issueTypeName="Task",
  summary="Implement user authentication endpoint",
  description="## Context
We need to secure our API endpoints with user authentication.

## Objective
Implement JWT-based authentication for API access.

## Technical Requirements
- [ ] Create authentication middleware
- [ ] Implement JWT token generation
- [ ] Add token validation
- [ ] Secure existing endpoints

## Acceptance Criteria
- [ ] Users can login with credentials
- [ ] JWT tokens are generated on successful login
- [ ] Protected endpoints validate tokens
- [ ] Invalid tokens return 401

## Technical Notes
Use bcrypt for password hashing, JWT for tokens, and implement refresh token logic.

## Estimate
5 story points"
)

Note: Use actual values from detected configuration in place of placeholders.

Example 2: Search and Update Issue

User: "Find my in-progress tasks and update the first one"

1. searchJiraIssuesUsingJql(
     cloudId="{CLOUD_ID}",
     jql="project = {PROJECT_KEY} AND assignee = currentUser() AND status = 'In Progress'"
   )

2. editJiraIssue(
     cloudId="{CLOUD_ID}",
     issueKey="{PROJECT_KEY}-123",
     fields={ "description": "## Context\nUpdated context..." }
   )

Note: Replace placeholders with detected configuration values.

Example 3: Transition Issue Status

User: "Move task {PROJECT_KEY}-456 to Done"

1. getTransitionsForJiraIssue(cloudId="{CLOUD_ID}", issueKey="{PROJECT_KEY}-456")

2. transitionJiraIssue(
     cloudId="{CLOUD_ID}",
     issueKey="{PROJECT_KEY}-456",
     transitionId="transition-id-for-done"
   )

Note: Replace placeholders with detected configuration values.

Example 4: Create Subtask

User: "Create a subtask for {PROJECT_KEY}-789"

createJiraIssue(
  cloudId="{CLOUD_ID}",
  projectKey="{PROJECT_KEY}",
  issueTypeName="Subtask",
  parent="{PROJECT_KEY}-789",
  summary="Implement validation logic",
  description="## Context\nSubtask for implementing input validation..."
)

Note: Replace placeholders with detected configuration values.

Common JQL Patterns

All queries MUST include project = {PROJECT_KEY} (use detected project key):

# My current work
project = {PROJECT_KEY} AND assignee = currentUser() AND status = "In Progress"

# Recent issues
project = {PROJECT_KEY} AND created >= -7d

# High priority bugs
project = {PROJECT_KEY} AND type = Bug AND priority = High

# Epics without completion
project = {PROJECT_KEY} AND type = Epic AND status != Done

# Unassigned tasks
project = {PROJECT_KEY} AND assignee is EMPTY AND status = "To Do"

# Issues updated this week
project = {PROJECT_KEY} AND updated >= startOfWeek()

Note: Replace {PROJECT_KEY} with the actual project key from detected configuration.

Important Notes

  • Project key is mandatory - Always include project = {PROJECT_KEY} in JQL queries
  • Use detected configuration - Read from .cursor/rules/jira-config.mdc or ask user
  • Use Markdown in descriptions - Not HTML or plain text
  • Follow the template - Maintains consistency across issues
  • Natural language search first - Use JQL only when needed
  • Avoid file paths - They change and become outdated
  • Keep technical notes high-level - Focus on approach, not implementation details
  • Story points are optional - Include estimates when relevant
how to use jira-assistant

How to use jira-assistant on Cursor

AI-first code editor with Composer

1

Prerequisites

Before installing skills in Cursor, ensure your development environment meets these requirements:

  • Cursor installed and configured on your development machine
  • Node.js version 16.0+ with npm package manager (verify with node --version)
  • Active project directory or workspace where you want to add jira-assistant
2

Execute installation command

Execute the skills CLI command in your project's root directory to begin installation:

$npx skills add https://github.com/tech-leads-club/agent-skills --skill jira-assistant

The skills CLI fetches jira-assistant from GitHub repository tech-leads-club/agent-skills and configures it for Cursor.

3

Select Cursor when prompted

The CLI will show a list of available agents. Use arrow keys to navigate and space to select Cursor:

◆ Which agents do you want to install to?
│ ── Universal (.agents/skills) ── always included ────
│ • Amp
│ • Antigravity
│ • Cline
│ • Codex
│ ●Cursor(selected)
│ • Cursor
│ • Windsurf
4

Verify installation

Confirm successful installation by checking the skill directory location:

.cursor/skills/jira-assistant

Reload or restart Cursor to activate jira-assistant. Access the skill through slash commands (e.g., /jira-assistant) or your agent's skill management interface.

Security & Verification Notice

We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.

Skills execute code in your development environment. Always verify the publisher's identity, review recent commits, and test in isolated environments before production deployment.

List & Monetize Your Skill

Submit your Claude Code skill and start earning

GET_STARTED →

Use Cases

Accelerate Code Development

Use skill to generate boilerplate code, refactor legacy code, and write tests faster

Example

Generate React component with TypeScript types, styled-components, and comprehensive test suite in minutes

Reduce development time by 40-60% for repetitive coding tasks

Code Review Automation

Systematically review code for bugs, security issues, and style violations

Example

Analyze pull requests for common anti-patterns, suggest performance improvements, flag security vulnerabilities

Catch 70%+ of code issues before human review, improve code quality

Debug Complex Issues

Trace errors through stack traces and identify root causes faster

Example

Analyze error logs, suggest probable causes, recommend fixes with code examples

Cut debugging time by 30-50%, especially for unfamiliar codebases

Learn New Technologies

Get explanations, examples, and best practices for unfamiliar frameworks

Example

Understand Next.js app router, learn Rust ownership, grasp Kubernetes concepts with practical examples

Accelerate learning curve by 2-3x, reduce onboarding time for new tech stacks

Implementation Guide

Prerequisites

  • Claude Desktop or compatible AI client with skill installation support
  • Basic understanding of programming concepts and version control (Git)
  • Code editor or IDE for testing generated code (VS Code, JetBrains, etc.)
  • Test environment separate from production for validating skill outputs

Time Estimate

15-30 minutes to install and see first useful output

Installation Steps

  1. 1.Install the skill using provided installation command
  2. 2.Verify skill is loaded in Claude Desktop (check ~/.claude/skills directory)
  3. 3.Test skill with simple prompt: 'Help me review this code snippet'
  4. 4.Gradually increase complexity: code generation → refactoring → architecture advice
  5. 5.Review all generated code before committing to repository
  6. 6.Iterate on prompts to improve output quality and relevance
  7. 7.Share effective prompts with team for consistency

Common Pitfalls

  • Blindly trusting generated code without testing—always run tests and manual review
  • Not providing enough context about your project structure and coding standards
  • Expecting perfection on first generation—iteration and refinement are normal
  • Sharing proprietary code or API keys in prompts—maintain confidentiality
  • Over-relying on skill for critical security or business logic code
  • Skipping documentation of why AI-generated code was chosen over alternatives

Best Practices

✓ Do

  • +Always review and test AI-generated code before merging
  • +Provide clear context: language, framework, coding standards, constraints
  • +Use for boilerplate, tests, docs—areas where mistakes are easily caught
  • +Iterate on prompts: start broad, refine with specific requirements
  • +Combine AI suggestions with human judgment and domain expertise
  • +Document successful prompt patterns for team reuse
  • +Keep version control so you can rollback if needed
  • +Use skill for learning and exploration, not production-critical features initially

✗ Don't

  • Don't commit AI code without thorough testing and review
  • Don't expose sensitive code, credentials, or proprietary algorithms
  • Don't use for security-critical code (auth, crypto, payments) without expert review
  • Don't skip peer review process just because AI generated it
  • Don't assume code follows your team's conventions—verify
  • Don't let junior developers skip learning fundamentals by relying solely on AI
  • Don't ignore compiler warnings or test failures in generated code

💡 Pro Tips

  • Describe desired patterns explicitly: 'Use async/await, avoid callbacks'
  • Ask for alternatives: 'Show 3 approaches to solve this, with tradeoffs'
  • Request explanations: 'Explain why this approach is better than X'
  • Use skill for 70% generation + 30% manual refinement for best results
  • Build a prompt library for common patterns (API endpoints, components, tests)
  • Pair program with AI: describe problem → review solution → iterate → refine

When to Use This

✓ Use When

Use coding skills for boilerplate generation, code reviews, refactoring legacy code, writing tests, learning new frameworks, and debugging non-critical issues. Best for repetitive tasks where errors are easy to catch.

✗ Avoid When

Avoid for production security features (auth, encryption, payment processing), complex business logic requiring deep domain knowledge, performance-critical algorithms, or when learning fundamentals is more valuable than speed.

Learning Path

  1. 1Start with simple tasks: generate functions, write tests, explain code
  2. 2Progress to code review: analyze PRs, suggest improvements
  3. 3Advanced: architectural decisions, refactoring strategies, performance optimization
  4. 4Expert: use for exploring new paradigms, researching best practices, mentoring juniors

Integration

  • VS Code
  • JetBrains IDEs
  • Cursor
  • GitHub Copilot
  • Git workflows

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.751 reviews
  • Aanya Dixit· Dec 24, 2024

    Registry listing for jira-assistant matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Dhruvi Jain· Dec 20, 2024

    Useful defaults in jira-assistant — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Liam Martin· Dec 20, 2024

    Solid pick for teams standardizing on skills: jira-assistant is focused, and the summary matches what you get after install.

  • Min Kapoor· Dec 16, 2024

    Useful defaults in jira-assistant — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Xiao Agarwal· Dec 12, 2024

    jira-assistant fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Min Khanna· Dec 8, 2024

    jira-assistant is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

  • Xiao Park· Nov 27, 2024

    jira-assistant reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Li Chen· Nov 15, 2024

    Keeps context tight: jira-assistant is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Oshnikdeep· Nov 11, 2024

    jira-assistant has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Liam Malhotra· Nov 11, 2024

    I recommend jira-assistant for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

showing 1-10 of 51

1 / 6