The 0.4 line of atlassian-cli closes several gaps that previously forced people back to raw REST calls. This post covers everything that landed in 0.4.0 and the follow-up 0.4.1. The full per-version list lives on the changelog.

Upgrade

# Homebrew
brew upgrade atlassian-cli

# Cargo
cargo install atlassian-cli

# Confirm
atlassian-cli --version

Prebuilt binaries for Linux and macOS are on the GitHub Releases page.

Jira: Markdown turns into real ADF

Jira Cloud stores rich text as ADF (Atlassian Document Format). Until now, --description wrapped whatever you passed into a single flat paragraph, so headings, lists, and bold text were lost. In 0.4 the CLI parses Markdown and emits structured ADF for descriptions and comments.

# A Markdown file with headings, lists, and emphasis...
atlassian-cli jira issue create \
  --project DEV \
  --issue-type Task \
  --summary "Provision SFTP access" \
  --description "$(cat notes.md)"

# ...now renders as headings, bullet lists, bold, links, and code
# blocks in Jira instead of one wall of text.

Plain text without any Markdown still becomes a single paragraph, so existing scripts behave exactly as before. Supported nodes include headings, bullet and numbered lists, code blocks, blockquotes, and strong/em/code/link marks. If you need to send raw ADF directly, --field 'description=<json>' still works as the low-level escape hatch.

Confluence: a Folder command group

The Confluence v2 API treats folders as a distinct content type with their own endpoints, separate from pages. Before 0.4 there was no way to reach them, so folder IDs returned 404 against page get. There is now a dedicated confluence folder group.

# Fetch folder metadata by ID
atlassian-cli confluence folder get 3309240341

# Create a folder in a space (the space key is resolved to an ID)
atlassian-cli confluence folder create \
  --space DOCS \
  --title "Architecture" \
  --parent 3302031761

# Delete (moves the folder to the trash; restorable)
atlassian-cli confluence folder delete 3309240341 --force

The same release also hardened Confluence list parsing (page list, space list, search), so a missing or null field in one row no longer aborts the entire response.

Bitbucket: trigger custom pipelines

Pipelines defined under definitions > pipelines > custom in bitbucket-pipelines.yml could not be started from the CLI. The pipeline trigger command now takes a --custom-pipeline flag that injects the API selector.

# Run a named custom pipeline on a branch
atlassian-cli bitbucket --workspace myteam \
  pipeline trigger api-service \
  --ref-name main \
  --custom-pipeline s3-access-test

0.4.1: Jira attachments and full comment bodies

The 0.4.1 patch closed two more spots that needed raw curl. jira issue get now includes an attachments array (id, filename, MIME type, size, and download URL), and comments list gained a --full flag for the complete body instead of a short preview.

# Pull attachment metadata straight from issue get
atlassian-cli jira issue get DEV-428 --format json | jq '.attachments'

# Read full comment bodies, not the 50-character preview
atlassian-cli jira issue comments list DEV-428 --full

Parsing here is deliberately tolerant: Jira returns the attachment id as a number in some responses and a string in others, and 0.4.1 accepts either, so issue get never fails on an issue that happens to have attachments.

The fix worth calling out: HTTP 204 no longer looks like an error

This is the one to upgrade for if you automate Jira. Mutating endpoints (issue update, transition, assign, and the Confluence equivalents) return 204 No Content on success. The client was trying to parse that empty body as JSON, so the command printed error decoding response body and exited non-zero even though the write succeeded. Scripts that checked the exit code saw failures that were not real.

0.4 treats an empty 2xx body as success, so exit codes are now reliable across every write command.

Housekeeping

Thanks

0.4 was shaped by people who filed clear reports and sent pull requests: the HTTP 204 bug, the structured-ADF request, the Folder API ask, the custom-pipeline flag (and its PR), and the attachments and full-comments request all came from the community. Thank you. The per-issue credits are in the release notes.

For the full list of changes by version, see the changelog. To go deeper on any command, the command reference covers the new folder, pipeline, and comment options.

Install or upgrade atlassian-cli

One CLI for Jira, Confluence, Bitbucket, and JSM. Open source, MIT licensed.

Get Started