🤖

Atlassian版 Claude Code と呼ばれている Rovo Dev を使ってみた

に公開

概要

Claude Code の評判を聞き MAX か Pro プランに加入しようかと考えていたところに、以下のポストが流れてきたので、試してみようと思いました。
使用環境は WSL2 の Ubuntu 24.04 です。

アカウント作成

以下にアクセスして Sign up からアカウントを作成しました。

https://www.atlassian.com/

acli のインストール

公式のインストールドキュメントを参考にインストールしました。
Linux版のインストール方法には、以下の2点が書かれています。

  • パッケージマネージャを使ってインストールする方法
  • curl を使ってバイナリをインストールする方法

今回は後者を選択しました。
実行したコマンドラインは以下の通りです。

curl -LO "https://acli.atlassian.com/linux/latest/acli_linux_amd64/acli"
chmod +x ./acli
sudo install -o root -g root -m 0755 acli /usr/local/bin/acli

API トークンを作成

以下から作成しました。

https://id.atlassian.com/manage-profile/security/api-tokens

  1. 「API トークンを作成」を選択
  2. 名前と期限を入力して、作成をクリックします。

ログイン

acli rovodev auth login を実行して、ログインします。

実行すると以下のように、メールアドレスとAPIキーを入力を求められます。

$ acli rovodev auth login
┃ Enter your email
┃ >

  Enter your API token ( create one at: https://id.atlassian.com/manage-profile/security/api-tokens )
  >

enter next

アカウントのメールアドレスと 1 つ前の手順で作成した API トークンを入力します。
認証に成功したら、以下のように出力されます。

$ acli rovodev auth login
✓ Authentication successful

エージェントを実行してみる

認証に成功したら acli rovodev run でエージェントを実行できます。

$ acli rovodev run

███████  ██████  ██    ██  ██████      ██████  ███████ ██    ██
██   ██ ██    ██ ██    ██ ██    ██     ██   ██ ██      ██    ██
██████  ██    ██ ██    ██ ██    ██     ██   ██ █████   ██    ██
██   ██ ██    ██  ██  ██  ██    ██     ██   ██ ██       ██  ██
██   ██  ██████    ████    ██████      ██████  ███████   ████

Welcome to Rovo Dev (beta), Atlassian's AI coding agent.

Here are some quick tips:

• Ask Rovo Dev anything in your own words - from "explain this repo" to "add unit tests".
• Type "/" at any time to see available commands.
• Use CTRL+C to interrupt the agent during generation.
• Use /exit to quit.

Working in /path/to/working_dir


╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ > █                                                                                                                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Type "/" for available commands. 

とりあえず、使い方を聞いてみる

とりあえず、 Rovo Dev エージェントの使い方を聞いてみました。
カレントディレクトリのプロジェクトの概要と、エージェントの使い方を教えてくれました。

> Rovo Dev agent の使い方を教えてください。

╭─ Response ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ こんにちは!Rovo Dev エージェントの使い方について説明させていただきます。                                            │
│                                                                                                                      │
│ まず、現在のワークスペースを確認して、どのようなプロジェクトがあるかを見てみましょう。                               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
  └── Calling open_files: {"file_paths": ["README.md","Cargo.toml"]}

  README.md:


    # regular-expression

    Rust製の正規表現コマンド。
    パターンにマッチする行を表示する。

    ## 書式

    ```text
    regex [OPTIONS] PATTERN [FILE]
   (81 lines truncated)
    $ cat test.txt | regex -e ho* -e fu # パイプを使用し、前のコマンドの出力を検索
    hoge hoge
    fuga fuga
    ```

    # ライセンス

    このプロジェクトは MIT ライセンスの下でライセンスされている。
    詳細については LICENCE.txt を参照してください。


  Cargo.toml:


    [package]
    name = "regular-expression"
    version = "1.2.1"
    edition = "2021"

    # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

    [dependencies]
    clap = { version = "4.5.11", features = ["derive"] }
    thiserror = "1.0"

    [[bin]]
    name = "regex"
    path = "src/bin/regex.rs"



╭─ Response ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                                                                                      │
│                                            Rovo Dev エージェントの使い方                                             │
│                                                                                                                      │
│ Rovo Dev                                                                                                             │
│ エージェントは、ソフトウェア開発者のタスクを支援するAIエージェントです。現在のワークスペースには、Rust製の正規表現コ │
│ マンドラインツールのプロジェクトがあることが分かりました。                                                           │
│                                                                                                                      │
│                                                       主な機能                                                       │
│                                                                                                                      │
│  1 コード分析と理解                                                                                                  │
│     • ファイルの内容を読み取り、コード構造を理解                                                                     │
│     • 依存関係やコードの流れを分析                                                                                   │
│  2 コード修正と改善                                                                                                  │
│     • バグ修正                                                                                                       │
│     • 新機能の追加                                                                                                   │
│     • コードリファクタリング                                                                                         │
│     • パフォーマンス改善                                                                                             │
│  3 ファイル操作                                                                                                      │
│     • ファイルの作成、編集、削除                                                                                     │
│     • コードの検索と置換                                                                                             │
│     • 複数ファイルにわたる変更                                                                                       │
│  4 プロジェクト管理                                                                                                  │
│     • ビルドとテスト                                                                                                 │
│     • 依存関係の管理                                                                                                 │
│     • ドキュメント作成                                                                                               │
│                                                                                                                      │
│                                                        使用例                                                        │
│                                                                                                                      │
│ このプロジェクトで私ができることの例:                                                                               │
│                                                                                                                      │
│  • バグ修正: 正規表現エンジンのバグを特定し修正                                                                      │
│  • 新機能追加: 新しい正規表現パターンのサポート追加                                                                  │
│  • コード改善: パフォーマンス最適化やコード品質向上                                                                  │
│  • テスト追加: ユニットテストやインテグレーションテストの作成                                                        │
│  • ドキュメント更新: README やコメントの改善                                                                         │
│                                                                                                                      │
│                                                次に何をしたいですか?                                                │
│                                                                                                                      │
│ 以下のような作業をお手伝いできます:                                                                                 │
│                                                                                                                      │
│  1 コードレビュー: 現在のコードを詳しく分析して改善点を提案                                                          │
│  2 バグ修正: 特定の問題があれば修正                                                                                  │
│  3 新機能追加: 新しい正規表現機能や CLI オプションの追加                                                             │
│  4 テスト強化: テストケースの追加や改善                                                                              │
│  5 パフォーマンス改善: 正規表現エンジンの最適化                                                                      │
│  6 その他: 具体的な要望があれば教えてください                                                                        │
│                                                                                                                      │
│ どのような作業をご希望でしょうか?                                                                                   │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Session context: ▮▮▮▮▮▮▮▮▮▮ 12.5K/200K
Daily total:     ▮▮▮▮▮▮▮▮▮▮ 32.4K/20M

コードレビューを依頼してみる

コードレビューを依頼してみました。
ファイルを開いて、

> コードレビューをお願いします。

╭─ Response ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ コードレビューを実施いたします。まず、プロジェクト全体の構造を把握するために、すべてのソースファイルを開いて分析して │
│ いきます。                                                                                                           │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
  └── Calling open_files: {"file_paths": ["src/lib.rs","src/engine.rs","src/error.rs","src/bin/regex.rs"]}

その後、色々ファイルを見た後、以下のようにレビュー結果を出してくれました。
長いので冒頭のみ記載していますが、この下にレビューが続いています。

╭─ Response ───────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                                                                                      │
│                                               詳細なコードレビュー結果                                               │
│                                                                                                                      │
│ このRust製正規表現エンジンのコードを詳しく分析しました。全体的によく設計されたプロジェクトですが、いくつかの改善点が │
│ あります。

CLI を終了する

プロンプトに exit を入力することで、 Rovo Dev CLI を終了できます。

> exit
$

Discussion