ランキングに戻る

whyisdifficult/jiratui

Pythonjiratui.sh

A Textual User Interface for interacting with Atlassian Jira from your shell

clideveloper-tooljiratask-managementpythontuiatlassianatlassian-jiraterminal
スター成長
スター
1.7k
フォーク
67
週間成長
Issue
11
1.2k1.4k1.6k
25年9月25年12月26年4月26年7月
成果物PyPIpip install jiratui
README

JiraTUI

GitHub Actions Workflow Status CodeQL PyPI - Python Version GitHub Release PyPI version AUR package Static Badge

A Text User Interface (TUI) for interacting with Atlassian Jira directly from your shell.

The initial screen of JiraTUI

Introduction

JiraTUI is built using the Textual and Rich frameworks.

It supports the Jira Cloud Platform REST API v3. Starting with v1.1.0 JiraTUI supports Jira Cloud Platform REST API v2 as well.

Installation

The recommended way to install the application is via uv:

uv tool install jiratui

Alternatively, you can install it using pip:

pip install jiratui

or pipx:

pipx install jiratui

For Arch Linux (btw) the package is available in AUR

yay -S jiratui-git

You can also install using homebrew

brew install jiratui

Usage

After installing the package, you can run the CLI tool with the following command:

jiratui

This will show you the available commands for the CLI tool

