Labsco
microsoft logo

jira

โœ“ Officialโ˜… 1,245

by microsoft ยท part of microsoft/hve-core

Jira issue workflows for search, issue updates, transitions, comments, and field discovery via the Jira REST API. Use when you need to search with JQL, inspect an issue, create or update work items, move an issue between statuses, post comments, or discover required fields for issue creation.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedFreeQuick setup
๐Ÿงฉ One of 7 skills in the microsoft/hve-core package โ€” works on its own, and pairs well with its siblings.

This is the playbook your agent receives when the skill activates โ€” you don't need to read it to use the skill, but it's here to audit before installing.

Jira Skill

Overview

This skill provides a Python CLI for common Jira REST API workflows:

  • Search with JQL
  • Get issue details
  • Create and update issues with JSON payloads
  • Transition issues by name or ID
  • Add comments and list existing comments
  • Discover issue types and required fields for creation

The skill supports Jira Cloud with email plus API token authentication and Jira Server or Data Center with a personal access token.

Use --fields on read commands by default to keep output concise. The script supports dot-notation such as fields.status.name and prints tab-separated output for lists.

Parameters Reference

Command or optionSyntaxDefaultDescription
searchpython scripts/jira.py search '<jql>' [max_results]max_results = 50Search for issues with JQL
getpython scripts/jira.py get <ISSUE-KEY>NoneGet one issue
createpython scripts/jira.py create '<json>'Reads stdin if omittedCreate an issue from JSON
updatepython scripts/jira.py update <ISSUE-KEY> '<json>'Reads stdin if omittedUpdate an issue from JSON
transitionpython scripts/jira.py transition <ISSUE-KEY> '<name-or-id>'NoneMove an issue to another workflow state
commentpython scripts/jira.py comment <ISSUE-KEY> '<body>'Reads stdin if omittedAdd a comment to an issue
commentspython scripts/jira.py comments <ISSUE-KEY> [ISSUE-KEY ...]NoneList comments across one or more issues
fieldspython scripts/jira.py fields <PROJECT-KEY> [issue-type-id]NoneDiscover issue types or required create fields
--fields--fields key,fields.summary,...NoneExtract selected fields from search, get, and comments output

Script Reference

Search for Issues

Use bounded JQL for Jira Cloud queries. Include a project, assignee, sprint, or another filter instead of a bare ORDER BY query. See JQL Reference for the query patterns this skill expects.

python scripts/jira.py --fields key,fields.summary,fields.status.name search 'project = PROJ AND status = "In Progress"'
python scripts/jira.py --fields key,fields.summary search 'assignee = currentUser() ORDER BY updated DESC' 10

Get One Issue

python scripts/jira.py --fields key,fields.summary,fields.priority.name,fields.status.name get PROJ-123

Create an Issue

Discover valid issue types first:

python scripts/jira.py fields PROJ

Inspect required fields for one issue type:

python scripts/jira.py fields PROJ 10045

Create the issue:

python scripts/jira.py create '{
  "fields": {
    "project": { "key": "PROJ" },
    "summary": "Document rollout checklist",
    "issuetype": { "name": "Task" },
    "labels": ["docs", "release"]
  }
}'

Update an Issue

python scripts/jira.py update PROJ-123 '{
  "fields": {
    "summary": "Updated summary",
    "priority": { "name": "High" },
    "labels": ["backend", "urgent"]
  }
}'

Transition an Issue

Use a transition display name or a numeric transition ID:

python scripts/jira.py transition PROJ-123 'In Progress'
python scripts/jira.py transition PROJ-123 31

If a transition name is not found, the script returns the available transition names in the error output.

Comment on an Issue

python scripts/jira.py comment PROJ-123 'PR #42 addresses this issue.'
printf 'Deployed to staging.\n' | python scripts/jira.py comment PROJ-123

List Comments

python scripts/jira.py --fields _issue,author.displayName,created,body comments PROJ-123 PROJ-456