npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

jira-client-cli

v0.1.3

Published

A cross-platform CLI client for JIRA

Readme

jira-client-cli

A cross-platform CLI client for JIRA.

Installation

npm install -g jira-client-cli

Requirements: Node.js >= 18.0.0

Quick Start

Interactive Mode

Start the CLI in interactive mode by running without arguments:

jira-cli

This opens an interactive session where you can run commands:

  JIRA CLI - Interactive Mode
  Type "help" for available commands, "exit" to quit.

  No active profile. Run "profile create" to get started.

jira-cli> profile create
? Profile name: work
? JIRA domain: company.atlassian.net
? Email: [email protected]
? API token: ****
✓ Authenticated as John Doe
✓ Profile "work" created and set as active.

jira-cli [work]> issue get PROJ-123
────────────────────────────────────────────────────────
PROJ-123: Fix login button
────────────────────────────────────────────────────────
Type:       Bug
Status:     In Progress
...

jira-cli [work]> exit
Goodbye!

One-Shot Mode

You can also run individual commands directly:

jira-cli profile create
jira-cli issue get PROJ-123

1. Create a Profile

First, create a profile with your JIRA credentials:

jira-cli
# Then in the interactive session:
profile create

Or directly:

jira-cli profile create

You'll be prompted for:

  • Profile name: A name for this profile (e.g., "work", "personal")
  • JIRA domain: Your JIRA instance (e.g., company.atlassian.net)
  • Email: Your JIRA account email
  • API token: Your JIRA API token

Getting an API token:

  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens
  2. Click "Create API token"
  3. Give it a label and copy the token

Or create a profile non-interactively:

jira-cli profile create --name work --domain company.atlassian.net --email [email protected] --token YOUR_TOKEN

2. Query Issues

Fetch details of a JIRA issue:

jira-cli issue get PROJ-123

Output as JSON:

jira-cli issue get PROJ-123 --json

Commands

Profile Management

# Create a new profile
jira-cli profile create

# List all profiles (* = active)
jira-cli profile list

# Switch to a different profile
jira-cli profile use <name>

# Show profile details
jira-cli profile show [name]

# Delete a profile
jira-cli profile delete <name>
jira-cli profile delete <name> --force  # Skip confirmation

Issue Commands

# Get issue details
issue get <issue-key>
issue get PROJ-123 --json

# Calculate time in status for issues (outputs CSV)
issue time-in-status "project = PROJ"
issue time-in-status "project = PROJ AND status = Done" --output report.csv
issue time-in-status "assignee = currentUser()" --max-results 200

Session Commands (Interactive Mode)

help, ?       Show available commands
clear, cls    Clear the screen
exit, quit, q Exit the CLI

Time in Status Report

The time-in-status command calculates how long each issue spent in each status and outputs a CSV report with:

  • Time per ticket per status (H:MM:SS format)
  • Total time per status
  • Average time per status
  • Median time per status

Example output:

TICKET ID,To Do,In Progress,Done
PROJ-1,1:30:00,4:15:30,2:00:00
PROJ-2,0:45:00,3:30:15,1:15:45
...
"Total, h",2:15:00,7:45:45,3:15:45
"Average, h",1:07:30,3:52:52,1:37:52
"Median, h",1:07:30,3:52:52,1:37:52

Multiple Profiles

You can manage multiple JIRA accounts:

# Create profiles
jira-cli profile create --name work
jira-cli profile create --name personal

# List profiles
jira-cli profile list
#   NAME      DOMAIN                     EMAIL
# * work      company.atlassian.net      [email protected]
#   personal  personal.atlassian.net     [email protected]

# Switch profiles
jira-cli profile use personal

Configuration

Configuration is stored in a platform-specific location:

| OS | Location | |----|----------| | macOS | ~/Library/Preferences/jira-cli-nodejs/config.json | | Windows | %APPDATA%\jira-cli-nodejs\Config\config.json | | Linux | ~/.config/jira-cli-nodejs/config.json |

Development

# Clone the repository
git clone https://github.com/k0stya/jira-client-cli.git
cd jira-client-cli

# Install dependencies
npm install

# Build
npm run build

# Run locally
node bin/jira.js --help

# Run tests
npm test

# Link for local development
npm link
jira-cli --help

License

MIT