【UiPath】ロボット管理が趣味になる？マエストロ生活のはじめ

# はじめに

- 本記事は、UiPath マエストロをつかってみた際の体験内容を扱います。
- 記事の内容は、個人の見解または確認結果であり、UiPath の公式見解ではありません。
- 製品仕様や参考画像は2025年5月16日時点のもので構成しています。

# UiPath Maestro とは

https://docs.uipath.com/ja/maestro/automation-cloud/latest/user-guide/introduction-to-maestro

詳細は上のガイドを読んでいただければとおもいますが、マエストロの機能が効果的に働くのは
***「エージェント」「ロボット」「人間」でおこなっている業務フローの自動化***です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/5a0d0003-4f1a-4c7d-a6bd-e43ca8798cab.png)

個人のタスクレベルであれば、基本的には「エージェント」「ロボット」「人間」の***いずれか***で処理が完結できます。

では、どういったときに使えばよさそうか？
***→　『　例外が多い　×　プロセスが長い　×　進捗を追いたい　』ケースと考えます。***
たとえば、保険屋さんのクレーム処理なんかを想像すると、
1. お客様からのクレームがメールか電話で届く
1. オペレーターがクレーム内容を受け付ける
1. 優先度や内容から担当者にディスパッチする
1. 担当者は回答方法をマニュアルや社内のナレッジを調べながら作成する
1. 回答内容のチェックを上長や同僚に求める
1. お客様に回答する

みたいなフローがあるのかなとおもいます。

マエストロなしでやろうとすると
- 電話の受付内容のデジタル化（人間またはUiPath以外のソリューション）
- メール監視・添付ドキュメントのDL、内容に応じた振り分けエージェント
- マニュアル、ナレッジ検索（Apps）＆回答文作成（人間）　or　ナレッジのコンテキストを参照し回答文を作成するエージェント
- 回答内容の確認・承認（Action Center）
- 確認・承認済みの回答をお客様に送信するロボット

など、複数のエージェントやロボットを実行管理する必要があります。

これが、***マエストロになると1個のプロセスで管理できちゃいます***✨

::: note
マエストロでは『エージェンティックプロセス』というプロセスをパブリッシュできる様です。
https://docs.uipath.com/ja/maestro/automation-cloud/latest/user-guide/executing-a-simple-process#publish%2C-deploy%2C-and-start-a-process

![パブリッシュしたものはエージェンティックプロセスとなる.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/eb12e68c-2362-42d8-9be6-0f9e915b2b9f.jpeg)

「テナント」＞「パッケージ」＞「エージェンティックプロセス」タブでパッケージは確認できます。（そのはず）※わたしは権限がないのか？パブリッシュはエラーとなりました。。。

![パブリッシュしたものはエージェンティックプロセスとなる2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/76aaac05-5786-4148-a630-7ae4deccb31a.jpeg)
:::

エージェンティックプロセスは***インスタンス（ジョブ）毎に実行証跡を細かく確認できるので、リードタイムが長い仕事で、頻繁に状況確認が必要になるケース***では特に力を発揮します！

（実行証跡イメージ）
![実行証跡を確認できる.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/ff4b0df4-642c-4b7b-aec9-0b90d2d62aad.jpeg)

そして、処理結果に応じたフローの変更をおこないたい場合に、***エージェントまたはロボットを修正せずとも、条件分岐の箱を追加して簡単にフローを変更できる***ため、例外が発生しやすい業務プロセスでは大きなメリットになります。

![条件分岐.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/89ef0f0a-5a54-4430-8324-9b5749b67f50.jpeg)

# マエストロさんの第一印象

![マエストロ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/43c07f01-36e2-4a40-82aa-f897797900a0.jpeg)

昨日のわたし：「うわっ　とっつきにくい！！」
昨日のわたし：「サイドメニューの『プロセス インスタンス』とは？、『モデル化を開始』ボタンを押すしかないこの見た目。モデル化ってAIモデル？何？」
今日のわたし：「『モデル化』はプロセスをモデリングする＝プロセスをデザインするってことで、操作は超簡単よ」

::: note
『モデル化を開始』ボタンをクリックすると、デザイン画面が起動します。
プロジェクトの名称は既定で「Agentic Process」となりますが、この画面上では名称変更ができません。

![デザイン画面ではプロジェクトの名称は変更できない.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/9e2d0f88-1f99-4062-b3d2-8ee108b5c699.jpeg)

