| Crates.io | jirun |
| lib.rs | jirun |
| version | 0.24.0 |
| created_at | 2025-04-18 06:52:51.645538+00 |
| updated_at | 2025-09-23 15:15:32.262636+00 |
| description | A CLI tool that generates JIRA sub-task(s) with pre-populated field values |
| homepage | https://github.com/xixiaofinland/jirun |
| repository | https://github.com/xixiaofinland/jirun |
| max_upload_size | |
| id | 1638943 |
| size | 107,760 |
A CLI tool that generates JIRA sub-task(s) with pre-populated field values.
Tired of the repetitive JIRA sub-task creation dance?
You know the routine β clicking "new", selecting "Sub-task", typing a descriptive name, assigning yourself, adding labels, clicking "create"... and repeating for 10+ sub-tasks.
In .jirun.toml, define your field values (labels, assignee) and list your sub-task
summaries ("enhance logic", "write tests", "update docs"). jirun creates them
all in one go.
jirun init --global
This creates .jirun.toml and .env files in OS preferred directory.
.env set your JIRA PAT(person access token) in order to create sub-tasks..jirun.toml define meta-data to be created when running jirun new or jirun template command.jirun new --parent PROJ-123 --dry-run
When you are not sure, this command prints out the raw payloads without sending the real request.
jirun new --parent PROJ-123
This command creates JIRA sub-tasks defined in [sub_tasks.new_tasks]. Each
subtask per line.
jirun init --global) or local (jirun init) config files.Usage: jirun <COMMAND>
Commands:
init Create .jirun.toml and .env (defaults to the local directory)
new Create sub-tasks from [sub_tasks.new_tasks] in .jirun.toml
template Create sub-tasks from [sub_tasks.template_tasks]
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
-V, --version Print version
π Examples:
1. jirun help init
Help menu on initializing jirun's configuration files.
2. jirun init --global
Create config files in the global directory.
3. jirun template --parent PROJ-123
Use [sub_tasks.template_tasks] to create sub-tasks under PROJ-123
4. jirun new --parent PROJ-123 --assignee alice
Use [sub_tasks.new_tasks], overriding assignee with 'alice'
5. jirun template -p PROJ-123 --dry-run
Show request payloads without sending to JIRA
curl -sL https://raw.githubusercontent.com/xixiaofinland/jirun/main/jirun/scripts/install-jirun.sh | bash
iwr -useb https://raw.githubusercontent.com/xixiaofinland/jirun/main/jirun/scripts/install-jirun.ps1 | iex
[!NOTE] If you see an error like "This script contains malicious content and has been blocked by your antivirus software", it means Microsoft Defender flagged it for downloading and executing content from the internet. To proceed, either lower Defenderβs protection or break the script into smaller steps:
# Step 1: Review the script manually
Invoke-WebRequest -Uri https://raw.githubusercontent.com/xixiaofinland/jirun/main/scripts/install-jirun.ps1 -OutFile install-jirun.ps1
notepad install-jirun.ps1 # Inspect the content
# Step 2: Run after trust
powershell -ExecutionPolicy Bypass -File install-jirun.ps1
jirun is published in creates.io here.
Run cmd below if you have the Cargo tool.
cargo install jirun
Visit the release page and download the appropriate binary for your operating system (Linux, macOS, or Windows).
Run .jirun init --global to generate the config template files.
.jirun.toml:
[server]
url = "https://yourcompany.atlassian.net/jira"
[prefill]
labels = ["cli", "auto"]
assignee = "john.doe"
[sub_tasks]
template_tasks = """
Design API schema
Implement service logic
Write integration tests
"""
new_tasks = """
Fix login bug
Improve error messages
Document usage
"""
.env:
JIRA_TOKEN=your-api-token-here
What's the difference between putting sub-tasks under template_tasks or new_tasks section in .jirun.toml?
template_tasks:
jirun template commandnew_tasks:
jirun new commandBoth commands share the same underlying logic - the separation simply helps organize your brain between standard templates and custom task lists.
MIT