jirac — Jira on the Command Line
jirac is a full Jira toolkit for terminals, coding assistants, automation, and bots. Written in Rust and distributed as a single binary, it runs on macOS, Linux, and Windows without a language runtime. It supports both Jira Cloud and Jira Data Center, multiple saved login profiles, runtime discovery of custom fields, and REST API v2 or v3.
The project is more than a thin command wrapper. It combines a scriptable CLI, a mouse-aware full-screen TUI, bulk automation, an embeddable Rust client, and a separate MCP server that exposes Jira as typed tools to editors and AI agents.
Full-screen terminal experience
Launch jirac tui -p PROJECT to browse and manage issues without leaving the terminal. The split master-detail layout keeps the issue list visible while opening summaries, comments, worklogs, attachments, subtasks, and issue links.
- Keyboard and mouse navigation, including row selection, double-click detail, scrolling, tabs, pickers, and outside-click dismissal.
- Saved JQL queries, persistent visible columns, and selectable themes.
- Interactive JQL builder for constructing searches without memorizing every field.
- Native dialogs for creating and editing issues, changing issue types, moving projects, transitions, assignment, comments, and attachments.
- Agile board and sprint workflows, fix-version browsing, backlog previews, and in-place version editing.
- Single and bulk worklog flows, watching controls, and watcher counts.
CLI coverage
The command-line surface covers everyday Jira work as well as operational automation:
- Issues: search, view, create, edit, assign, transition, archive, move, change type, link, comment, and attach files.
- Time and collaboration: add/list/delete worklogs, watch issues, inspect comments and attachments.
- Agile: list boards and sprints; create, start, update, complete, or delete sprints.
- Versions: browse project fix versions, preview their backlogs, and update release metadata.
- Bulk operations: comment, transition, update, archive, or create issues from JQL, explicit keys, or JSON manifests.
- Raw API passthrough: call Jira REST endpoints directly when a specialized command is not needed.
Cursor-based pagination is supported for large result sets. Custom fields are discovered from Jira at runtime rather than requiring users to hard-code field IDs into the application.
Cloud, Data Center, and multiple profiles
Profiles store the server URL, project defaults, API version, deployment type, and authentication method. Switch between a Jira Cloud account and one or more Data Center installations without rewriting configuration. Environment variables can override the active profile for CI and one-off automation.
MCP server for agents
jirac-mcp is a dedicated binary that exposes Jira as typed Model Context Protocol tools. Claude Code, Cursor, Codex, Gemini CLI, desktop clients, and other MCP hosts can search issues, inspect projects, create or update work, transition status, add comments, and use Jira as part of a larger agent workflow.
The MCP package shares the same jira-core client and authentication model as the CLI, so terminal users and agents behave consistently against Cloud or Data Center. Install helpers and plugin metadata are included for popular agent clients.
Reusable Rust core
The jira-core crate can be embedded independently in another Rust application. It provides configuration, authentication, Jira models, pagination, and the asynchronous client used by both jirac and jirac-mcp.
Install
# Homebrew (macOS / Linux)
brew tap mulhamna/tap
brew install jira-commands
# Optional MCP server
brew install jira-mcp
# Cargo
cargo install jira-commands
# Windows
winget install mulhamna.jirac
Scoop, install scripts, PowerShell, and direct GitHub Release downloads are also supported. The main binary is jirac; the agent integration is shipped separately as jirac-mcp.
Open-source quality
jirac is OpenSSF Best Practices certified and developed with formatting, Clippy, tests, and build checks as its smoke-test gate. The project is dual-licensed under MIT and Apache-2.0.
Got a project? Let's scope it.
Tell me what you're building. You'll get back a real approach and what it takes to ship it.