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

先に用意するもの

Jira をコマンドラインから使うには、CLI ツールをインストールし、Atlassian の API トークンを発行し、一度ログインしてから atlassian-cli jira issue searchatlassian-cli jira issue create のようなコマンドを実行します。このガイドでは、まっさらなターミナルから始めて、ブラウザーのタブを一切開かずに課題を検索、作成、遷移させるところまで、初めての方向けにすべての手順をたどります。

Jira の Web UI は課題を 1 件ずつ読むには十分ですが、処理をスクリプト化したくなると途端に遅くなります。未解決のバグの一覧を表計算シートに取り込む、チェックリストから 10 件の課題を作る、スプリントの終わりにまとまった課題を Done へ移す、といった作業です。コマンドラインのやり方なら、こうした雑務が、保存も共有もでき、シェルスクリプトにも入れられる、繰り返し実行可能な 1 行になります。

始める前に、次の 3 つがそろっているか確認してください。

どのツールを使うか。 このガイドでは atlassian-cli を使います。コミュニティによる独立したオープンソースプロジェクト(MIT ライセンス)です。Atlassian が提供する公式 CLI である acli ではなく、Atlassian と提携・関連しておらず、Atlassian による承認、推奨、後援、保守のいずれも受けていません。ベンダーによる一次サポートが必要であれば公式の acli を、Confluence、Bitbucket、Jira Service Management まで併せてカバーする単一の無料 Rust バイナリが欲しい場合は atlassian-cli を使ってください。詳しくは後述します。

手順 1: CLI をインストールする

atlassian-cli は自己完結した単一のバイナリなので、インストールはすぐ終わります。自分の環境に合う方法を選んでください。

macOS と Linux では Homebrew がいちばん簡単で、brew upgrade で更新も追えます。

# macOS / Linux via Homebrew
brew install omar16100/atlassian-cli/atlassian-cli

すでに Rust のツールチェーンがある場合は、代わりに Cargo でソースからビルドできます。

# Any platform with Rust 1.75+
cargo install atlassian-cli

ビルドの工程を一切踏みたくない場合は、GitHub のリリースページから macOS、Linux、Windows 向けのビルド済みバイナリをダウンロードし、$PATH 上のどこかに置くだけで済みます。各方法の詳細はインストールページにあります。

どの方法を選んだ場合も、うまくいったか確認します。

atlassian-cli --version
atlassian-cli --help

バージョン番号と、コマンドグループ(jiraconfluencebitbucketjsmauth)を並べた最上位のヘルプが表示されるはずです。command not found になる場合は、インストール先のディレクトリがまだ $PATH に入っていません。Apple Silicon の Homebrew では /opt/homebrew/bin がそのディレクトリです。

手順 2: API トークンを作成する

Jira Cloud は API 経由でアカウントのパスワードを受け付けないため、CLI は代わりに API トークンで認証します。作成にかかる時間は 30 秒ほどです。

  1. id.atlassian.com/manage-profile/security/api-tokens を開きます。
  2. Create API token をクリックし、atlassian-cli のようなラベルを付けて、値をコピーします。
  3. 安全な場所に保管します。トークンを表示できるのは 1 回だけです。

トークンは本人として認証されます。自分のアカウントが Jira の Web UI でできることは、そのトークンで CLI にもできますが、それ以上のことはできません。管理者だけの機能でもなければ、追加の権限を与えるものでもありません。

トークンはシェル変数に入れておくのがよい習慣です。そうすればシェルの履歴や保存したコマンドに残りません。

# Paste your token once, per shell session
export ATLASSIAN_API_TOKEN="your-token-value-here"

手順 3: ログインする

次に auth login で CLI を自分の Jira サイトに接続します。プロファイルは 1 つのアカウントに付けるローカルな名前にすぎないので、複数(たとえば個人のサンドボックスと業務用インスタンス)を持っておき、あとから切り替えられます。

atlassian-cli auth login \
  --profile work \
  --base-url https://your-domain.atlassian.net \
  --email you@company.com \
  --token $ATLASSIAN_API_TOKEN \
  --default

各フラグの意味は単純です。

認証情報は AES-256-GCM で暗号化してディスクに書き込まれ、自分のマシンの中にとどまります。先へ進む前にログインできているか確認します。

atlassian-cli auth test --profile work
atlassian-cli auth whoami --profile work

auth test が成功を返し、whoami が自分のアカウントを表示すれば接続できています。401 Unauthorized はほぼ必ずトークンかメールアドレスの誤りなので、トークンを作り直してもう一度試してください。CI パイプライン、複数プロファイル、Bitbucket のトークンについては認証ガイドで詳しく扱っています。

手順 4: 最初のコマンド

これで作業を始められます。Jira のコマンドはどれも atlassian-cli jira issue <verb> という同じ形をしています。初日に手が伸びるものを挙げます。

課題を検索する

検索には Jira の UI と同じクエリ言語である JQL を使います。小さく始めて、バックログ全体を取ってこないように --limit を付けておきます。

# The 5 most recently created issues in project DEV
atlassian-cli jira issue search \
  --jql "project = DEV order by created desc" \
  --limit 5

JQL が初めてなら、JQL クエリチートシートによく使うフィルターがまとまっています。ステータス、担当者、スプリント、ラベル、日付による絞り込みです。

課題を 1 件読む

atlassian-cli jira issue get DEV-123

課題を作成する

必要なのはプロジェクトキー、課題タイプ、要約の 3 つです。これが課題を起票するための最小限です。

