| name | acli-jira |
| description | This skill should be used when the user asks to "run acli jira commands", "create a Jira issue", "search Jira issues", "manage Jira projects", "transition Jira status", "check jira issue", "consistent with jira issue", or mentions ACLI, Atlassian CLI, Jira CLI, Jira issue keys (e.g. KAN-1, PROJ-123), or jira workitem/project/board/sprint operations via the command line. |
| version | 1.1.0 |
ACLI Jira Command Reference
Quick-reference for Atlassian CLI (acli) Jira commands. Covers authentication, work item CRUD, search, project management, boards, sprints, and filters.
Core Principles
- Authenticate first: Verify auth status before running commands
- JQL for precision: Use JQL queries for targeted searches over broad listing
- Bulk via JQL: Prefer
--jql over comma-separated --key for operations on many items
- Output format matters: Use
--json for scripting, --csv for exports, default for readability
- Use short flags: Combine
-p, -t, -s, -a for faster command composition
Authentication
Authenticate before running any Jira command.
acli jira auth login
acli jira auth status
acli jira auth switch
acli jira auth logout
Work Items — Core Operations
Create
Tip: Issue types are project-specific. Before creating, check allowed types with:
acli jira workitem create -p "PROJ" --help or attempt creation — the error message lists valid types.
acli jira workitem create --project "PROJ" --type "Task" --summary "Implement feature X"
acli jira workitem create -p "PROJ" -t "Story" -s "User login" -d "As a user, I want to log in"
acli jira workitem create -p "PROJ" -t "Bug" -s "Fix crash" -a "@me" -l "critical,backend"
acli jira workitem create -p "PROJ" -t "Subtask" -s "Write tests" --parent "PROJ-42"
acli jira workitem create --generate-json > template.json
acli jira workitem create --from-json template.json
acli jira workitem create -p "PROJ" -t "Task" --from-file spec.txt
acli jira workitem create -p "PROJ" -t "Task" -e
View
acli jira workitem view PROJ-123
acli jira workitem view PROJ-123 --json
acli jira workitem view PROJ-123 --fields summary,status,assignee
acli jira workitem view PROJ-123 --web
Edit
acli jira workitem edit --key "PROJ-123" --summary "Updated summary"
acli jira workitem edit --key "PROJ-1,PROJ-2,PROJ-3" --assignee "dev@company.com"
acli jira workitem edit --jql "project = PROJ AND status = Open" --assignee "dev@company.com"
acli jira workitem edit --key "PROJ-123" --description-file updated.txt
Assign
acli jira workitem assign --key "PROJ-123" --assignee "@me"
acli jira workitem assign --key "PROJ-123" --assignee "dev@company.com"
acli jira workitem assign --jql "project = PROJ AND sprint in openSprints()" --assignee "dev@company.com"
Transition (Change Status)
acli jira workitem transition --key "PROJ-123" --status "In Progress"
acli jira workitem transition --key "PROJ-123" --status "Done"
acli jira workitem transition --key "PROJ-123" --status "In Review"
Delete
acli jira workitem delete --key "PROJ-123"
acli jira workitem delete --key "PROJ-1,PROJ-2"
Search
acli jira workitem search --jql "project = PROJ AND assignee = currentUser()"
acli jira workitem search -j "project = PROJ AND status = 'In Progress'" -f "key,summary,assignee,status"
acli jira workitem search --jql "project = PROJ" --limit 50
acli jira workitem search --jql "project = PROJ AND type = Bug" --count
acli jira workitem search --jql "project = PROJ" --csv
acli jira workitem search --jql "sprint in openSprints()" --json
acli jira workitem search --jql "project = PROJ" --paginate
acli jira workitem search --filter "12345"
acli jira workitem search --jql "project = PROJ" --web
Work Items — Secondary Operations
Comments
acli jira workitem comment create --key "PROJ-123" --body "Ready for review"
acli jira workitem comment list --key "PROJ-123"
acli jira workitem comment update --key "PROJ-123" --id "10001" --body "Updated comment"
acli jira workitem comment delete --key "PROJ-123" --id "10001"
Clone
acli jira workitem clone --key "PROJ-123" --to-project "PROJ"
acli jira workitem clone --key "PROJ-123" --to-project "OTHER"
Link
acli jira workitem link create --out "PROJ-123" --in "PROJ-456" --type "Blocks"
acli jira workitem link type
Attachments
acli jira workitem attachment list --key "PROJ-123"
acli jira workitem attachment delete --id "10001"
Watchers
acli jira workitem watcher remove --key "PROJ-123" --user "5b10ac8d82e05b22cc7d4ef5"
Archive / Unarchive
acli jira workitem archive --key "PROJ-123"
acli jira workitem unarchive --key "PROJ-123"
Project Management
Create Project
acli jira project create --from-project "EXISTING" --key "NEWPROJ" --name "New Project"
acli jira project create --from-project "EXISTING" --key "NEWPROJ" --name "New Project" \
--description "Project description" --lead-email "lead@company.com"
acli jira project create --generate-json > project.json
acli jira project create --from-json project.json
List Projects
acli jira project list --limit 50
acli jira project list --recent
acli jira project list --paginate
acli jira project list --limit 50 --json
acli jira project list --limit 50 --json | jq '.[].key'
View Project
acli jira project view --key PROJ
acli jira project view --key PROJ --json
Update Project
acli jira project update --project-key "PROJ" --name "New Name" --lead-email "newlead@company.com"
Archive / Restore
acli jira project archive --key "PROJ"
acli jira project restore --key "PROJ"
Delete Project
acli jira project delete --key "PROJ"
Boards, Sprints & Filters
Boards
acli jira board search
acli jira board search --name "Team Board"
acli jira board list-sprints --id 42
Sprints
acli jira sprint list-workitems --sprint 100 --board 6
acli jira sprint list-workitems --sprint 100 --board 6 --fields "key,summary,status,assignee"
Filters
acli jira filter search
acli jira filter list --my
acli jira filter list --favourite
acli jira filter add-favourite --filter-id "12345"
acli jira filter change-owner --id "12345" --owner "newowner@company.com"
Common Flag Patterns
| Flag | Short | Purpose |
|---|
--json | | Output as JSON |
--csv | | Output as CSV |
--web | -w | Open in browser |
--help | -h | Show command help |
--key | | Target work item(s), comma-separated |
--jql | -j | JQL query for bulk operations |
--fields | -f | Comma-separated field list |
--label | -l | Add labels (comma-separated) |
--limit | | Max results to return |
--paginate | | Fetch all results via pagination |
--assignee | -a | User email or @me |
--project | -p | Project key |
--type | -t | Work item type (Epic, Story, Task, Bug) |
--summary | -s | Work item summary text |
--description | -d | Work item description text |
Common Workflows
Discover Project & Create Items
acli jira project list --limit 50 --json | jq '.[] | {key, name}'
acli jira project view --key PROJ --json
acli jira workitem create -p "PROJ" -t "Task" -s "My new task" -d "Description here"
Start Working on an Item
acli jira workitem assign --key "PROJ-123" --assignee "@me"
acli jira workitem transition --key "PROJ-123" --status "In Progress"
Create Bug with Full Context
acli jira workitem create \
-p "PROJ" -t "Bug" \
-s "Login fails with SSO redirect loop" \
-d "Steps: 1. Click SSO login 2. Redirects infinitely. Expected: Successful login." \
-a "@me" -l "sso,auth,critical"
Sprint Review — List Items by Status
acli jira workitem search --jql "sprint in openSprints() AND project = PROJ" -f "key,summary,status,assignee"
acli jira workitem search --jql "sprint in openSprints() AND project = PROJ AND status != Done" -f "key,summary,status"
acli jira workitem search --jql "sprint in openSprints() AND project = PROJ" --csv
Bulk Reassignment
acli jira workitem assign --jql "assignee = 'old@company.com' AND status != Done" --assignee "new@company.com"
Complete an Item
acli jira workitem comment create --key "PROJ-123" --body "Completed in PR #456"
acli jira workitem transition --key "PROJ-123" --status "Done"
Useful JQL Patterns
"assignee = currentUser() AND status != Done"
"sprint in openSprints() AND project = PROJ"
"project = PROJ AND type = Bug AND updated >= -7d"
"project = PROJ AND assignee is EMPTY AND sprint is EMPTY"
"issueFunction in linkedIssuesOf('key = PROJ-123', 'blocks')"
"type = Epic AND project = PROJ AND status != Done"
"project = PROJ AND priority in (Highest, High) AND status != Done"
"project = PROJ AND created >= startOfWeek()"
"project = PROJ AND originalEstimate is EMPTY AND type in (Story, Task)"
"project = PROJ AND duedate < now() AND status != Done"
Output Formatting Tips
Use --json for scripting/piping, --csv for spreadsheet export, --count for totals only, and -f to select specific fields. Add --paginate with --limit for large result sets. These flags work across most search and list commands.
JSON + jq Piping
acli jira workitem search --jql "project = PROJ" --json | jq '.[].key'
acli jira project list --limit 50 --json | jq '.[] | {key, name}'
acli jira workitem search --jql "project = PROJ" --json | jq 'group_by(.fields.status.name) | map({status: .[0].fields.status.name, count: length})'
Description Formatting
- Short descriptions: Use
-d with plain text. Avoid markdown headings (##) inline — they don't render well in all Jira views.
- Long/rich descriptions: Use
--editor to compose in your editor, or --from-file to read from a file.
- Multi-line inline: Use shell line continuation (
\) with -d for multi-paragraph descriptions.