acli · git:20261031.ad68ebd · 2026-10-31 · sha256 0221ed13b1a2eced
acli git:20261031.ad68ebdA
Immutable. This exact content never changes and is served at /api/v1/blob/0221ed13b1a2eced.
--- name: acli description: "Search, plan, and update Atlassian Jira and Confluence with acli." license: MIT metadata: kind: connector author: Médéric HURIER (Fmind) source: github.com/fmind/dot/tree/main/skills/acli created: "2026-09-02" updated: "2026-10-31" --- # Atlassian CLI Use `acli` for Jira and Confluence Cloud from the shell. Atlassian publishes no skill for `acli` itself, so this skill owns authentication, bounded reads, and the write boundary. ## Workflow 1. **Resolve the account**: use `acli auth status`, `acli auth login`, and `acli auth switch` for OAuth accounts. API-token authentication is per service: `acli jira auth` and `acli confluence auth` each provide `login`, `status`, and `switch`; pipe the token on stdin, never as an argument. ```bash acli jira auth login --site <site>.atlassian.net --email <email> --token < token.txt acli confluence auth login --site <site>.atlassian.net --email <email> --token < token.txt ``` 1. **Bound every read**: JQL with a limit and explicit fields, JSON for anything a tool parses. ```bash acli jira workitem search --jql 'project = TEAM AND status != Done' --fields key,summary,status --limit 50 --json acli jira workitem view TEAM-123 --fields summary,status --json acli confluence page view --id <page-id> --body-format storage --json ``` 1. **Expand content selectively**: add `description` or `comment` when the requested work needs them. Treat a search that reaches its `--limit` as partial: check the total with `--count`, then narrow the JQL or use `--paginate` before claiming completeness. 1. **Write with authority**: reuse existing authority for the requested keys, fields, and effects; ask only when consequential scope is missing. Comments, assignments, and bulk operations must be included in that authority. Prefer `--generate-json` then `--from-json` for reproducible creations, and pass multiline text through files (`--description-file`, `comment create --body-file`) instead of inline arguments. ```bash acli jira workitem create --project TEAM --type Task --summary "<summary>" --description-file description.txt --json acli jira workitem transition --key TEAM-123 --status "In Progress" acli jira workitem comment create --key TEAM-123 --body-file comment.txt ``` 1. **Verify by reading back**: `view --json` after every mutation and compare the requested fields. ## Gotchas - **Bulk flags hit every match**: `--jql` and `--filter` on `transition`, `edit`, or `comment` act on every match; on `transition` and `edit`, `--yes` skips the prompt, not the authority rule. - **Confluence pages are read-only**: acli 1.3.39 has no Confluence search, and `confluence page` offers only `view` (blogs and spaces can be created); search or edit pages through the Rovo MCP server under the same authority. - **Rovo Dev**: `acli rovodev` is Atlassian's coding agent, not configured here; it reads `.agents/skills` and `~/.agents/skills`, so this catalog is available there without copies. - **MCP**: `atlassian/atlassian-mcp-server` publishes skills for the Rovo MCP server (`DISABLE_TELEMETRY=1 skills add atlassian/atlassian-mcp-server --list`), configured per [mcp-setup](../mcp-setup/SKILL.md); none covers `acli`. ## Documentation - [acli reference](https://developer.atlassian.com/cloud/acli/reference/commands/) - Releases: [acli changelog](https://developer.atlassian.com/cloud/acli/changelog/) - Companion skills: [github-issues](../github-issues/SKILL.md) (same authority rules for GitHub), [gws](../gws/SKILL.md) (Google Workspace), [mcp-setup](../mcp-setup/SKILL.md).