プロジェクト名の変更はプロジェクト一覧の三点リーダーから可能です。

![プロジェクトの名前の変更.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/3e0120d6-200d-486c-995d-7a8bd1ec1178.jpeg)
:::

## マエストロくんの取説（基本操作）

まずは開始イベントのアイテムをドラッグ＆ドロップします。

![マエストロ操作3.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/95f7f5d8-72b2-4c55-a8e2-da4c6be8b06a.jpeg)

配置したアイテムをクリックすると、次工程に配置可能なアイテムの選択バーが表示されるので、タスクを追加します。

![マエストロ操作4.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/f37bbd1f-dc60-4cca-a661-9d6f1386eb0b.jpeg)

アイテムを配置したらプロパティでアクションを設定します。
以下はRPAワークフローの実行をアクションに指定した例です。

![マエストロ操作4-1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/44f96a8b-c28e-4b75-ab5f-a2f23154012e.jpeg)

次に条件分岐を追加してみます。
分岐アイテムにタスクを2つ追加します。
（※アイテムが2つ以上つながってはじめて条件プロパティは出現します。）

![マエストロ操作5.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/5c30e546-092a-4379-9010-268e4ec30498.jpeg)

ラベルを変更します。

![マエストロ操作5-1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/e06b0c02-142a-4de1-831e-3707952967a0.jpeg)

![マエストロ操作5-3.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/d160c3d4-90d9-41f1-af3b-36611cb907b9.jpeg)

ラベルを変更したら条件式を設定します。
いずれかのフローを既定のパスに設定し、それ以外のフローについて式エディターで条件式を設定します。

![マエストロ操作6-2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/1db26b7f-4188-44f7-a439-9b5c34cc8492.jpeg)

（参考：式エディター）
![マエストロ操作5-2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/80efa4c4-596e-4803-a30f-9dfbd4d61bc2.jpeg)

同じ要領で終了イベントまで配置したら、モデリング用のアイテムの最下段の Autopilot をクリックし、エラーハンドリングの追加を相談します。
意図した処理にエラー境界イベントが配置されたら「確定」ボタンを押下します。

![マエストロ操作5-4.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/53b25953-1772-440d-a92c-6d3c1f90e6ae.jpeg)

フロー図が少し崩れたので、見た目を直します。

![マエストロ操作5-5.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/de68712d-4533-437a-ad96-1d4852532fc1.jpeg)

画面左上の「テスト」ボタンを押下して動作を確認します。

（実行例1 - 処理結果：false）
![マエストロ操作6-1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/53e4c951-08ee-45b6-9476-0ce1442dca65.jpeg)

（実行例2 - ワークフロー内で故意に例外を発生させたパターン）
![マエストロ操作6.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/e7c63389-42dd-4181-9b96-9e87a76f0778.jpeg)

::: note
できあがったフローの移動は範囲選択で簡単にできます。

![移動は範囲選択で簡単にできる.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/3828987c-a1a4-4681-a58d-93bc253208ca.jpeg)
:::

## モデリング用のアイテムのプロパティ

![マエストロ操作2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/f930bfbe-0cb4-41d5-a40a-bd23d18ab382.jpeg)

### 開始イベント

![開始イベントのプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/804b4403-8cf2-46d4-9995-7b20195cba1f.jpeg)

[設定可能項目]
- 名前
- 説明
- 実装（アクション）
    - なし
    - コネクタイベントを待機
- 入力引数
- 出力引数

::: note
入出力引数で扱えるデータの種類：
文字型　／　整数型　／　浮動小数点型　／　真偽値　／　JSON
![入出力引数で扱えるデータ型.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/8e7512f9-17d6-4370-b208-8991935e98f5.jpeg)
:::

::: note warn
現時点（2025年5月）では引数のファイル渡しはできなそうです。
:::

### 中間イベント

![中間イベントのプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/b576e113-81dc-4d0b-b25c-6cfdd8df1c50.jpeg)

[設定可能項目]
- 名前
- 説明
- 実装（アクション）
    - なし
    - コネクタイベントを待機
    - コネクタアクティビティを実行

### 終了イベント

![終了イベントのプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/327a7838-558d-40e1-b129-5950a705b4e4.jpeg)

[設定可能項目]
- 名前
- 説明
- 実装（アクション）
    - なし
    - コネクタアクティビティを実行

