Use when you have a written implementation plan to execute in a separate session with review checkpoints
npx skills add straub/agent-skills --skill "jira-cli"
Install specific skill from multi-skill repository
# Description
Interact with Jira using the jira-cli command-line tool to manage issues, sprints, epics, and boards. Use when working with Jira tickets, sprint planning, issue tracking, or when the user mentions Jira, tickets, sprints, epics, or issue management.
# SKILL.md
name: jira-cli
description: Interact with Jira using the jira-cli command-line tool to manage issues, sprints, epics, and boards. Use when working with Jira tickets, sprint planning, issue tracking, or when the user mentions Jira, tickets, sprints, epics, or issue management.
compatibility: Requires jira-cli installed and configured (jira init)
Jira CLI
Use jira-cli to interact with Jira from the command line.
Prerequisites
- Jira CLI installed and configured with
jira init - Config:
~/.config/.jira/.config.yml(override withJIRA_CONFIG_FILE)
Critical Usage Patterns
Always use --plain for listing and --no-input for creation to avoid interactive mode:
jira issue list --plain # β Parseable output
jira issue create --no-input # β Skip prompts
jira issue view KEY --raw # β JSON output
Creating Issues: Template-First Workflow
IMPORTANT: Always use a template file for issue creation to avoid shell escaping and formatting issues with bullets, quotes, and special characters.
Recommended Workflow
-
Research style first - Query recent issues of the same type to match team conventions:
bash jira issue list -p PROJECT -t"Spike" --created month --plain --columns key,summary,status jira issue view KEY --plain # View a few to understand description style -
Draft in a template file - Create
/tmp/issue-template.mdwith the description body only (no frontmatter needed). Let user review and edit before proceeding. -
Create using
--template- This avoids all shell escaping issues:
bash jira issue create -p PROJECT -t TYPE -s "Summary" -P "PARENT-KEY" \ --template /tmp/issue-template.md --no-input
Template File Format
The template file contains only the description body in Jira-flavored markdown:
As a [role], I want [what], so that [benefit].
* First action item
- Sub-item with detail
- Another sub-item
* Second action item
* Third action item
Quick Create (simple descriptions only)
For single-line or very simple descriptions without special characters:
jira issue create -p PROJECT -t Task -s "Summary" -b "Simple description" --no-input
Common Options
-p PROJECT # Project key
-t TYPE # Issue type (Bug, Story, Task, Spike, etc.)
-s "Summary" # Issue title
-P "PARENT-KEY" # Parent epic or issue
-y PRIORITY # Priority (High, Critical, etc.)
-a "user@email" # Assignee
-l label # Labels (repeat for multiple)
--template FILE # Description from file (RECOMMENDED)
--no-input # Skip interactive prompts
--web # Open in browser after creation
Listing and Viewing Issues
# View single issue
jira issue view KEY --plain
jira issue view KEY --raw # JSON output
jira issue view KEY --comments 10 # Include comments
# List with filters
jira issue list -p PROJECT --plain
jira issue list -t TYPE --plain # By type
jira issue list -s "In Progress" --plain # By status
jira issue list -a "user@email" --plain # By assignee
jira issue list -y High --plain # By priority
jira issue list -P "PARENT-KEY" --plain # By parent
jira issue list -l label --plain # By label
# Date filters
jira issue list --created month --plain
jira issue list --updated "-7d" --plain
# Custom columns and output
jira issue list --plain --columns key,summary,status,assignee
# JQL for complex queries
jira issue list -q "project = MPD AND status = 'In Progress'" --plain
Updating Issues
jira issue edit KEY -s "New summary"
jira issue edit KEY --priority Critical
jira issue edit KEY --assignee "user@email"
jira issue edit KEY --label newlabel
jira issue assign KEY "user@email"
jira issue assign KEY -x # Unassign
jira issue move KEY "In Progress" # Transition status
jira issue comment add KEY -m "Comment"
jira issue link KEY1 KEY2 "relates to"
Sprints and Epics
# Sprints
jira sprint list --table --plain
jira sprint list --state active --plain
jira sprint list --current --plain # Current sprint issues
# Epics
jira epic list --table --plain
jira epic list EPIC-KEY --plain # Issues in epic
jira epic add EPIC-KEY ISSUE-KEY # Add issue to epic
Other Operations
jira open KEY # Open in browser
jira me --plain # Current user
jira project list --plain
jira board list --plain
JQL Quick Reference
assignee = currentUser()
assignee is EMPTY
status not in ("Done", "Closed")
updated >= -7d
project = MPD AND priority in (High, Highest)
parent = EPIC-KEY
ORDER BY created DESC
Notes
- Default pagination is 100 items; use
--paginate Nfor more - Custom fields require field ID:
--custom field-id=value - Debug with
jira --debug
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.