acli

📁 peetzweg/acli-skill 📅 5 days ago
8
总安装量
7
周安装量
#35532
全站排名
安装命令
npx skills add https://github.com/peetzweg/acli-skill --skill acli

Agent 安装分布

opencode 6
github-copilot 6
codex 6
kimi-cli 6
gemini-cli 6
cursor 6

Skill 文档

Atlassian CLI (acli) Reference

Prerequisites

This 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

Authentication

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

Security

Secret Handling

  • Never hardcode tokens or API keys in commands. Always use environment variables ($API_TOKEN, $API_KEY) or file-based input (< token.txt).
  • Never log, echo, or display tokens in output. Avoid piping secrets through intermediate files that persist on disk.
  • Prefer OAuth (--web) for interactive use. Only use token-based auth for CI/automation where OAuth is not feasible.
  • Do not store tokens in shell history. If using echo "$API_TOKEN" | acli ..., ensure the variable is set in the environment rather than inlined as a literal value.

Destructive Operations

The following commands are destructive or irreversible — always confirm with the user before executing:

  • acli jira workitem delete — permanently deletes work items
  • acli jira project delete — permanently deletes a project and all its work items
  • acli admin user delete — deletes managed user accounts
  • acli admin user deactivate — deactivates user accounts
  • acli jira field delete — moves custom fields to trash

These commands are impactful but reversible:

  • acli jira workitem archive / unarchive
  • acli jira project archive / restore
  • acli admin user cancel-delete — cancels pending deletion
  • acli jira field cancel-delete — restores field from trash

Agent safety rules:

  1. Never run destructive commands without explicit user confirmation, even if --yes is available.
  2. When bulk-targeting via --jql or --filter, first run a search with the same query to show the user what will be affected.
  3. Prefer --json output to verify targets before applying destructive changes.
  4. Do not combine --yes with destructive bulk operations unless the user explicitly requests unattended execution.

Command Structure

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 reports

Common Patterns

Output Formats

Most list/search commands support: --json, --csv, and default table output.

Bulk Operations

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).

Pagination

  • --limit N – max items to return (defaults vary: 30-50)
  • --paginate – fetch all pages automatically (overrides –limit)

JSON Templates

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

Quick Reference: Most Common Operations

Work Items

# 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

Projects

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"

Boards & Sprints

acli jira board search --project "TEAM"
acli jira board list-sprints --id 123 --state active
acli jira sprint list-workitems --sprint 1 --board 6

Detailed Command Reference

For complete flag details, parameters, and examples for every command: