jira

lanej's avatarfrom lanej

Use jira CLI for Jira operations including issue management, project queries, transitions, and JQL search

⭐34stars🔀11forks📁View on GitHub🕐Updated Nov 26, 2025

When & Why to Use This Skill

This Claude skill integrates the Jira CLI to empower users with seamless issue tracking and project management capabilities directly within their AI workflow. By leveraging powerful JQL searches and comprehensive issue management commands, it streamlines agile processes, from bug triaging to sprint planning, ensuring teams stay organized and productive without switching contexts.

Use Cases

  • Daily Standup Preparation: Automatically fetch and summarize all issues updated in the last 24 hours or currently 'In Progress' to streamline team sync-ups.
  • Automated Bug Triage: Identify unassigned high-priority bugs using JQL and quickly assign them to the appropriate team members or update their status.
  • Seamless Issue Lifecycle Management: Create, update, and transition Jira tickets through various workflow stages (e.g., from 'To Do' to 'Done') using simple CLI commands.
  • Advanced Project Reporting: Execute complex Jira Query Language (JQL) queries to generate custom reports on sprint progress, backlog health, or specific team velocity.
  • Collaborative Commenting and Tracking: Add internal notes, list existing comments, and manage watchers on specific issues to maintain clear communication across the development team.
namejira
descriptionUse jira CLI for Jira operations including issue management, project queries, transitions, and JQL search

Jira CLI Skill

You are a Jira specialist using the jira CLI tool. This skill provides comprehensive guidance for working with Jira through a custom CLI.

Core Commands

Authentication

# Check authentication status
jira auth check

# Login to Jira
jira auth login

Issue Management

# View issue details
jira issue get ISSUE-123

# Create new issue
jira issue create --project PROJ --type Bug --summary "Issue summary" --description "Description"

# Update issue
jira issue update ISSUE-123 --summary "New summary"

# Add comment to issue
jira comment add ISSUE-123 "Comment text"

# List comments on issue
jira comment list ISSUE-123

Issue Transitions

# List available transitions for an issue
jira transition list ISSUE-123

# Transition issue to new status
jira transition ISSUE-123 "In Progress"

Searching with JQL

# Search issues with JQL
jira search "project = PROJ AND status = Open"

# Search with output format
jira search "assignee = currentUser()" --format json

# Search with field selection
jira search "project = PROJ" --fields summary,status,assignee

Project Operations

# List all projects
jira project list

# Get project details
jira project get PROJ

Watching and Assigning

# Watch an issue
jira watch add ISSUE-123

# Stop watching an issue
jira watch remove ISSUE-123

# Assign issue
jira assign ISSUE-123 username

# Assign to self
jira assign ISSUE-123 me

Common Workflows

Viewing Your Work

# View issues assigned to you
jira search "assignee = currentUser() AND status != Done"

# View issues you're watching
jira search "watcher = currentUser()"

# View recent activity
jira search "updatedDate >= -7d AND assignee = currentUser()"

Creating and Updating Issues

# Create a bug
jira issue create --project PROJ --type Bug \
  --summary "Login button not working" \
  --description "Steps to reproduce..."

# Update priority
jira issue update ISSUE-123 --priority High

# Add labels
jira issue update ISSUE-123 --labels bug,frontend

# Link issues
jira link add ISSUE-123 ISSUE-456 "blocks"

Moving Issues Through Workflow

# Start work on issue
jira transition ISSUE-123 "In Progress"

# Mark as done
jira transition ISSUE-123 "Done"

# Reopen issue
jira transition ISSUE-123 "Reopen"

JQL Reference

Common JQL Patterns

# Issues in specific project
jira search "project = MYPROJ"

# Open issues assigned to you
jira search "assignee = currentUser() AND status in (Open, 'In Progress')"

# High priority bugs
jira search "type = Bug AND priority = High"

# Recently updated issues
jira search "updated >= -1w"

# Issues created this sprint
jira search "sprint in openSprints() AND created >= startOfWeek()"

# Issues with specific label
jira search "labels = urgent"

# Issues in epic
jira search "'Epic Link' = EPIC-123"

JQL Field Reference

  • project - Project key or name
  • status - Issue status (Open, In Progress, Done, etc.)
  • assignee - Assigned user (use currentUser() for yourself)
  • reporter - Issue reporter
  • priority - Priority level (Highest, High, Medium, Low, Lowest)
  • type - Issue type (Bug, Story, Task, Epic, etc.)
  • labels - Issue labels
  • created - Creation date
  • updated - Last update date
  • resolution - Resolution status

JQL Functions

  • currentUser() - Current logged-in user
  • startOfDay(), startOfWeek(), startOfMonth() - Date functions
  • now() - Current timestamp
  • openSprints() - Currently active sprints
  • closedSprints() - Completed sprints

Output Formats

# JSON output (for scripting)
jira search "project = PROJ" --format json

# Table output (human-readable, default)
jira search "project = PROJ" --format table

# CSV output
jira search "project = PROJ" --format csv

Best Practices

  1. Always authenticate first: Run jira auth check before operations
  2. Use JQL for complex queries: More powerful than simple filters
  3. Specify output format: Use --format json for scripting
  4. Include field selection: Use --fields to limit returned data
  5. Test transitions: Use jira transition list before transitioning
  6. Be specific with JQL: Use quotes for multi-word values

Common Use Cases

Daily Standup Prep

# What you worked on yesterday
jira search "assignee = currentUser() AND updated >= -1d"

# What you're working on today
jira search "assignee = currentUser() AND status = 'In Progress'"

Bug Triage

# Unassigned bugs
jira search "type = Bug AND assignee is EMPTY AND status = Open"

# Critical bugs in project
jira search "project = PROJ AND type = Bug AND priority in (Highest, High)"

Sprint Planning

# Issues in backlog
jira search "project = PROJ AND status = 'To Do' AND sprint is EMPTY"

# Issues in current sprint
jira search "project = PROJ AND sprint in openSprints()"

# Completed this sprint
jira search "project = PROJ AND sprint in openSprints() AND status = Done"

Error Handling

If you encounter authentication errors:

jira auth login

If JQL syntax errors occur:

  • Check for proper quoting of multi-word values
  • Verify field names are correct
  • Use AND, OR, NOT operators (uppercase)

Quick Reference

# View issue
jira issue get ISSUE-123

# Search
jira search "JQL query here"

# Create
jira issue create --project PROJ --type TYPE --summary "text"

# Update
jira issue update ISSUE-123 --field value

# Transition
jira transition ISSUE-123 "Status Name"

# Comment
jira comment add ISSUE-123 "Comment text"

# Assign
jira assign ISSUE-123 username