Install
openclaw skills install atlassian-cliReference guide for the Atlassian CLI (acli) - a command-line tool for interacting with Jira Cloud and Atlassian organization administration. Use this skill when the user wants to perform Jira operations (create/edit/search/transition work items, manage projects, boards, sprints, filters, dashboards), administer Atlassian organizations (manage users, authentication), or automate Atlassian workflows from the terminal. Covers all acli commands including: jira workitem (create, edit, search, assign, transition, comment, clone, link, archive), jira project (create, list, update, archive), jira board/sprint, jira filter/dashboard, admin user management, and rovodev (Rovo Dev AI agent). Requires an authenticated acli binary already installed on the system.
openclaw skills install atlassian-cliThis skill requires acli to be installed and authenticated. The binary is NOT bundled with this skill.
If acli is not installed, guide the user to: https://developer.atlassian.com/cloud/acli/guides/install-acli/
Verify availability:
acli --help
Check auth status before running commands:
acli jira auth status
acli admin auth status
If not authenticated, there are three methods:
OAuth (interactive, recommended for users):
acli jira auth login --web
API Token (non-interactive, recommended for CI/automation):
echo "$API_TOKEN" | acli jira auth login --site "mysite.atlassian.net" --email "user@atlassian.com" --token
Admin API Key (for admin commands only):
echo "$API_KEY" | acli admin auth login --email "admin@atlassian.com" --token
Switch between accounts:
acli jira auth switch --site mysite.atlassian.net --email user@atlassian.com
acli admin auth switch --org myorgname
$API_TOKEN, $API_KEY) or file-based input (< token.txt).--web) for interactive use. Only use token-based auth for CI/automation where OAuth is not feasible.echo "$API_TOKEN" | acli ..., ensure the variable is set in the environment rather than inlined as a literal value.The following commands are destructive or irreversible — always confirm with the user before executing:
acli jira workitem delete — permanently deletes work itemsacli jira project delete — permanently deletes a project and all its work itemsacli admin user delete — deletes managed user accountsacli admin user deactivate — deactivates user accountsacli jira field delete — moves custom fields to trashThese commands are impactful but reversible:
acli jira workitem archive / unarchiveacli jira project archive / restoreacli admin user cancel-delete — cancels pending deletionacli jira field cancel-delete — restores field from trashAgent safety rules:
--yes is available.--jql or --filter, first run a search with the same query to show the user what will be affected.--json output to verify targets before applying destructive changes.--yes with destructive bulk operations unless the user explicitly requests unattended execution.Commands under acli admin (including admin user activate, deactivate, delete, cancel-delete) affect the entire Atlassian organization — the blast radius is org-wide, not scoped to a single project or site. Treat them as a separate tier from other destructive operations:
admin user command, first resolve --email, --id, or --from-file inputs to a concrete list (count plus each email/account ID) and show it to the user. This catches typos in comma-separated lists, stale entries in files, and ambiguous partial matches.--ignore-errors with admin user delete or admin user deactivate. A partial failure in a bulk admin operation is a signal to stop and investigate, not to continue silently — half-applied deactivations are harder to audit than a clean halt.acli <command> [<subcommand> ...] {MANDATORY FLAGS} [OPTIONAL FLAGS]
Four top-level command groups:
acli jira - Jira Cloud operations (workitems, projects, boards, sprints, filters, dashboards, fields)acli admin - Organization administration (user management, auth)acli rovodev - Rovo Dev AI coding agent (Beta)acli feedback - Submit feedback/bug reportsMost list/search commands support: --json, --csv, and default table output.
Target multiple items via:
--key "KEY-1,KEY-2,KEY-3" - comma-separated keys--jql "project = TEAM AND status = 'To Do'" - JQL query--filter 10001 - saved filter ID--from-file "items.txt" - file with keys/IDs (comma/whitespace/newline separated)Use --ignore-errors to continue past failures in bulk operations.
Use --yes / -y to skip confirmation prompts (useful for automation).
--limit N - max items to return (defaults vary: 30-50)--paginate - fetch all pages automatically (overrides --limit)Many create/edit commands support --generate-json to produce a template, and --from-json to consume it:
acli jira workitem create --generate-json > template.json
# edit template.json
acli jira workitem create --from-json template.json
# Create
acli jira workitem create --summary "Fix login bug" --project "TEAM" --type "Bug"
acli jira workitem create --summary "New feature" --project "TEAM" --type "Story" --assignee "@me" --label "frontend,p1"
# Search
acli jira workitem search --jql "project = TEAM AND assignee = currentUser()" --json
acli jira workitem search --jql "project = TEAM AND status = 'In Progress'" --fields "key,summary,assignee" --csv
# View
acli jira workitem view KEY-123
acli jira workitem view KEY-123 --json --fields "*all"
# Edit
acli jira workitem edit --key "KEY-123" --summary "Updated title" --assignee "user@atlassian.com"
# Transition
acli jira workitem transition --key "KEY-123" --status "Done"
acli jira workitem transition --jql "project = TEAM AND sprint in openSprints()" --status "In Progress"
# Assign
acli jira workitem assign --key "KEY-123" --assignee "@me"
# Comment
acli jira workitem comment create --key "KEY-123" --body "Work completed"
# Bulk create
acli jira workitem create-bulk --from-csv issues.csv
acli jira project list --paginate --json
acli jira project view --key "TEAM" --json
acli jira project create --from-project "TEAM" --key "NEW" --name "New Project"
acli jira board search --project "TEAM"
acli jira board list-sprints --id 123 --state active
acli jira sprint list-workitems --sprint 1 --board 6
For complete flag details, parameters, and examples for every command: