atlassian-cli はコミュニティによる独立したオープンソースプロジェクトです。Atlassian と提携・関連しておらず、Atlassian による承認、推奨、後援のいずれも受けておらず、Atlassian が提供する公式 CLI(acli)でもありません。製品名は互換性を示す目的でのみ使用しています。

Jira、Confluence、Bitbucket、Jira Service Management で最もよく使う atlassian cli コマンドを 1 ページにまとめたリファレンスです。ブックマークするか、印刷するか、チームの wiki に貼り付けて使ってください。以下のコマンドはすべて、4 製品すべてと通信する単一の Rust バイナリである atlassian-cli でそのままコピーして実行できる構文です。網羅的な一覧はコマンドリファレンスを参照してください。このページは、別タブに開いておく高速な逆引き用です。

Atlassian 自身の CLI との違い。atlassian-cli はコミュニティによる独立した MIT ライセンスのオープンソースプロジェクトです。Atlassian と提携・関連しておらず、Atlassian による承認、推奨、後援、保守のいずれも受けておらず、Atlassian が提供する公式 CLI(acli)でもありません。ベンダーによる一次サポートが必要なら公式の acli を、Jira、Confluence、Bitbucket、JSM をまたぐ無料の Rust バイナリ 1 つで、一貫したフラグと機械可読な出力を使いたいなら atlassian-cli を選んでください。

セットアップ: 認証とグローバルフラグ

認証はプロファイル単位です。利用する Atlassian サイトごとに 1 回ログインし、そのうち 1 つを既定に指定すれば、--profile を渡さないかぎりすべてのコマンドがそのサイトを対象にします。トークンの作成方法と Bitbucket のアプリパスワード固有の事情は認証ガイドを参照してください。

# Log in and set this profile as the default
atlassian-cli auth login \
  --profile work \
  --base-url https://your.atlassian.net \
  --email you@example.com \
  --token $TOKEN \
  --default

atlassian-cli auth list        # show configured profiles
atlassian-cli auth status      # is the default profile valid?
atlassian-cli auth whoami --profile work
atlassian-cli auth test --profile work --format quiet && echo OK

1 つのバイナリを複数の Atlassian サイトで実用的に使えるのは、プロファイルがあるからです。workpersonal、あるいは prodstaging を用意しておけば、認証をやり直さずにフラグ 1 つで切り替えられます。--profile を省略すると既定のプロファイルが使われるため、日常のコマンドは短く保てます。

製品にかかわらず、すべてのコマンドが同じグローバルフラグを受け付けます。一度覚えれば、どこでもそのまま使えます。

出力形式(全体をつなぐフラグ)

最も役立つ習慣は、出力形式を切り替えることです。table は人が読むため、JSON はパイプライン向けです。フラグは製品をまたいで同じなので、Jira をスクリプト化したときの感覚がそのまま Confluence と Bitbucket にも通用します。

形式 フラグ 主な用途
Table-f tableターミナルで読む(既定)
JSON-f jsonjq へのパイプ、スクリプトへの受け渡し
CSV-f csv表計算ソフトや関係者向けレポート
YAML-f yaml設定の差分やレビュー用のエクスポート
Markdown-f markdownプルリクエスト、課題、wiki ページへの貼り付け
Quiet-f quietCI で終了コードだけを見た判定
# Human-readable (default)
atlassian-cli jira issue search --jql "project = DEV"

# JSON piped to jq
atlassian-cli jira issue search --jql "project = DEV" --format json | jq '.[].key'

# CSV straight to a file
atlassian-cli jira issue search --jql "project = DEV" --format csv --output issues.csv

Jira のコマンド

Jira の作業は、課題と、それを選び出す JQL クエリが中心です。search、get、create、update、transition、assign、delete の 7 つが、日常的に使う動詞です。

# Search, read, and create issues
atlassian-cli jira issue search --jql "project = DEV order by created desc" --limit 5
atlassian-cli jira issue get DEV-123
atlassian-cli jira issue create --project DEV --issue-type Task --summary "Test task"

