Introduction
jira-cli removes the friction of switching between the terminal and the Jira web interface. It provides an interactive TUI for common Jira operations and supports scripting for automation, making it a natural fit for developers who live in the terminal.
What Jira CLI Does
- Lists, creates, and updates Jira issues from the terminal
- Provides an interactive TUI for browsing boards and sprints
- Supports JQL queries for advanced issue searching
- Manages sprint planning with move, assign, and transition commands
- Opens issues in the browser with a single command
Architecture Overview
jira-cli is written in Go and communicates with the Jira REST API v2 and v3. It stores credentials and project configuration locally in ~/.config/.jira. The TUI is built with the bubbletea framework, providing keyboard-driven navigation through issue lists, boards, and sprint views.
Self-Hosting & Configuration
- Install via
go install, Homebrew, or download prebuilt binaries - Run
jira initto configure your Jira instance URL and authentication - Supports API token authentication for Jira Cloud
- Supports personal access tokens for Jira Server/Data Center
- Set default project and board in the generated config file
Key Features
- Interactive TUI with keyboard navigation for boards and sprints
- Full JQL support for complex issue queries
- Sprint management including planning, moving, and completing sprints
- Issue creation with interactive prompts or command-line flags
- Markdown-to-ADF conversion for rich issue descriptions
Comparison with Similar Tools
- go-jira — Earlier Go-based Jira CLI; jira-cli has a more modern TUI and active maintenance
- Jira web interface — Full-featured but requires context switching; jira-cli stays in the terminal
- Linear CLI — Similar concept for Linear; jira-cli targets Jira specifically
- gh (GitHub CLI) — GitHub's official CLI for issues and PRs; jira-cli fills the same role for Jira
FAQ
Q: Does jira-cli work with Jira Server and Jira Cloud? A: Yes. It supports both Jira Cloud (API token) and Jira Server/Data Center (personal access token or basic auth).
Q: Can I use jira-cli in CI/CD pipelines? A: Yes. All commands support non-interactive flags for scripted use. Set credentials via environment variables.
Q: How do I search issues with JQL?
A: Use jira issue list --jql "project = MYPROJ AND status = Open" to pass JQL queries directly.
Q: Can I customize the columns shown in issue lists?
A: Yes. Configure display columns in the config file or use --columns flag to override.