::: note warn
Jun さんの記事によると、イベントの種類的なものが設定できる様にみえるが、わたしの環境ではプロパティが見当たらなかった。
https://qiita.com/utanesuke/items/31ddb31831a5b9276361
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/34e78647-27c0-4ac6-9685-a82932581cd3.png)

Autopilot にイベントタイプのプロパティについて尋ねるも不明...
![イベントタイプのプロパティが見当たらない.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/335dbab3-1211-43b3-81e9-1811089b0353.jpeg)
:::

### タスク

![タスクのプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/d5a62537-81b1-4026-ab8b-094f2aca3c4a.jpeg)

[設定可能項目]
- 名前
- 説明
- 実装（アクション）
    - なし
    - アクションアプリタスクを作成
    - RPAワークフローを開始して待機
    - エージェントを開始して待機
    - 外部エージェントを開始して待機
    - APIワークフローを開始して待機[プレビュー]
    - エージェンティックプロセスを開始
    - エージェンティックプロセスを開始して待機
    - Execute business rule[Preview]
    - キューアイテムを作成
    - キューアイテムを作成して待機
    - コネクタアクティビティを実行
    - コネクタイベントを待機
    - スクリプトを実行
- 入力引数
- 出力引数

### エージェンティックタスク

![エージェンティックタスクのプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/4db1ba10-54c9-4aec-ba4d-328608694553.jpeg)

アクションに「エージェントを開始して待機」が初期セットされる点以外は通常の「タスク」と違いはなさそうです。

### サブプロセス（折りたたみ）

![サブプロセス_折り畳み1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/1a1e532e-5565-4443-be55-fad74882a06f.jpeg)

[設定可能項目]
- 名前
- 説明
- 出力引数　←　制御はかかっておらず利用できるが、アクションが設定できないため特につかわないもののイメージ。

::: note
「サブプロセス（折りたたみ）」のアイテムをクリックすると、アイテムの下に『ビュー』という選択欄が表示されます。この選択欄をクリックすると、展開後のサブプロセスが表示されます。

![サブプロセス_折り畳み2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/691f027f-fb5c-4e63-85f1-77fec5b35ed3.jpeg)
:::

### サブプロセス（展開）

![サブプロセス_展開.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/3be4ef3b-59c2-4fb6-bbf8-0162898ef1c3.jpeg)

[設定可能項目]
- 名前
- 説明
- 出力引数　←　制御はかかっておらず利用できるが、アクションが設定できないため特につかわないもののイメージ。

::: note
「サブプロセス（展開）」のアイテムは、クリックした後（青枠状態）であれば拡大・縮小ができます。
:::

### データオブジェクト ／ データストア

![データオブジェクト_DB.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/292260ab-ae40-414b-ba79-00b736b2318f.jpeg)

[設定可能項目]
- 名前
- 説明

::: note
「データオブジェクト」「データストア」とその他のアイテムは双方から接続可能です。

（双方から接続した際のイメージ）
![データオブジェクト_DB2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/7af4375c-229d-4548-9598-69c2341e7d71.jpeg)
:::

### 参加者

![参加者のプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/b9c64de1-b39a-4bb9-b02c-f8e715340458.jpeg)

[設定可能項目]
- 名前
- 説明
- 多重度　←　言葉の意味から他のレーンも同時に流せるのをイメージしましたが、ON/OFFで挙動の変化なし。この機能が何者かは不明。

::: note
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/ea87411e-8535-4081-be7a-6e7f27bf0924.png)

「レーンを3つに分割」を押下すると、簡単にレーン分割ができます。

![参加者のプロパティ2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/4ef0cbcd-e7a0-4545-a88c-2f0a1f7b6978.jpeg)
:::

### グループ

![グループのプロパティ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/200f54fd-f6aa-4ca0-82ff-587f0e3dae26.jpeg)

[設定可能項目]
- 名前
- 説明

# さいごに
いかがでしたでしょうか。
基本操作の部分は直感的でわかりやすかったですが、アイテムによっては最初使い方に戸惑ったものもあったので、備忘までにまとめました。
個人的に一番(・∀・)ｲｲﾈ!!とおもったのは「ミニマップ」

![ミニマップ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/3e700809-fde8-40a2-8be0-bd5a16c169c3.jpeg)

デザインパネルの表示の拡大・縮小・移動が簡単にできます！
最後までお読みいただきありがとうございます(・ω・)ノ