# Update, transition, assign, delete
atlassian-cli jira issue update DEV-123 --summary "Updated summary"
atlassian-cli jira issue transition DEV-123 --transition "In Progress"
atlassian-cli jira issue assign DEV-123 --assignee user@example.com
atlassian-cli jira issue delete DEV-123

# Assign to a sprint by numeric sprint id
atlassian-cli jira issue update DEV-123 --sprint 25446

issue search に書く JQL は、一括コマンドが受け付ける JQL とまったく同じです。対話的に検証したクエリを、そのままバッチ処理で再利用できます。この再利用性があるため、JQL には早めに慣れておく価値があります。よく検証したフィルターが 1 つあれば、読み取りもエクスポートも一括更新も同じように動かせます。

課題以外にも、Jira はプロジェクト、ロール、フィールド、ワークフロー、監査データを扱えます。

atlassian-cli jira project list
atlassian-cli jira project get DEV
atlassian-cli jira roles list DEV
atlassian-cli jira fields list                 # find custom field ids
atlassian-cli jira workflows list
atlassian-cli jira automation list
atlassian-cli jira audit list --from 2025-01-01 --limit 100

Confluence のコマンド

Confluence では JQL の代わりに CQL(Confluence Query Language)を使います。構成要素はスペース、ページ、ブログ記事、フォルダー、添付ファイルです。まず検索し、見つけたページ ID に対して操作します。

# Search with CQL or plain text
atlassian-cli confluence search cql "space = DEV and type = page" --limit 5
atlassian-cli confluence search text "meeting notes" --limit 10

# Spaces and pages
atlassian-cli confluence space list --limit 10
atlassian-cli confluence page list --space DEV --limit 25
atlassian-cli confluence page get 12345
atlassian-cli confluence page create --space DEV --title "New Page" --body "<p>Content</p>"
atlassian-cli confluence page update 12345 --title "Updated Title"
atlassian-cli confluence page add-label 12345 documentation

# Attachments and analytics
atlassian-cli confluence attachment upload --file ./diagram.png 12345
atlassian-cli confluence analytics space-stats DEV

Bitbucket のコマンド

Bitbucket のコマンドは、サブコマンドの前に --workspace フラグを取ります。bbbitbucket の組み込みエイリアスなので、以下のコマンドはどちらの書き方でも動きます。中心となるオブジェクトはリポジトリ、ブランチ、プルリクエスト、パイプラインです。

atlassian-cli bitbucket whoami
atlassian-cli bb whoami                          # bb == bitbucket

# Repositories and branches
atlassian-cli bitbucket --workspace myteam repo list --limit 10
atlassian-cli bitbucket --workspace myteam branch list api-service
atlassian-cli bitbucket --workspace myteam branch create api-service feature/new --from main

# Pull requests
atlassian-cli bitbucket --workspace myteam pr list api-service --state OPEN --limit 5
atlassian-cli bitbucket --workspace myteam pr create api-service \
  --title "Add feature" --source feature/new --destination main
atlassian-cli bitbucket --workspace myteam pr approve api-service 123
atlassian-cli bitbucket --workspace myteam pr merge api-service 123 --strategy merge_commit

# Pipelines
atlassian-cli bitbucket --workspace myteam pipeline trigger api-service --ref-name main

Jira Service Management のコマンド

JSM は Jira の上にサービスデスクの概念を追加します。サービスデスク、リクエストタイプ、リクエスト、キュー、承認、SLA です。リクエストは SD-123 のようなキーで指定し、サービスデスクとキューは数値の ID で指定します。

# Service desks and requests
atlassian-cli jsm service-desk list --limit 25
atlassian-cli jsm request list --servicedesk-id 10 --limit 25
atlassian-cli jsm request create --servicedesk-id 10 --request-type-id 7 \
  --summary "Access issue" --description "Can't log in"

# Move a request forward and comment
atlassian-cli jsm request transition SD-123 --transition "In Progress"
atlassian-cli jsm request add-comment SD-123 --body "Investigating" --public

# Queues, SLAs, approvals
atlassian-cli jsm queue list 10
atlassian-cli jsm sla list SD-123
atlassian-cli jsm approval approve SD-123 --approval-id 1

