Skip to main content

CI PyPI version

Jira CLI

Think github-cli but for Jira.

Modular, class-based Jira command-line tool for issue listing, searching, and management.

There's a CLI (jira issue ...) and an interactive TUI (jira tui --project PROJ). Both are self-explanatory via --help / the in-app ? help — see docs/features.md for the full feature overview and TUI keyboard shortcuts.

Installation

# Editable install for local development
uv tool install --editable .
jira --help
# Remote/published, via uvx
uvx --from colenio-jira-cli jira-cli issue list --project PROJ

The PyPI/package name is colenio-jira-cli; the installed commands are jira and jira-cli (both run the same CLI). See docs/distribution.md for other install options (pip, venv).

For screenshots, screencasts, or trying the TUI without Jira credentials, use synthetic demo data:

jira tui --demo

GitHub Issues can be browsed read-only in the TUI. Authentication uses GH_TOKEN or your existing gh auth login session, and -R works like gh -R owner/name:

jira tui --provider github -R colenio/jira-cli

Screenshots

The default issue table is optimized for quick triage: type, key, summary, status, assignee, and priority stay visible while the detail pane follows the current selection.

Jira CLI demo issue table

The board view groups the same issue source by workflow status, with Backlog on the left and done states on the right.

Jira CLI demo board view

Setup

Start with the tracked local.env.example: copy it to local.env or .env, then replace the placeholder values. Never commit the copied file because it contains credentials.

The CLI searches the current directory and up to three parent directories. In each directory it checks local.env before .env and loads the first matching file. Existing process environment variables are used when no file is found.

# Required
JIRA_URL=https://company.atlassian.net
JIRA_EMAIL=user@example.com
JIRA_API_TOKEN=your_api_token_here

# Optional
JIRA_PROJECT=PROJ      # Default project for list/find/tui

Get your API token from Jira Cloud: Account Settings → Security → Create API Token.

For GitHub, set GH_TOKEN, configure GH_REPO or GH_PROJECT as needed, or use an existing gh auth login session. Validate configured contexts before starting the TUI with:

jira validate
jira validate --provider jira --project PROJ
jira validate --provider github --repo owner/repository

For GitLab, set GITLAB_TOKEN to a personal, project, or group access token with the api scope, and set GITLAB_PROJECT to a project path or numeric ID. GITLAB_URL is optional and defaults to https://gitlab.com. Start the TUI with jira tui --provider gitlab --project group/project. The api scope is sufficient; no additional user scope is required.

The TUI can display the authenticated user's email from GitLab's GET /user response. Other project members expose only their public email addresses to regular users; private member emails are not made visible by adding ordinary token scopes. On self-managed instances, an administrator can optionally set GITLAB_ADMIN_TOKEN to a separate admin PAT; the provider then reads private member emails through the admin Users API and falls back to public emails if that lookup is denied. The admin token must belong to an administrator. Current GitLab documentation calls the additional self-managed scope admin_mode (alongside api); some older self-managed versions may expose the legacy admin_api scope instead. Admin Mode must also be enabled where required. See the GitLab access token scopes and Users API documentation.

Use jira tui --demo for a credential-free local run.

Development

uv sync --extra dev --extra local-dev
uv run pytest
uv run black jira_cli
uv run ruff check jira_cli
uv run jira-cli-qa   # runs ruff + radon + pylint

Documentation Site

uv sync --extra docs
uv run jira-cli-docs        # strict MkDocs build
uv run jira-cli-docs-serve  # local preview

The docs are built with MkDocs Material and mkdocstrings. API pages render Python docstrings directly from jira_cli.

Additional Docs

License

MIT

Metadata

Release files for colenio-jira-cli 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for colenio-jira-cli 0.7.0
File Size Uploaded
colenio_jira_cli-0.7.0.tar.gz 642.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for colenio-jira-cli 0.7.0
File Interpreter ABI Platform
colenio_jira_cli-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 766.9 kB

Release files / colenio_jira_cli-0.7.0.tar.gz

Download URL colenio_jira_cli-0.7.0.tar.gz
Size 642.8 kB
Tags Source
SHA-256 checksum
How to use checksums
2d9a4bc4e10354f7b4b0fdb4c48f64574ff6eabade85800c099680496f771625
BLAKE2b-256 checksum
How to use checksums
71d40db74e0cf6710b0762c6b14c8c6caca3722b94e9ab82ea5ef6b4ac111e7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / colenio_jira_cli-0.7.0-py3-none-any.whl

Download URL colenio_jira_cli-0.7.0-py3-none-any.whl
Size 124.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5f087c24e83a48a4ac6ea47976754a4f09687c778c0cfd411c2357463b8be864
BLAKE2b-256 checksum
How to use checksums
d4c06fe8f88437af65957db1cee9a1e1a33512b766b8ca07076fd2d73cd9fa96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

0.8.0

2 release files

0.7.2

2 release files

0.7.1

2 release files

This release

0.7.0 This release

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page