LinuxCommandLibrary

jira

Manage Jira issues and projects

TLDR

Create a configuration file (required before using jira)

$ jira init
copy

List recent issues
$ jira issue [[ls|list]]
copy

List unassigned issues with high priority
$ jira issue [[ls|list]] [[-a|--assignee]] x [[-y|--priority]] High
copy

List issues from the current sprint, assigned to me
$ jira sprint [[ls|list]] --current [[-a|--assignee]] $(jira me)
copy

Create a new issue with a parent issue
$ jira issue create [[-P|--parent]] [parent]
copy

Open an issue in the browser
$ jira open [123]
copy

SYNOPSIS

jira [global-options] <command> [<command-options>] [<arguments>]

PARAMETERS

-p, --plain
    Disable colors and use plain text output

-q, --quiet
    Suppress progress bars and extra info

-v, --verbose
    Enable verbose logging

-d, --debug
    Enable debug mode with full API traces

-f, --format <format>
    Output format: table|json|yaml|template (<format>)

--config <path>
    Path to config file (default: ~/.config/jira/config.yml)

--server <server>
    Jira server alias from config

-a, --action <action>
    Action for certain commands (e.g., list|create)

--no-color
    Disable colored output

--no-pager
    Disable paging for long outputs

-h, --help
    Show command help

-V, --version
    Print version info

DESCRIPTION

The jira command is a feature-rich, open-source CLI tool for interacting with Atlassian Jira from the Linux terminal. Developed by Ankit Pokhrel, it simplifies issue tracking, project management, and workflow automation without needing a web browser.

Key features include creating, viewing, editing, and transitioning Jira issues; managing filters, projects, and workspaces; exporting data in formats like CSV or JSON; cloning issues into git branches; and server/context switching for multi-instance support. It supports YAML templates for bulk operations, custom fields, and rich querying with JQL.

Authentication uses personal access tokens or OAuth, stored securely in config files (~/.config/jira). Output formats include tables, JSON, plain text, or custom templates. Verbose logging and debugging aid troubleshooting API interactions.

Ideal for developers integrating Jira into CI/CD pipelines, scripting repetitive tasks, or power users preferring terminal efficiency over GUI. Requires Go 1.21+ for installation via go install or package managers like Homebrew. Actively maintained with regular updates for Jira Cloud/Server compatibility.

CAVEATS

Requires initial setup with jira login or jira auth; supports Jira Cloud/Server/Data Center but verify API compatibility; rate limits apply per Jira instance; config is YAML and user-editable but backup recommended.

INSTALLATION

go install github.com/ankitpokhrel/jira-cli/v2/jira@latest
Or brew install jira-cli/tap/jira on macOS/Linuxbrew.
Arch: AUR package jira-cli.

QUICK START

1. jira login -- Enter token/URL.
2. jira ls -- List issues.
3. jira issue create -t bug 'Fix crash'.

SUBCOMMANDS

Core: issue, filter, project, context, template, clone. Full list: jira --help.

HISTORY

Initial release in 2020 by Ankit Pokhrel as jira-cli. Rewritten in Go for v2 (2023), now at v2.15+. GitHub stars: 5k+. Focuses on stability, JQL enhancements, and multi-server support amid Jira API evolutions.

SEE ALSO

curl(1), git(1), jq(1)

Copied to clipboard