← LOG

AI2026.02.10

【番外編1】UiPathのXAMLをAIに読ませてみた実録ログ——Claude Sonnet 4.5で解析〜Mermaid化まで

#uipath#xaml#mermaid#ai#rpa

はじめに

この記事は、Zenn に公開している:

の**番外編1(実録ケーススタディ)**です。

本編では、

という 「プロンプトの型」そのものを紹介しました。

本記事では、そのプロンプトを Claude Sonnet 4.5 に投げてみた実際のログを整理し、

といった観点で振り返ります。


対象ワークフローと前提

対象は、以下 3 つの .xaml です。

ざっくり役割は次の通りです。

以降、この 3 つをまとめて AI に渡し、本編で紹介した「3つのプロンプト」を順番に投げていきます。


1. 解析用プロンプト → 構造化された表

まずは本編で紹介した「解析用プロンプト」を、そのまま Sonnet 4.5 に投げました。

投げたプロンプト(抜粋)

(※全文は本編記事の「1. 解析用プロンプト」を参照)

Sonnet 4.5 の出力(ダイジェスト)

実際の出力では、以下のような ユニーク番号付きの表がワークフローごとに生成されました。ここではダイジェストとして一部だけ載せます。

Main.xaml

ユニーク番号処理の内容 (DisplayName)処理の種類 (Activity Type)つながるユニーク番号備考/使用変数
M01Main Sequence / main 内の Excel プロセス スコープSequence / ExcelProcessScopeX / ReadRangeM02dt_config: DataTableconfig.xlsxconfig シートをヘッダーなしで ReadRange し、dt_config に格納。
M02顧客データ取得 シーケンスSequence / InvokeWorkflowFileM03顧客データ取得フローチャート.xaml を Invoke。引数 argument_config (In)[dt_config] を渡す。
M03顧客データ登録 シーケンスSequence / InvokeWorkflowFile(終了)顧客データ登録フローチャート.xaml を Invoke。引数 argument_config (In)[dt_config] を渡す。

顧客データ取得フローチャート.xaml

ユニーク番号処理の内容 (DisplayName)処理の種類 (Activity Type)つながるユニーク番号備考/使用変数
G01設定ファイルをdicにSequence / MultipleAssignG02argument_config: DataTable (In)configDict: Dictionary<string, string> に変換。ToDictionary(Function(row) row(0).ToString, Function(row) row(1).ToString)。さらに str_inputfileSavepath = configDict("inputFile保存先")
G02営業獲得データをデータ取得Sequence / NApplicationCard / NClick / NExtractDataG03WebアプリA からボタン「獲得データを表示」をクリックし、画面上の表を NExtractDatadt_kakutoku に取得。
G03営業獲得Excelファイル作成Sequence / BuildDataTable / ForEachRow / MultipleAssign / ExcelProcessScopeX / WriteRangeG04dtOutput を構築し、ForEachRow(dt_kakutoku)AddDataRow。オプション関連は If(CurrentRow("備考").ToString.Contains("なし"), "なし", "あり")CurrentRow("備考").ToString.Split(":"c).Last で判定。さらに dtOutput.AsEnumerable().Skip(1).CopyToDataTable() で先頭行をスキップし、excelfullpath = Path.Combine(configDict("inputFile保存先"), Now.ToString("yyyyMMdd") & "_営業獲得データ_rpa用inputFile.xlsx") を計算して WriteRange
G04ブラウザーを使用 Edge: WebアプリA - 営業獲得管理システムNApplicationCard / NClick(終了)WebアプリA に対して「獲得データを表示」をクリックする単純な操作。

顧客データ登録フローチャート.xaml

