jira
An agent-friendly Jira CLI. Designed to be driven by AI agents and scripts, not just humans.
- Auto-JSON when stdout is not a TTY — pipe it anywhere, get structured data
jira schemadumps every command, flag, and JSON shape as machine-readable JSON for agent introspection- Structured exit codes — agents can branch on auth failures, rate limits, not-found, and input errors without parsing text
- Clean stdout/stderr split — data on stdout, messages on stderr,
--quietsuppresses all non-data output
$ jira issues list --project MYAPP --status "In Progress" --json
{
"total": 3,
"startAt": 0,
"maxResults": 50,
"issues": [...]
}
Installation
Or build from source:
Configuration
Create ~/.config/jira/config.toml:
[]
= "mycompany.atlassian.net"
= "me@example.com"
= "your-api-token"
Get your API token at: https://id.atlassian.com/manage-profile/security/api-tokens
Or use environment variables:
Multiple profiles are supported:
[]
= "work.atlassian.net"
= "me@work.com"
= "work-token"
Select with --profile work or JIRA_PROFILE=work.
Usage
# List issues
# Show an issue
# Create an issue
# Transition an issue
# Comment
# Assign
# Search with JQL
# Projects
# Current user
# Config
Agent use
jira schema returns a complete description of all commands, flags, arguments, JSON output shapes, and exit codes. AI agents should call this once at the start of a session.
|
Exit codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Unexpected error |
| 2 | Bad input or config error |
| 3 | Authentication failed |
| 4 | Resource not found |
| 5 | Jira API error |
| 6 | Rate limited |
Output flags
| Flag | Effect |
|---|---|
--json |
Force JSON output (auto when stdout is not a TTY) |
--quiet |
Suppress counts, confirmations, and status messages |
License
MIT