atlassian-cli jira issue create \
  --project DEV \
  --issue-type Task \
  --summary "Write onboarding docs"

更新、遷移、割り当て

課題ができたら、課題キーを指定して編集します。次の 3 つで、課題のライフサイクルで行うことのほとんどをまかなえます。

# Change the summary
atlassian-cli jira issue update DEV-123 --summary "Updated summary"

# Move it through the workflow
atlassian-cli jira issue transition DEV-123 --transition "In Progress"

# Assign it to a teammate
atlassian-cli jira issue assign DEV-123 --assignee teammate@company.com

正しいキーを探すためにプロジェクトの一覧を出すこともできます。よく知らないサイトでは便利です。

atlassian-cli jira project list

初心者向けの道具一式をまとめると次のようになります。

やりたいこと コマンド
課題を検索する jira issue search --jql "..."
課題を 1 件表示する jira issue get DEV-123
課題を作成する jira issue create --project DEV --issue-type Task --summary "..."
課題を編集する jira issue update DEV-123 --summary "..."
ステータスを変える jira issue transition DEV-123 --transition "Done"
課題を割り当てる jira issue assign DEV-123 --assignee user@example.com
プロジェクトを一覧する jira project list

出力の読み方と使い回し

既定では、コマンドは人が読みやすいテーブルを表示します。Jira のデータを別のツールに渡したくなったら、--format(または -f)で出力形式を切り替えます。指定できる値は tablejsoncsvyamlmarkdownquiet です。

# JSON, then pull out just the issue keys with jq
atlassian-cli jira issue search \
  --jql "project = DEV AND status = 'To Do'" \
  --format json | jq '.[].key'

# CSV straight into a file for a spreadsheet
atlassian-cli jira issue search \
  --jql "project = DEV AND type = Bug" \
  --format csv --output bugs.csv

コマンドラインの効果が出はじめるのはここからです。画面にテーブルを表示したのと同じクエリが、フラグを 1 つ足すだけで、関係者に渡す CSV にも、スクリプトへ流し込む JSON にもなります。CLI を通じた REST API のスクリプト化をさらに掘り下げたい場合は、コマンドラインから Jira API を呼び出すガイドがこの記事の続きにあたります。

どのコマンドも --profile <name> で対象のアカウントを指定できるので、プロファイルを 2 つ以上持っていれば、ログアウトせずに同じ検索を業務用と個人用のサイトに対して実行できます。

atlassian-cli jira issue search --profile personal --jql "project = PERS"
atlassian-cli jira issue search --profile work --jql "project = DEV"

試してみませんか

atlassian-cli をインストールすれば、1 分以内に最初の Jira コマンドを実行できます。無料、オープンソース、MIT ライセンスです。

atlassian-cli をインストール

acli との違い

Atlassian は acli という自社の公式 CLI を提供しています。atlassian-cli はそれとは別の、コミュニティによる独立したオープンソースプロジェクトで、Atlassian と提携・関連しておらず、Atlassian による承認、推奨、後援、保守のいずれも受けていません。どちらもターミナルから Jira を操作できますが、目的の異なる別々のツールです。

どちらを選んでも縛られることはありません。同じ Atlassian Cloud を読むので、両方試して自分の作業に合うほうを残せます。このガイドの内容はすべて atlassian-cli を使っており、上に挙げたコマンドはいずれもコマンドリファレンスと照合済みです。

ここから先の自然な次の一歩は、正確に絞り込めるだけの JQL を身につけることと、多数の課題に対する変更をまとめて処理することです。Jira CLI リファレンスがその両方の地図になります。

よくある質問

Jira 用のコマンドラインツールはありますか?

あります。atlassian-cli は、Jira、Confluence、Bitbucket、Jira Service Management に対応した MIT ライセンスの無料のオープンソースのコマンドラインツールです。インストールして Atlassian の API トークンでログインすれば、ターミナルから課題の検索、作成、更新、遷移、割り当てができます。Atlassian も acli という自社の公式 CLI を公開しており、そちらは別のベンダー製ツールです。

Jira のコマンドラインを自分のアカウントに接続するには?

id.atlassian.com/manage-profile/security/api-tokens で API トークンを作成し、次を実行します。atlassian-cli auth login --profile work --base-url https://your-domain.atlassian.net --email you@company.com --token $ATLASSIAN_API_TOKEN --default。接続は atlassian-cli auth test --profile work で確認します。トークンは AES-256-GCM で暗号化してローカルに保存され、自分のマシンから外に出ることはありません。

コマンドラインを使うには Jira の管理者権限が必要ですか?

不要です。API トークンは本人として認証されるため、CLI にできるのは自分のアカウントが Jira の Web UI でできることだけで、それ以上のことはできません。ブラウザーでプロジェクトを検索し課題を遷移させられるなら、同じことをターミナルからもできます。管理者権限が必要なのは、UI でも管理者権限を必要とする操作だけです。

atlassian-cli は Atlassian の acli と同じものですか?

いいえ。atlassian-cli はコミュニティによる独立したオープンソースプロジェクトで、Atlassian と提携・関連しておらず、Atlassian による承認、推奨、後援、保守のいずれも受けていません。Atlassian が提供する公式 CLI である acli でもありません。ベンダーによるサポートが付いたツールが必要であれば acli を、Jira、Confluence、Bitbucket、JSM を横断する単一の無料 Rust バイナリが欲しい場合は atlassian-cli を使ってください。

関連リソース