ユニーク番号処理の内容 (DisplayName)処理の種類 (Activity Type)つながるユニーク番号備考/使用変数
R01設定ファイルをdicに、登録データ読み込みSequence / MultipleAssign / ExcelProcessScopeX / ReadRangeR02argument_configconfigDict への ToDictionary は取得フローと同じ。excelInputFullpath = Path.Combine(configDict("inputFile保存先").ToString, Now.ToString("yyyyMMdd") & "_営業獲得データ_rpa用inputFile.xlsx") を生成し、ReadRange でシート「営業獲得データ」を dt_Exceldata に読み込み。
R02データ登録 内の最初のブラウザ起動Sequence / NApplicationCard / NClickR03WebアプリB(営業獲得データ登録)の「データを登録する」ボタンをクリックして入力画面を表示。
R03データ登録 内の 繰り返し (データ テーブルの各行)ForEachRowR04ForEachRow(dt_Exceldata) で各行 CurrentRow を処理するループ。内部で R04 → R05 を経て完了したら次行へ。
R04データ登録を実施Sequence / NApplicationCard / NTypeInto / NSelectItemR05WebアプリBに対して:顧客名 *, 獲得日 *, 金額 *NTypeInto営業担当 *, 商品名 *, オプションの有無 *, オプション品名 *NSelectItem で選択。1行分の入力を完了させるメイン処理。
R05入力内容の確認と登録Sequence / NApplicationCard / NClickR03(次行)ボタン「確認」→「✅ 登録」→「データを登録する」を順にクリックし、入力内容の確定と登録を行う。完了後は ForEachRow に戻り次の行へ。最終行終了後フロー終了。

所感


2. 深掘り用プロンプト → 要確認ステップの抽出

次に、本編で紹介した「深掘り用プロンプト」を、いま得た表に対して投げます。

投げたプロンプト(要旨)

といった観点で、「詳細なステップ確認が必要と思われるユニーク番号」を 3〜5 個挙げてほしい、という指示です。

Sonnet 4.5 が挙げたステップ

所感


3. Mermaid 生成用プロンプト → フロー図コード

最後に、「Mermaid 生成用プロンプト」を使って、先ほどの表から graph TD を作ってもらいます。

生成された Mermaid コード

graph TD

  %% Main.xaml
  subgraph Main["Main.xaml(メイン)"]
    M01["Main Sequence / main 内の Excel プロセス スコープ"]
    M02["顧客データ取得 シーケンス"]
    M03["顧客データ登録 シーケンス"]

    M01 --> M02
    M02 --> M03
  end

  %% 顧客データ取得フローチャート.xaml
  subgraph 顧客データ取得["顧客データ取得フローチャート.xaml"]
    G01["設定ファイルをdicに"]
    G02["営業獲得データをデ取得"]
    G03["営業獲得Excelファイル作成"]
    G04["ブラウザーを使用 Edge: WebアプリA - 営業獲得管理システム"]

    G01 --> G02
    G02 --> G03
    G03 --> G04
  end

  %% 顧客データ登録フローチャート.xaml
  subgraph 顧客データ登録["顧客データ登録フローチャート.xaml"]
    R01["設定ファイルをdicに、登録データ読み込み"]
    R02["データ登録 内の最初のブラウザ起動"]
    R03["データ登録 内の 繰り返し (データ テーブルの各行)"]
    R04["データ登録を実施"]
    R05["入力内容の確認と登録"]

    R01 --> R02
    R02 --> R03
    R03 --> R04
    R04 --> R05
    R05 --> R03
  end

  %% ワークフロー呼び出し関係(Main から子XAML)
  M02 -.->|Invoke WorkflowFile| G01
  M03 -.->|Invoke WorkflowFile| R01

このコードを Mermaid Live Editor や VS Code の Mermaid プレビュー拡張などに貼ると、

が一目で分かる図が得られます。

所感


4. やってみて分かったこと

今回、同じプロンプトセットを Sonnet 4.5 に対して実行してみて、次のような学びがありました。


おわりに(今後の番外編について)

本記事では、本編で紹介したプロンプトを、実際の .xaml(顧客データ取得・登録フロー)に対して Sonnet 4.5 で実行したログをまとめました。

という 3 ステップが、現実のプロジェクトでも十分実用的な形になることを確認できました。

今後の番外編としては、

といった内容も試していく予定です。

Zennでも読む ← LOGに戻る