argent-create-flow について
argent-create-flow は、アプリテスト用の YAML フローを記録、整理、監査、再生するための Argent ユーザー向けスキルです。検証済みの動作を記録し、完成したフローを最初から最後まで再生する手順を重視します。
主な機能
- 01最初の操作を記録
- 02操作中に検証項目を記録
- 03安定したセマンティックセレクター
- 04YAML フローの監査と再生
- 05再生失敗への体系的な対処
活用シーン
- 01再現可能なアプリ QA フローの作成
- 02受け入れ基準を記録済みチェックに変換
- 03再生に失敗したフローの修正
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ software-mansion/ argent --skill argent-create-flowインストール後、Claude Code で/argent-create-flowを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/flow-yaml.mdlive-authoring.mdreliability-and-recovery.md詳細
Argent フローを作成する
Argent フローは、.argent/flows/<name>.yaml に保存される、リプレイ可能な一連の手順です。
保存済みの QA テストケース、チケット、または受け入れ基準の場合は、まず argent-qa-flows を読み込んでください。決定的なセットアップ、受け入れの証拠、2 パスの証明が追加されます。
関連するリファレンスを読む
- フローを作成または変更する前に、ライブでの作成を最後まで読んでください。
- YAML を整えたり、組み立てたり、手動で確認したりする場合は、フロー YAMLを読んでください。Vega の場合は、リモートツールまたはキーボードツールを記録する前に、そのプラットフォームの制限を読んでください。
- フローは実機の iPhone(
kindが"device"の iOSlist-devicesエントリ)で実行されますが、リプレイ時に自動で実機へバインドされることはありません。シミュレーターが起動していない場合も同様です。電話の udid をdevice(CLI の--device)に渡してください。また、実行できるのはconnectedの電話のみです。pinch/rotateのステップは、ライブツールと同様に実機では失敗します。ハードウェア上では、フローツリーはdescribeツリーです。ID とロールは同じで、UIView 階層はありません。ハードウェアの仕様についてはargent-ios-device-interactを参照してください。 - キャプチャ時の警告、未加工の座標、利用できないツリー、タイミングのずれた遷移、オーバーレイ、またはリプレイの失敗については、信頼性と復旧を読んでください。
絶対に守るべきルール
- 最初のウォークスルーを記録します。 初回起動またはアプリ内操作の前に、レコーダーを開始してください。事前に練習した手順を再構成してはいけません。
- 状態が現れた時点でチェックを記録します。
await-ui-elementをライブで記録し、その後、整える段階で変換してください。echo が記録するのは意図や診断コンテキストであり、アプリの動作や判定ではありません。スクリーンショットは人が確認する証拠であり、実行可能な判定ではありません。要素が存在しないことを確認するには、まず同じセレクターをvisibleとして記録し、要素を取り除く操作を行ってから、hiddenとして記録してください。 - セマンティックターゲットを使用します。 厳密な ID を優先し、次に安定したテキストまたはアクセシビリティラベルを使ってください。画面外の要素には
scroll-toを使用してください。未加工座標に関する警告はすべて、ただちに座標フォールバックゲートを通じて解決してください。 - 画面が変わるたびに、その変化を証明します。 遷移先だけを対象とする ID チェックを記録してください。整える段階では、その後に
await: { idle: true }を追加してください。静止していることは画面の同一性を証明しません。また、idleは警告付きで成功する場合があります。 - 実行した動作だけを整えます。 記録したステップの意味を変えずに変換してください。不足している操作や構造チェックは、ライブで記録してください。記録せずに追加できるのは、計画済みの
snapshot:、ナビゲーションのawait: { idle: true }、およびドキュメントに記載された Chromium のパッケージング用launch:のみです。 - スクリプトはユーザーが要求した場合にのみ使用します。 フロー YAML:ローカルスクリプトを読んでから、各スクリプトを
flow-add-scriptで記録してください。 - 最終的な YAML を最初から最後までリプレイします。 通常のフローでは、中断のない全体パスを 1 回実行する必要があります。
argent-qa-flowsでは、連続して 2 回実行する必要があります。
安定したセレクター
安定したセレクターはアプリのコードによって固定されており、アカウント、データ、時間、件数、順序、およびフローがサポートするすべてのロケールと環境が変わっても維持されます。settings-screen のような ID を優先してください。Today、Item 4、ユーザー名、カウンター、タイムスタンプなどの値を条件にしてはいけません。
フロー専用のセレクタースコープ
整える段階では、繰り返し現れる要素を区別するために within、after、next を使用してください。フレームを基準とするセマンティクスと失敗ケースについては、フロー YAML:関係スコープを読んでください。
ワークフロー
- フローの種類を選択します。
- e2e:
echo:またはscript:以外で最初に現れるステップがlaunch:です。フローがプロセスの起動を制御します。 - fragment: 先頭に
launchはありません。正確なexecutionPrerequisiteを宣言してください。
- e2e:
- ライブでの作成に従い、開始し、検証済みのステップを一度に 1 つずつ記録し、完了後に整え、監査してリプレイします。
- ファイル、リプレイコマンド、結果、前提条件または副作用、および座標や未加工ジェスチャーに関するすべての例外を報告します。
事前記録
3 回以上のインタラクションを繰り返す前に、ユーザーに伝えて記録を開始してください。その実行を記録し、後で再生してください。完了した操作経路を遡って記録することはできません。
修正
再生に失敗した場合は、信頼性と復旧に従ってください。最初の相違点を調べ、根拠のある最小単位を修正し、監査して、フロー全体を再生してください。修正サイクルが 2 回失敗したら停止してください。合格させるために、要求されたチェックを決して緩めないでください。