製品をまたぐ一括操作

Jira、Confluence、Bitbucket にはそれぞれ bulk コマンドグループがあります。パターンはどこでも同じです。--dry-run でプレビューし、件数を確認してから本番実行します。一括コマンドは --concurrency(既定は 4)と --limit も受け付け、レート制限のレスポンスに対しては自動的にバックオフします。

# Jira: preview a mass transition, then execute without --dry-run
atlassian-cli jira bulk transition \
  --jql "project = DEV AND status = Open" \
  --transition "In Progress" \
  --dry-run

# Confluence: export a whole space to JSON
atlassian-cli confluence bulk export --cql "space = DEV" --output backup.json --format json

# Bitbucket: find repos untouched for 180 days (preview only)
atlassian-cli bitbucket --workspace myteam bulk archive-repos --days 180 --dry-run

--dry-run--format の挙動が製品をまたいで同じなので、Jira を安全に整理するスクリプトは、Confluence を整理するスクリプトとほぼ同じ見た目になります。確認プロンプトとエラー処理を備えた本番向けの例は、一括遷移のランブックを参照してください。

この一貫性が、チートシート全体を貫く軸です。同じログインの流れ、同じ 6 種類の出力形式、ドライランしてから実行するという同じリズム、同じプロファイル切り替えが、JSM のリクエストをトリアージするときも、Confluence のスペースをエクスポートするときも、Bitbucket のプルリクエストをマージするときも同じように使えます。形を一度覚えてしまえば、個々のコマンドは推測できるようになります。ここに載っていないフラグが必要になったら、コマンドリファレンス全文に製品別のすべてのサブコマンドがまとまっています。

atlassian-cli を試す

Jira、Confluence、Bitbucket、JSM に対応する無料のバイナリが 1 つ。インストールすれば、2 分以内に最初のコマンドを実行できます。

atlassian-cli をインストール

よくある質問

Jira、Confluence、Bitbucket をまとめてカバーする CLI はありますか?

はい。atlassian-cli は、4 つの製品すべてのコマンドグループを備えた 1 つのバイナリです。jiraconfluencebitbucket(エイリアスは bb)、jsm があります。プロファイルごとに 1 回認証すれば、同じグローバルフラグ、同じ --format オプション、同じ一括操作のパターンをすべての製品で使い回せます。このページのチートシートの狙いもそこにあります。4 つの別々のツールを覚えるのではなく、1 つのコマンドの形だけを覚えれば済みます。

atlassian-cli と acli の違いは何ですか?

acli は Atlassian 自身の公式 CLI で、ベンダーによる一次サポートがあります。atlassian-cli はコミュニティによる独立した MIT ライセンスのオープンソースプロジェクトです。Atlassian と提携・関連しておらず、Atlassian による承認、推奨、後援、保守のいずれも受けていません。Jira、Confluence、Bitbucket、Jira Service Management をまたぐ無料の単一バイナリです。Atlassian 公式のサポートが必要なら acli を、4 製品すべてを一貫したフラグと機械可読な出力で扱える 1 つのオープンソースツールが欲しいなら atlassian-cli を使ってください。

atlassian-cli の出力を JSON にして jq にパイプするには?

任意のコマンドに --format json(または -f json)を付けてから jq にパイプします。例えば atlassian-cli jira issue search --jql "project = DEV" --format json | jq '.[].key' のようにします。すべてのコマンドが table、json、csv、yaml、quiet、markdown の出力に対応しています。--envelope を付けると、リスト出力を {"data": [...], "count": N} というオブジェクトで包むため、後段での解析が楽になります。

プロジェクト全体を壊さずに一括変更を実行できますか?

はい。すべての bulk サブコマンドが --dry-run を受け付けます。同じクエリを実行して何が変わるかを正確に表示し、何も変更せずに終了します。まずプレビューし、件数とサンプルを確認してから --dry-run を外して実行してください。一括コマンドは --concurrency(既定は 4)と --limit も尊重し、API がレート制限のレスポンスを返した場合は自動的にバックオフします。

関連リソース