@hesed/jira
v0.3.0
Published
CLI for Jira API interaction
Readme
jira
CLI for Jira API interaction
Install
sdkck plugins install @hesed/jiraUsage
$ npm install -g @hesed/jira
$ jira COMMAND
running command...
$ jira (--version)
@hesed/jira/0.3.0 linux-x64 node-v22.22.1
$ jira --help [COMMAND]
USAGE
$ jira COMMAND
...Commands
jira jira auth addjira jira auth testjira jira auth updatejira jira board backlogs BOARDID [JQL]jira jira board list [PROJECTID]jira jira board sprint-issues BOARDID SPRINTID [JQL]jira jira board sprints BOARDIDjira jira board versions BOARDIDjira jira issue assign ISSUEID ACCOUNTIDjira jira issue attachment ISSUEID FILEjira jira issue attachment-download ISSUEID ATTACHMENTID [OUTPUTPATH]jira jira issue comment ISSUEID BODYjira jira issue comment-delete ISSUEID IDjira jira issue comment-update ISSUEID ID BODYjira jira issue createjira jira issue delete ISSUEIDjira jira issue get ISSUEIDjira jira issue search JQLjira jira issue transition ISSUEID TRANSITIONIDjira jira issue transitions ISSUEIDjira jira issue update ISSUEIDjira jira issue worklog ISSUEID STARTED TIMESPENT [COMMENT]jira jira issue worklog-delete ISSUEID IDjira jira issue worklogs ISSUEIDjira jira project get PROJECTIDjira jira project listjira jira user get [ACCOUNTID]jira jira user list-assignable ISSUEID
jira jira auth add
Add Atlassian authentication
USAGE
$ jira jira auth add -e <value> -t <value> -u <value> [--json]
FLAGS
-e, --email=<value> (required) Account email:
-t, --token=<value> (required) API Token:
-u, --url=<value> (required) Atlassian URL (start with https://):
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Add Atlassian authentication
EXAMPLES
$ jira jira auth addSee code: src/commands/jira/auth/add.ts
jira jira auth test
Test authentication and connection
USAGE
$ jira jira auth test [--json]
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Test authentication and connection
EXAMPLES
$ jira jira auth testSee code: src/commands/jira/auth/test.ts
jira jira auth update
Update existing authentication
USAGE
$ jira jira auth update -e <value> -t <value> -u <value> [--json]
FLAGS
-e, --email=<value> (required) Account email
-t, --token=<value> (required) API Token
-u, --url=<value> (required) Atlassian instance URL (start with https://)
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Update existing authentication
EXAMPLES
$ jira jira auth updateSee code: src/commands/jira/auth/update.ts
jira jira board backlogs BOARDID [JQL]
Get all issues from the board's backlog
USAGE
$ jira jira board backlogs BOARDID [JQL] [--fields <value>] [--max <value>] [--start <value>] [--toon]
ARGUMENTS
BOARDID Board ID
[JQL] JQL expression
FLAGS
--fields=<value> Extra list of fields to return
--max=<value> Maximum number of items per page
--start=<value> Index of the first item to return
--toon Format output as toon
DESCRIPTION
Get all issues from the board's backlog
EXAMPLES
$ jira jira board backlogs 123 'summary ~ "Error saving file" AND status IN ("ready", "in progress")'
$ jira jira board backlogs 123 'assignee="[email protected]" AND type=Bug' --max 5 --start 2
$ jira jira board backlogs 123 'timeestimate > 4h' --fields comment,creator,timeestimateSee code: src/commands/jira/board/backlogs.ts
jira jira board list [PROJECTID]
Get all boards
USAGE
$ jira jira board list [PROJECTID] [--max <value>] [--start <value>] [--toon]
ARGUMENTS
[PROJECTID] Project ID or project key
FLAGS
--max=<value> Maximum number of items per page
--start=<value> Index of the first item to return
--toon Format output as toon
DESCRIPTION
Get all boards
EXAMPLES
$ jira jira board list
$ jira jira board list PROJSee code: src/commands/jira/board/list.ts
jira jira board sprint-issues BOARDID SPRINTID [JQL]
Get all issues belong to the sprint from the board
USAGE
$ jira jira board sprint-issues BOARDID SPRINTID [JQL] [--fields <value>] [--max <value>] [--start <value>] [--toon]
ARGUMENTS
BOARDID Board ID
SPRINTID Sprint ID
[JQL] JQL expression
FLAGS
--fields=<value> Extra list of fields to return
--max=<value> Maximum number of items per page
--start=<value> Index of the first item to return
--toon Format output as toon
DESCRIPTION
Get all issues belong to the sprint from the board
EXAMPLES
$ jira jira board sprint-issues 123 3068 'summary ~ "Error saving file" AND status IN ("ready", "in progress")'
$ jira jira board sprint-issues 123 3068 'assignee="[email protected]" AND type=Bug' --max 5 --start 2
$ jira jira board sprint-issues 123 3068 'timeestimate > 4h' --fields comment,creator,timeestimateSee code: src/commands/jira/board/sprint-issues.ts
jira jira board sprints BOARDID
Get all sprints from a board
USAGE
$ jira jira board sprints BOARDID [--max <value>] [--start <value>] [--state <value>] [--toon]
ARGUMENTS
BOARDID Board ID
FLAGS
--max=<value> Maximum number of items per page
--start=<value> Index of the first item to return
--state=<value> Filters sprints in specified states (future, active, closed)
--toon Format output as toon
DESCRIPTION
Get all sprints from a board
EXAMPLES
$ jira jira board sprints 123
$ jira jira board sprints 123 --state activeSee code: src/commands/jira/board/sprints.ts
jira jira board versions BOARDID
Get all sprints from a board
USAGE
$ jira jira board versions BOARDID [--max <value>] [--released <value>] [--start <value>] [--toon]
ARGUMENTS
BOARDID Board ID
FLAGS
--max=<value> Maximum number of items per page
--released=<value> Filters versions release state (true, false)
--start=<value> Index of the first item to return
--toon Format output as toon
DESCRIPTION
Get all sprints from a board
EXAMPLES
$ jira jira board versions 123
$ jira jira board versions 123 --released falseSee code: src/commands/jira/board/versions.ts
jira jira issue assign ISSUEID ACCOUNTID
Assigns an issue to a user
USAGE
$ jira jira issue assign ISSUEID ACCOUNTID
ARGUMENTS
ISSUEID Issue ID or issue key
ACCOUNTID Account ID of the user
DESCRIPTION
Assigns an issue to a user
EXAMPLES
$ jira jira issue assign 5b10ac8d82e05b22cc7d4ef5 PROJ-123See code: src/commands/jira/issue/assign.ts
jira jira issue attachment ISSUEID FILE
Add an attachment to a Jira issue
USAGE
$ jira jira issue attachment ISSUEID FILE [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
FILE Path to the file to upload
FLAGS
--toon Format output as toon
DESCRIPTION
Add an attachment to a Jira issue
EXAMPLES
$ jira jira issue attachment ./document.pdf PROJ-123See code: src/commands/jira/issue/attachment.ts
jira jira issue attachment-download ISSUEID ATTACHMENTID [OUTPUTPATH]
Download attachment from an issue
USAGE
$ jira jira issue attachment-download ISSUEID ATTACHMENTID [OUTPUTPATH] [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
ATTACHMENTID Attachment ID
[OUTPUTPATH] Output file path
FLAGS
--toon Format output as toon
DESCRIPTION
Download attachment from an issue
EXAMPLES
$ jira jira issue attachment-download 123 PROJ-123
$ jira jira issue attachment-download 123 PROJ-123 ~/Desktop/test.jpgSee code: src/commands/jira/issue/attachment-download.ts
jira jira issue comment ISSUEID BODY
Add a comment to an issue
USAGE
$ jira jira issue comment ISSUEID BODY [--attach <value>...] [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
BODY Comment text content
FLAGS
--attach=<value>... Path to a file to upload and embed inline (can be used multiple times)
--toon Format output as toon
DESCRIPTION
Add a comment to an issue
EXAMPLES
$ jira jira issue comment PROJ-123 "# Header
- Item 1"
$ jira jira issue comment PROJ-123 "$(cat content.md)"
$ jira jira issue comment PROJ-123 "Here is the [bug](https://example.com/bug):
" --attach ./screenshot.png
$ jira jira issue comment PROJ-123 "Step 1:

Step 2:
" --attach ./step1.png --attach ./step2.mp4
$ jira jira issue comment PROJ-123 "See also" --attach ./extra.pngSee code: src/commands/jira/issue/comment.ts
jira jira issue comment-delete ISSUEID ID
Delete a comment
USAGE
$ jira jira issue comment-delete ISSUEID ID
ARGUMENTS
ISSUEID Issue ID or issue key
ID Comment ID to delete
DESCRIPTION
Delete a comment
EXAMPLES
$ jira jira issue comment-delete 123 PROJ-123See code: src/commands/jira/issue/comment-delete.ts
jira jira issue comment-update ISSUEID ID BODY
Update a comment
USAGE
$ jira jira issue comment-update ISSUEID ID BODY [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
ID Comment ID to delete
BODY Comment text content
FLAGS
--toon Format output as toon
DESCRIPTION
Update a comment
EXAMPLES
$ jira jira issue comment-update "
# Header
## Sub-header
- Item 1
- Item 2
```bash
ls -a
```" 123 PROJ-123
$ jira jira issue comment-update "$(cat content.md)" 123 PROJ-123See code: src/commands/jira/issue/comment-update.ts
jira jira issue create
Create a new issue
USAGE
$ jira jira issue create --fields <value>... [--toon]
FLAGS
--fields=<value>... (required) Issue fields in key=value format
--toon Format output as toon
DESCRIPTION
Create a new issue
EXAMPLES
$ jira jira issue create --fields project='{"key":"PROJ"}' summary="New summary" description="New description" issuetype='{"name":"Dev Task"}'
$ jira jira issue create --fields project='{"key":"PROJ"}' summary="New summary" timetracking='{"originalEstimate": "5h"}' issuetype='{"name":"Task"}' description='
# Header
## Sub-header
- Item 1
- Item 2
```bash
ls -a
```'
FLAG DESCRIPTIONS
--fields=<value>... Issue fields in key=value format
Minimum fields required: project, summary, description & issuetypeSee code: src/commands/jira/issue/create.ts
jira jira issue delete ISSUEID
Delete an issue
USAGE
$ jira jira issue delete ISSUEID
ARGUMENTS
ISSUEID Issue ID or issue key to delete
DESCRIPTION
Delete an issue
EXAMPLES
$ jira jira issue deleteSee code: src/commands/jira/issue/delete.ts
jira jira issue get ISSUEID
Get details of a specific issue
USAGE
$ jira jira issue get ISSUEID [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
FLAGS
--toon Format output as toon
DESCRIPTION
Get details of a specific issue
EXAMPLES
$ jira jira issue get PROJ-123See code: src/commands/jira/issue/get.ts
jira jira issue search JQL
Searches for issues using JQL
USAGE
$ jira jira issue search JQL [--fields <value>] [--max <value>] [--next <value>] [--toon]
ARGUMENTS
JQL JQL expression
FLAGS
--fields=<value> Extra list of fields to return
--max=<value> Maximum number of items per page
--next=<value> Token for next page
--toon Format output as toon
DESCRIPTION
Searches for issues using JQL
EXAMPLES
$ jira jira issue search 'project=PROJ AND summary ~ "Error saving file" AND status IN ("ready", "in progress")'
$ jira jira issue search 'assignee="[email protected]" AND type=Bug' --max 5 --next CiEjU3RyaW5nJlUwRlVTRkpGUlE9PSVJbnQmTkRFd05qST0QAhiQqtD4wTMiKGFzc2lnbmVlPSJhbGxlbkBpbmN1YmU4LnNnIiBBTkQgdHlwZT1CdWcqAltd
$ jira jira issue search 'timeestimate > 4h' --fields comment,creator,timeestimateSee code: src/commands/jira/issue/search.ts
jira jira issue transition ISSUEID TRANSITIONID
Performs an issue transition
USAGE
$ jira jira issue transition ISSUEID TRANSITIONID
ARGUMENTS
ISSUEID Issue ID or issue key
TRANSITIONID Issue transition ID
DESCRIPTION
Performs an issue transition
EXAMPLES
$ jira jira issue transition PROJ-123 123See code: src/commands/jira/issue/transition.ts
jira jira issue transitions ISSUEID
Get transitions that can be performed by the user on an issue
USAGE
$ jira jira issue transitions ISSUEID [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
FLAGS
--toon Format output as toon
DESCRIPTION
Get transitions that can be performed by the user on an issue
EXAMPLES
$ jira jira issue transitions PROJ-123See code: src/commands/jira/issue/transitions.ts
jira jira issue update ISSUEID
Update an existing issue
USAGE
$ jira jira issue update ISSUEID --fields <value>...
ARGUMENTS
ISSUEID Issue ID or issue key
FLAGS
--fields=<value>... (required) Issue fields to update in key=value format
DESCRIPTION
Update an existing issue
EXAMPLES
$ jira jira issue update PROJ-123 --fields summary='New summary' description='New description'
$ jira jira issue update PROJ-123 --fields description='
# Header
## Sub-header
- Item 1
- Item 2
```bash
ls -a
```'
$ jira jira issue update PROJ-123 --fields description="$(cat content.md)"
$ jira jira issue update PROJ-123 --fields timetracking='{"originalEstimate": "5h"}'See code: src/commands/jira/issue/update.ts
jira jira issue worklog ISSUEID STARTED TIMESPENT [COMMENT]
Add a worklog to an issue
USAGE
$ jira jira issue worklog ISSUEID STARTED TIMESPENT [COMMENT] [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
STARTED Datetime the worklog effort started
TIMESPENT Time spent working on the issue
[COMMENT] Comment text content
FLAGS
--toon Format output as toon
DESCRIPTION
Add a worklog to an issue
EXAMPLES
$ jira jira issue worklog PROJ-123 2026-02-03T12:34:00.000+0000 "1d 4h" "
# Header
## Sub-header"
$ jira jira issue worklog PROJ-123 $(date +"%Y-%m-%dT%H:%M:%S.000%z") 6h "Fix test"
$ jira jira issue worklog PROJ-123 $(date +"%Y-%m-%dT08:30:00.000%z") 6hSee code: src/commands/jira/issue/worklog.ts
jira jira issue worklog-delete ISSUEID ID
Delete a worklog
USAGE
$ jira jira issue worklog-delete ISSUEID ID
ARGUMENTS
ISSUEID Issue ID or issue key
ID Worklog ID to delete
DESCRIPTION
Delete a worklog
EXAMPLES
$ jira jira issue worklog-delete 123 PROJ-123See code: src/commands/jira/issue/worklog-delete.ts
jira jira issue worklogs ISSUEID
List all boards
USAGE
$ jira jira issue worklogs ISSUEID [--max <value>] [--start <value>] [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
FLAGS
--max=<value> Maximum number of items per page
--start=<value> Index of the first item to return
--toon Format output as toon
DESCRIPTION
List all boards
EXAMPLES
$ jira jira issue worklogs PROJ-123See code: src/commands/jira/issue/worklogs.ts
jira jira project get PROJECTID
Get details of a specific project
USAGE
$ jira jira project get PROJECTID [--toon]
ARGUMENTS
PROJECTID Project ID or project key
FLAGS
--toon Format output as toon
DESCRIPTION
Get details of a specific project
EXAMPLES
$ jira jira project getSee code: src/commands/jira/project/get.ts
jira jira project list
List all accessible projects
USAGE
$ jira jira project list [--toon]
FLAGS
--toon Format output as toon
DESCRIPTION
List all accessible projects
EXAMPLES
$ jira jira project listSee code: src/commands/jira/project/list.ts
jira jira user get [ACCOUNTID]
Get user information
USAGE
$ jira jira user get [ACCOUNTID] [-q <value>] [--toon]
ARGUMENTS
[ACCOUNTID] User account ID
FLAGS
-q, --query=<value> Query string that matches user attributes
--toon Format output as toon
DESCRIPTION
Get user information
EXAMPLES
$ jira jira user get
$ jira jira user get 5b10ac8d82e05b22cc7d4ef5
$ jira jira user get -query john
$ jira jira user get -q [email protected]See code: src/commands/jira/user/get.ts
jira jira user list-assignable ISSUEID
List users that can be assigned to an issue
USAGE
$ jira jira user list-assignable ISSUEID [-q <value>] [--toon]
ARGUMENTS
ISSUEID Issue ID or issue key
FLAGS
-q, --query=<value> Query string that matches user attributes
--toon Format output as toon
DESCRIPTION
List users that can be assigned to an issue
EXAMPLES
$ jira jira user list-assignable PROJ-123
$ jira jira user list-assignable PROJ-123 -q john