Usage: jiratui [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  comments  Use it to add, list or delete comments associated to work items.
  config    Shows the location of the configuration file.
  issues    Use it to search, update or delete work items.
  ui        Launches the Jira TUI application.
  users     Use it to search users and user groups.
  version   Shows the version of the tool.
  themes    List the available built-in themes.

You can check the installed version with

jiratui version
1.0.0

Settings

Before using the application you need to provide the basic configuration. All the settings can be provided in a yaml file.

The application uses the XDG specification to locate config (and log) files. The default name of the config file is config.yaml. You can override the location of the config file via the env variable JIRA_TUI_CONFIG_FILE. The application will attempt to load the config file in the following way:

  1. If the variable JIRA_TUI_CONFIG_FILE is set it will use the file specified by it.
  2. If not, if XDG_CONFIG_HOME is set then it will load the file $XDG_CONFIG_HOME/jiratui/config.yaml.
  3. If not, it will attempt to load the file from $HOME/.config/jiratui/config.yaml.

WARNING: Starting with version v1.0.0 the application no longer supports using the env variable JIRA_TUI_ENV_FILE to define the .env file with configuration settings. Instead, all settings must be defined in the config file as described below.

Setting API Credentials

You must provide the following values to connect to your Jira instance API:

  • jira_api_username: the username for connecting to your Jira API.
  • jira_api_token: the token for connecting to your Jira API. This can be your Personal Access Token (PAT).
  • jira_api_base_url: the base URL of your Jira instance API.

Example: Assuming that your config file is located at $XDG_CONFIG_HOME/jiratui/config.yaml you can add the following:

jira_api_username: 'bart@simpson.com'
jira_api_token: '12345'
jira_api_base_url: 'https://<your-jira-instance-hostname>.atlassian.net'

Tip: The application provides a sample config file called jiratui.example.yaml that you can use to define yours.

Choosing the Jira Platform

Jira is available via the Jira Cloud Platform's API and via the Jira Data Center's API (aka. Jira on-premises). JiraTUI can connect to both platforms, although the support for Jira Data Center's API is limited.

By default, JiraTUI tries to connect to Jira Cloud Platform's API. However, if you want to use JiraTUI with your organization's on-premises installation you will need to configure this via the config file. To do this simply set the following:

cloud: False

Choosing the API version

By default, JiraTUI uses the Jira REST API v3. This is good when your Jira instance runs in the cloud. However, Jira also offers an on-premises installation mode and in these cases the version of the API may not be v3 but v2 instead. To address this JiraTUI lets you choose which version of the API you can use.

To set the version of the API update your config file to include:

jira_api_version: 2

Important: when cloud: False JiraTUI will use the correct version for the API and ignore the value of jira_api_version. In other words, jira_api_version is only applicable when cloud: True.

Running the Application UI

Once you have provided the necessary settings, you can run the application's UI with the following command:

jiratui ui

If you are using a custom config file, run:

JIRA_TUI_CONFIG_FILE=/path/to/cutom-file/my-file.yaml jiratui ui

CLI Interface

In addition to the ui command, the CLI tool offers several commands to help you manage issues, comments, and users.

Searching for Issues

To search for work items in the project SCRUM, use the issues search command and pass the --project-key argument with the (case-sensitive) project key.

Example: searching for issues of the project SCRUM

$ jiratui issues search --project-key SCRUM

| Key     | Type | Created          | Status (ID)   | Reporter          | Assignee          | Summary                                    |
|---------|------|------------------|---------------|-------------------|-------------------|--------------------------------------------|
| SCRUM-1 | Bug  | 2025-07-31 15:55 | To Do (10000) | lisa@simpson.com  | bart@simpson.com  | Write 100 times "I will be a good student" |
| SCRUM-2 | Task | 2025-06-30 15:56 | To Do (10000) | homer@simpson.com | homer@simpson.com | Eat donuts                                 |

To search for a specific work item, use the issues search command with the --key argument and the (case-sensitive) issue key.

Example: searching for the issue with key SCRUM-1

$ jiratui issues search --key SCRUM-1

| Key     | Type | Created          | Status (ID)   | Reporter          | Assignee          | Summary                                    |
|---------|------|------------------|---------------|-------------------|-------------------|--------------------------------------------|
| SCRUM-1 | Bug  | 2025-07-31 15:55 | To Do (10000) | lisa@simpson.com  | bart@simpson.com  | Write 100 times "I will be a good student" |

The full list of commands you can use with the CLI and additional settings is available at https://jiratui.readthedocs.io

Documentation

The full documentation is available at https://jiratui.readthedocs.io

Contributing

If you would like to contribute to the project make sure you are familiar with the contribution guidelines and the Code of Conduct.

Acknowledgements

This project was inspired by the work of Textualize and their remarkable frameworks Textual and Rich.

I also want to say thanks to the teams behind Posting, Lazygit and Harlequin for making these awesome tools. These have become the must-have tools for my development workflow.

Last but not least to my colleagues Tomasz, Ilyes and Giorgos for their support, encouragement and for reminding me how cool is to work from your terminal (something I have forgotten).

関連リポジトリ
n8n-io/n8n

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

TypeScriptnpmOtherautomationipaas
n8n.io
197.2k59.5k
ohmyzsh/ohmyzsh

🙃 A delightful community-driven (with 2,500+ contributors) framework for managing your zsh configuration. Includes 300+ optional plugins (rails, git, macOS, hub, docker, homebrew, node, php, python, etc), 140+ themes to spice up your morning, and an auto-update tool that makes it easy to keep up with the latest updates from the community.

ShellMIT Licenseshellzsh-configuration
ohmyz.sh
188.7k26.5k
yt-dlp/yt-dlp

A feature-rich command-line audio/video downloader

PythonPyPIThe Unlicenseyoutube-dlpython
discord.gg/H5MNcFW63r
179.2k15.2k
google-gemini/gemini-cli

An open-source AI agent that brings the power of Gemini directly into your terminal.

TypeScriptnpmApache License 2.0geminigemini-api
geminicli.com
106.1k14.3k
sherlock-project/sherlock

Hunt down social media accounts by username across social networks

PythonPyPIMIT Licenseosintreconnaissance
sherlockproject.xyz
86.9k10.2k
junegunn/fzf

:cherry_blossom: A command-line fuzzy finder

GoGo ModulesMIT Licensefzfgo
junegunn.github.io/fzf/
81.9k2.8k
OpenHands/OpenHands

🙌 OpenHands: AI-Driven Development

PythonPyPIOtheragentartificial-intelligence
openhands.dev
81.4k10.4k
jesseduffield/lazygit

simple terminal UI for git commands

GoGo ModulesMIT Licensecligit
80.6k2.9k
rtk-ai/rtk

CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies

Rustcrates.ioApache License 2.0agentic-codingai-coding
rtk-ai.app
72.1k4.5k
BurntSushi/ripgrep

ripgrep recursively searches directories for a regex pattern while respecting your gitignore

Rustcrates.ioThe Unlicenseripgreprecursively-search
66.4k2.7k
tldr-pages/tldr

Collaborative cheatsheets for console commands 📚.

MarkdownOthershellman-page
tldr.sh
63.2k5.3k
santifer/career-ops

Open-source AI job search: scan job portals, score listings A-F, tailor your CV, track applications — runs locally in your AI coding CLI (Claude Code, Gemini, Codex, OpenCode…)

JavaScriptnpmMIT Licenseai-agentanthropic
career-ops.org
60.8k12k