Skip to main content

Modular Jira CLI tool for issue listing, filtering, and management

Project description

Jira CLI

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

Features

  • List issues by project with optional filtering (status, assignee, labels)
  • Search with custom JQL queries
  • Find issues by text in summary/description
  • View issue details with comments
  • Assign issues to users
  • Transition issues to new status
  • Multiple output formats: table, JSON, CSV, Markdown
  • dotenv support: Load credentials from .env or local.env in CWD or parent directories

Installation

Via uv (local development)

cd colenio/tools/jira-cli
uv sync
uv run colenio-jira-cli list --help

Via uvx (remote/published)

uvx colenio-jira-cli list --project PROJ

jira-cli remains available as a compatibility alias.

Setup

Create a .env or local.env file in your working directory:

# 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
JIRA_PROJECT_KEY=PROJ  # Backward-compatible fallback

Getting your Jira API Token

  1. Log in to your Jira Cloud instance
  2. Go to Account Settings → Security
  3. Click "Create API Token"
  4. Copy the token and save to .env

Usage

List issues

# Basic listing
colenio-jira-cli list --project PROJ

# With filters
colenio-jira-cli list --project PROJ --status "In Progress" --assignee "john@example.com"

# With custom JQL
colenio-jira-cli list --project PROJ --jql 'priority = High'

# Different output formats
colenio-jira-cli list --project PROJ --format json
colenio-jira-cli list --project PROJ --format csv > issues.csv
colenio-jira-cli list --project PROJ --format md

Search with JQL

colenio-jira-cli search 'project = PROJ AND status = "To Do" AND assignee is EMPTY'
colenio-jira-cli search 'text ~ "urgent"' --format json

Find by text

colenio-jira-cli find --project PROJ "database migration"
colenio-jira-cli find --project PROJ "performance issue" --max-results 100

View issue details

colenio-jira-cli view PROJ-123
colenio-jira-cli view PROJ-456 --comments

Assign issue

colenio-jira-cli assign PROJ-789 john@example.com

Transition issue

colenio-jira-cli transition PROJ-999 "In Progress" --comment "Starting work"
colenio-jira-cli transition PROJ-999 "Done"

Architecture

  • client.py: JiraClient class for REST API calls, auth, and endpoints
  • query.py: JiraQuery class for JQL building and search logic
  • render.py: JiraRenderer class for output formatting (table, JSON, CSV, Markdown)
  • models.py: Pydantic models for Jira structures (JiraIssue, JiraSearchResult, IssueRow)
  • dotenv.py: DotEnv class for robust .env/local.env loading
  • cli.py: Click CLI commands (list, search, find, view, assign, transition)

All code uses proper classes, no helper functions. Follows informix-migration patterns.

Development

# Install dev dependencies
uv sync --all-groups

# Run tests
uv run pytest

# Format and lint
uv run black jira_cli
uv run ruff check jira_cli

Distribution

This tool is designed for publishing via uvx (like helmrelease-verifier):

  1. Push to GitHub at colenio/jira-cli
  2. Configure PyPI Trusted Publisher for this repository
  3. Tag with version: git tag v0.1.0 and push tag (git push origin v0.1.0)
  4. GitHub Action .github/workflows/release.yml builds, tests, and publishes to PyPI
  5. Package can be invoked anywhere with: uvx colenio-jira-cli list --project PROJ

PowerShell Integration

Add to $PROFILE (e.g., via dotfiles/aliases.ps1):

function jira-cli {
    uvx colenio-jira-cli @args
}

# Or use directly
alias jira = 'uvx colenio-jira-cli'

Then:

jira list --project PROJ

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

colenio_jira_cli-0.1.4.tar.gz (40.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

colenio_jira_cli-0.1.4-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file colenio_jira_cli-0.1.4.tar.gz.

File metadata

  • Download URL: colenio_jira_cli-0.1.4.tar.gz
  • Upload date:
  • Size: 40.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for colenio_jira_cli-0.1.4.tar.gz
Algorithm Hash digest
SHA256 10defd12979e396f0ec525e498289e9689465728eafcf68514e3775b52edebf5
MD5 dd0383bc5034da5b4913ebe34e2bc9ad
BLAKE2b-256 145eb74ccf7cbff584d7618d8723a9c78b7373a6356ce69b9562a7cb003e4b16

See more details on using hashes here.

Provenance

The following attestation bundles were made for colenio_jira_cli-0.1.4.tar.gz:

Publisher: release.yml on colenio/jira-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file colenio_jira_cli-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for colenio_jira_cli-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e85afd07ce2ceb2bfabc02479a5dbef61193caf06ae0496dd57af23a1c6bcca9
MD5 38bd7bdda8a937bc9ce189ac005fdaf4
BLAKE2b-256 f19f49ba03afab6eab215891a1bebf6b5af59691a6563befd1474722af43f151

See more details on using hashes here.

Provenance

The following attestation bundles were made for colenio_jira_cli-0.1.4-py3-none-any.whl:

Publisher: release.yml on colenio/jira-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page