Skip to main content

jiradc-cli

Typer CLI for Jira Data Center that authenticates with a browser session cookie (no PAT required).

Agent-oriented project docs:

  • AGENTS.md
  • docs/PROJECT_OVERVIEW.md
  • docs/COMMAND_REFERENCE.md
  • docs/DEVELOPMENT_NOTES.md
  • docs/PUBLISHING.md

The endpoint set is selected from the OpenAPI/Postman files in resources/ for common end-user workflows:

  • Authentication/session validation (/rest/auth/1/session, /rest/api/2/myself)
  • Project discovery (/rest/api/2/project, /rest/api/2/project/{projectIdOrKey}/components, /rest/api/2/project/{projectIdOrKey}/versions)
  • Issue search/read/create/edit (/rest/api/2/search, /rest/api/2/issue, /rest/api/2/issue/{issueIdOrKey}, /rest/api/2/issue/{issueIdOrKey}/editmeta)
  • Comments (/rest/api/2/issue/{issueIdOrKey}/comment, /rest/api/2/issue/{issueIdOrKey}/comment/{id})
  • Attachments (/rest/api/2/issue/{issueIdOrKey}/attachments)
  • Watchers/votes/worklogs (/rest/api/2/issue/{issueIdOrKey}/watchers, /rest/api/2/issue/{issueIdOrKey}/votes, /rest/api/2/issue/{issueIdOrKey}/worklog)
  • Transitions/assignment (/rest/api/2/issue/{issueIdOrKey}/transitions, /rest/api/2/issue/{issueIdOrKey}/assignee)
  • Issue linking (/rest/api/2/issueLink, /rest/api/2/issueLinkType)
  • Filter and JQL helpers (/rest/api/2/filter, /rest/api/2/filter/favourite, /rest/api/2/jql/autocompletedata/suggestions, /rest/api/2/issue/picker)
  • Agile workflows (/rest/agile/1.0/board, /rest/agile/1.0/sprint, /rest/agile/1.0/issue/rank, /rest/agile/1.0/issue/{issueIdOrKey}/estimation)

Install

From PyPI:

pipx install jiradc-cli
# or
pip install jiradc-cli

From source (repo root with pyproject.toml):

pipx install .

# If you are iterating locally:
pipx install -e .

# Reinstall after changes (non-editable install):
pipx reinstall jiradc-cli

# Uninstall:
pipx uninstall jiradc-cli

# Alternative (non-pipx):
pip install -e .

Login with Browser Cookie

Export the cookie from an already logged-in Jira browser session, then run:

jiradc login --base-url https://jira.example.com

The command then pauses and asks you to copy your Jira Cookie header value to clipboard, reads it from clipboard, and validates it. On macOS this uses pbpaste. During login, the CLI automatically reduces large browser cookie sets to Jira-relevant session cookies first (for better compatibility with SSO/WAF setups), and falls back to the full cookie if needed.

You can also pass it directly:

jiradc login --base-url https://jira.example.com --cookie "JSESSIONID=...; atlassian.xsrf.token=..."

Config is saved in:

  • ~/.config/jiradc-cli/config.json

Commands

# Identity and projects
jiradc whoami
jiradc project list
jiradc project components PROJ
jiradc project versions PROJ

# Issues
jiradc issue search --jql "assignee = currentUser() AND statusCategory != Done"
jiradc issue get PROJ-123
jiradc issue create --project PROJ --summary "New task" --issue-type Task
jiradc issue create --project PROJ --summary "Task with custom field" \
  --description "Required description" \
  --custom-field 'customfield_13300={"inputValues":["Team Backlog Value"]}'
jiradc issue editmeta PROJ-123
jiradc issue edit PROJ-123 --summary "Updated summary" --priority High

# Comments and attachments
jiradc issue comments PROJ-123
jiradc issue comment-add PROJ-123 --body "Working on this now."
jiradc issue comment-update PROJ-123 10100 --body "Latest update"
jiradc issue attachment-add PROJ-123 --file /tmp/screenshot.png

# Workflow and people
jiradc issue transitions PROJ-123
jiradc issue transition PROJ-123 --id 31 --comment "Moving to In Progress"
jiradc issue assign PROJ-123 --username alice
jiradc issue watchers PROJ-123
jiradc issue watcher-add PROJ-123 --username bob
jiradc issue votes PROJ-123
jiradc issue vote-add PROJ-123

# Worklogs
jiradc issue worklogs PROJ-123
jiradc issue worklog-add PROJ-123 --time-spent "1h 30m" --comment "Investigation"

# Linking and metadata
jiradc issue link-types
jiradc issue link-create --type Blocks --inward-issue PROJ-123 --outward-issue PROJ-456
jiradc issue createmeta-types --project PROJ
jiradc issue createmeta-fields --project PROJ --issue-type-id 10001

# Filters and query assistance
jiradc filter favourites
jiradc filter create --name "My Open" --jql "assignee = currentUser() AND resolution = Unresolved"
jiradc jql suggest --field-name status --field-value "In"
jiradc issue picker --query "PROJ-"

# Agile
jiradc agile board list
jiradc agile board backlog 12
jiradc agile board sprints 12 --state active,future
jiradc agile sprint issues 55
jiradc agile issue rank --issue PROJ-123 --issue PROJ-124 --before PROJ-122
jiradc agile issue estimation PROJ-123 --board-id 12
jiradc agile issue estimation-set PROJ-123 --board-id 12 --value 8

jiradc logout

Build and publish

Project metadata includes GitHub links in pyproject.toml:

  • Homepage: https://github.com/marcosgalleterobbva/jiradc-cli
  • Repository: https://github.com/marcosgalleterobbva/jiradc-cli
  • Issues: https://github.com/marcosgalleterobbva/jiradc-cli/issues

Release tooling:

# pipx-first
pipx install -e ".[release]"

# Alternative (non-pipx):
# pip install -e ".[release]"
make bump-patch   # or: make bump-minor / make bump-major
make build
make check
make publish-testpypi
make publish-pypi

See docs/PUBLISHING.md for the full release workflow.

Metadata

Release files for jiradc-cli 0.5.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 jiradc-cli 0.5.0
File Size Uploaded Provenance
jiradc_cli-0.5.0.tar.gz 20.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for jiradc-cli 0.5.0
File Interpreter ABI Platform
jiradc_cli-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 40.2 kB

Release files / jiradc_cli-0.5.0.tar.gz

Download URL jiradc_cli-0.5.0.tar.gz
Size 20.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a329382d851ed9c5c541efe9a06e1652f3a79d9d50dfbaacf87b305422ea8515
BLAKE2b-256 checksum
How to use checksums
8b4b612a5d7b80ce1014fb138de6feb881af8e1a70723e9250071514329a30ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.16

Release files / jiradc_cli-0.5.0-py3-none-any.whl

Download URL jiradc_cli-0.5.0-py3-none-any.whl
Size 19.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
86218226dd8635df6cb2cd1af8791cd92f41ffd2c411fbf95fb25be77a2ddd6c
BLAKE2b-256 checksum
How to use checksums
0b2bf77e1a9b61d946c5e9cba96c10df5d08b5b8a37acc6f9fd3b14d3e70a71d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.16

Security for jiradc-cli 0.5.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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