https://github.com/goldcaddy77/jicli
JIRA CLI focused on simple ticket creation
https://github.com/goldcaddy77/jicli
cli javascript jira jira-cli node nodejs
Last synced: about 2 months ago
JSON representation
JIRA CLI focused on simple ticket creation
- Host: GitHub
- URL: https://github.com/goldcaddy77/jicli
- Owner: goldcaddy77
- License: mit
- Created: 2017-03-29T23:51:58.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-04-19T04:51:03.000Z (about 9 years ago)
- Last Synced: 2025-10-19T05:44:19.941Z (8 months ago)
- Topics: cli, javascript, jira, jira-cli, node, nodejs
- Language: JavaScript
- Size: 189 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# jicli
[](https://www.npmjs.org/package/jicli)
[](https://standardjs.com)
## An interactive Jira CLI
JIRA CLI focused on simple ticket creation, written in Node.
## Table of Contents
- [Install](#install)
- [Setup](#setup)
- [Usage](#usage)
- [Examples](#examples)
- [Authentication](#authentication)
- [Debugging](#debugging)
- [Contribute](#contribute)
- [License](#license)
## Install
```bash
> npm install -g jicli
```
## Setup
On first usage, run `jicli` and you will be asked for your Jira credentials:
```bash
> jicli
Jira host: example.atlassian.com
Jira username : user1
Jira password: ***********
HTTP protocol (http or https) https
```
Config settings will be saved in `/.jicli/config.json`.
## Usage
Run `jicli` or `jicli --help` to get usage:
```
Usage: jicli [options] [command]
Commands:
create [options] Create a new issue
Options:
-h, --help output usage information
-V, --version output the version number
```
### Create
```
Usage: create [options]
Create a new issue
Options:
-h, --help output usage information
-p, --project [key] Project key
-t, --issue-type [type] Issue type (numeric or enum{task, story, sub-task, epic, bug})
-s, --summary [string] Summary (title)
-d, --description [string] Description (opens in editor)
-x, --skip-description Skip entering the description field
-l, --labels [l1,l2,l3] Labels (comma-delimited)
-a, --assignee [username] Assignee (use `me` to assign to yourself)
```
### Config
```
Usage: config [options]
Re-initialize your config
Options:
-h, --help output usage information
```
Jicli uses the `find-config` package to look for the `.jicli` folder. The order used:
- Current working directory
- Navigate up parent directories under getting to `/`
- Finally, look in home directory
If not found, the following is done to determine where to create the `.jicli` folder:
- If current working directory has a `package.json` file, create folder here
- If not, navigate up parent directories looking for `package.json` until you hit `/`
- If not found, create folder in current directory
## Examples
### Creating issues
Create issue interactively with prompts:
```
jicli create
? Project: Mobile
? Issue Type: Task
? Issue Title: My new issue
```
Supply some of the required fields and jicli will ask for the missing items:
```
jicli create -p MOB -t Task
? Issue Title: My new issue
```
Notice that project and issue type prompts are skipped
Holy grail with all required and optional fields ()
```
jicli create -p MOB -t task -s "My issue title" -d "My issue description" -l 'label1,label2' -a me
```
## Authentication
When you first set up jicli, it will prompt for your username / password. From this, it will create a token and add
it to the config file `/.jicli/config.json`
## Debugging
Project uses [debug](https://github.com/visionmedia/debug) module with debug key `jicli`. Run:
```
DEBUG=jicli* jicli create ...
```
This will add additional debugging information to file `/.jicli/logger.log` instead of stdout as it's awkward to output to the console while requesting stdin.
## Contribute
PRs accepted. Note that code uses [standard](https://github.com/feross/standard) styling.
## License
MIT © Dan Caddigan