- 概要
- はじめに
- 概念
- UiPath CLI を使用する
- 使用ガイド
- CI/CD レシピ
- コマンド リファレンス
- 概要
- 終了コード
- グローバル オプション
- uip codedagent
- UIP コーダー
- UIP のコンテキスト グラウンディング
- uip docsai
- uip 関数
- UIP ガードレール
- uip llm - 構成
- uip llm-gateway
- uip model-hub
- add-test-data-entity
- テスト データのキューを追加
- 追加-テスト-データ-バリエーション
- 分析
- 開発
- プロジェクトを作成
- 差分
- アクティビティを検索
- GET-ANALYZER-RULES
- get-default-activity-xaml
- エラーを取得
- 手動テスト用のテスト ケースを取得
- 手動テストステップを取得
- get-library-object-repository
- オブジェクト リポジトリを取得
- get-versions
- Get-workflow-example
- indicate-application
- 要素を示す
- inspect-package
- install-data-fabric-entities
- パッケージのインストールまたは更新
- list-data-fabric-entities
- リスト - インスタンス
- list-workflow-examples
- パッケージ化
- パブリッシュ
- リモート
- 元に戻す
- 実行、デバッグ、実行
- ファイル名を実行
- 検索テンプレート
- スタートスタジオ
- 実行を停止
- TM
- UIA
- UIP タスク
- uip traces
- UIP トレースのフィードバック
- 移行
- 参照とサポート
uip agent validate
パッケージ化、パブリッシュ、デバッグの前に、「uip agent validate」を使用して、ローカル エージェント プロジェクトを厳密かつ読み取り専用で検証します。
uip agent validate は 、読み取り専用の厳密 なチェックです。これは、Studio Web はこのディレクトリをそのまま受け入れるのか、という 1 つの疑問に答えます。ファイルを書き込むことはありません。プロジェクトのストレージ スキーマが遅れている場合、またはentry-points.json/bindings_v2.jsonソースから逸脱している場合、検証は失敗し、uip agent refresh (実際にファイルを移行して派生成果物を再生成する別のコマンド) を指すコードが表示されます。
検証はローカル専用で、ログインは必要ありません。
概要
uip agent validate [path] [--path <path>] [--bindings-target <path>] [--inline-in-flow]
uip agent validate [path] [--path <path>] [--bindings-target <path>] [--inline-in-flow]
[path] と --path は相互に排他的であり、両方のスローを AgentValidateConflictingPath渡します。
すべての uip agent validate 呼び出しでは、 グローバル オプション (--output、 --output-filter、 --log-level、 --log-file) が優先されます。終了コードは 標準コントラクトに従います。
引数
[path](任意、既定値は.) — エージェントのプロジェクト ディレクトリです。agent.jsonを含む必要があります。スタンドアロン モードでは、さらにentry-points.jsonとproject.uiprojが必要です。--pathと組み合わせることはできません。
オプション
| フラグ | 既定 (Default) | 目的 |
|---|---|---|
--path <path> | — | positional [path] 引数の代替手段です。組み合わせることはできません。 |
--bindings-target <path> | <projectDir>/bindings_v2.json;--inline-in-flowの場合、直接の親ディレクトリに .flow ファイルが含まれている場合のbindings_v2.json | 比較する bindings_v2.json ファイルへのパスです。uip agent refreshにも同じオプションが反映されます。 |
--inline-in-flow | 無効 | フロー プロジェクト内のインライン エージェントを検証します。entry-points.jsonとproject.uiprojのチェックをスキップします。 |
例
# Validate the current directory
uip agent validate
# Validate a specific standalone project
uip agent validate ./my-agent
# Equivalent, using the flag form
uip agent validate --path ./my-agent
# Validate an inline agent (the flow-project subdirectory)
uip agent validate ./my-flow/<uuid> --inline-in-flow
# Validate the current directory
uip agent validate
# Validate a specific standalone project
uip agent validate ./my-agent
# Equivalent, using the flag form
uip agent validate --path ./my-agent
# Validate an inline agent (the flow-project subdirectory)
uip agent validate ./my-flow/<uuid> --inline-in-flow
チェック内容
スタンドアロン モードは、次の順序で実行されます。
- 必要なファイル —
agent.json、entry-points.json、project.uiproj。 agent.json構造とスキーマ バージョン ゲート —agent.versionCLI の現在のスキーマ バージョンと等しくなければなりません (新しいプロジェクト バージョンではAgentValidationOutdatedで失敗し、uipアップグレードするように指示され、古いプロジェクト バージョンではrefreshを実行するように指示されます)。また、type === "lowCode"も確認しますprojectIdが UUID であること、settings.model/settings.engine/settings.modeが存在するか、metadata.storageVersion存在するか、 が少なくとも[system, user]messages[]を持っているかどうかも確認します。messages[].contentTokens— 各メッセージのcontentTokens配列は、contentから再派生され ({{…}}/@{…}で分割)、ディスク上の配列と比較されます。カウント、型、または生文字列の不一致はエラーです。(ここでのドリフトの修正はrefreshの仕事です — validateはそれを報告するだけです。- I/O スキーマと入力変数参照 —
inputSchema/outputSchemaはそれぞれ{ type: "object", properties: {…} }する必要があります。メッセージ内のすべての{{input.<key>}}参照は、inputSchema.propertiesで宣言されたキーに解決される必要があります (input.プレフィックスのないベア{{key}}は拒否され、ランタイムはそれをリテラル テキストとして残します)。 - リソース — インライン
agent.resourcesとファイルベースのresources/<Name>/resource.jsonエントリの両方toolリソースには、UUIDid、name、type、および (locationが設定されている場合は"solution"/"external"のいずれか) が必要です。場所が"solution"の場合は (--inline-in-flowの場合は"")properties.folderPath === "solution_folder"。escalationリソースとmcpリソースには、UUID と名前が必要です。フォルダーの名前も確認されます。スタンドアロン リソース フォルダーの名前は、リソースのnameにちなんで名前を付ける必要があります。インライン リソース フォルダーには、リソースのidにちなんで名前を付ける必要があります (大文字と小文字を区別しません)。 - エントリ ポイントの同期 —
entry-points.json → entryPoints[0].input/outputはagent.jsonのinputSchema/outputSchema(両方にはプロパティ キー、入力には必須の配列のみ) に一致する必要があります。--inline-in-flowが設定されている場合はスキップされます。 project.uiproj—ProjectType === "Agent"です。--inline-in-flowが設定されている場合はスキップされます。flow-layout.jsonプレゼンスと解析 (スタンドアロンのみ) — 「」が存在しないか、形式が正しくないか、失敗し、refresh実行するように指示が表示されます。- ストレージ バージョン ゲート — プロジェクトの
metadata.storageVersionは、既知の最新の移行バージョンと等しくなければなりません。それ以外の場合はAgentValidationOutdatedします (アップグレードuip。または、プロジェクトが遅れている場合はrefreshを実行します)。 - 現在の Studio Web スキーマに対するスキーマの厳密な検証
- Integration Service コネクタ ツールのリソースの存在 (
--inline-in-flowのみ) — フローに接続されているすべての Integration Service コネクタ ツール ノードには、対応するディスクresources/<id>/resource.jsonが必要です。 - 派生ファイルドリフトチェック — 使用するのと同じジェネレータ
refreshドライランで、entry-points.json/bindings_v2.jsonを再生されるものと比較します。参照整合性の失敗 (たとえば、参照されているがリソースとして存在しないツール) はハード エラーです。コンテンツの不一致はドリフトとして報告され、どちらも修正すべきrefreshを示します。
静的エラーは、後のステップを実行する前に終了コード 1 ですぐに失敗します。
データシェイプ(--output json)
有効期間 (Code: "AgentValidation"):
{
"Code": "AgentValidation",
"Data": {
"Status": "Valid",
"ProjectDir": "/abs/path/my-agent",
"Model": "gpt-5.4",
"StorageVersion": "47.0.0",
"Validated": {
"agent": true,
"resources": 2,
"evalSets": 0,
"evaluators": 0
}
}
}
{
"Code": "AgentValidation",
"Data": {
"Status": "Valid",
"ProjectDir": "/abs/path/my-agent",
"Model": "gpt-5.4",
"StorageVersion": "47.0.0",
"Validated": {
"agent": true,
"resources": 2,
"evalSets": 0,
"evaluators": 0
}
}
}
Validated は、厳密スキーマ パスでチェックされた内容を分解するオブジェクトであり、ブール値ではありません。--inline-in-flow実行にはInlineInFlow: trueが追加され、派生ファイル チェックで致命的ではない警告が生成された場合は、Warnings配列が追加されます。
古い (Code: "AgentValidationOutdated"):
{
"Code": "AgentValidationOutdated",
"Message": "Storage version 45.0.0 is outdated; latest is 47.0.0.",
"Data": { "CurrentVersion": "45.0.0", "LatestVersion": "47.0.0" },
"Instructions": "Run `uip agent refresh` to migrate."
}
{
"Code": "AgentValidationOutdated",
"Message": "Storage version 45.0.0 is outdated; latest is 47.0.0.",
"Data": { "CurrentVersion": "45.0.0", "LatestVersion": "47.0.0" },
"Instructions": "Run `uip agent refresh` to migrate."
}
ドリフト (Code: "AgentValidationDrift"):
{
"Code": "AgentValidationDrift",
"Message": "Derived artifacts are out of sync with source (1 issue(s))",
"Data": { "Errors": ["bindings_v2.json: out of sync — tool \"InvoiceLookup\" binding changed"] },
"Instructions": "Run `uip agent refresh` to regenerate entry-points.json and bindings_v2.json."
}
{
"Code": "AgentValidationDrift",
"Message": "Derived artifacts are out of sync with source (1 issue(s))",
"Data": { "Errors": ["bindings_v2.json: out of sync — tool \"InvoiceLookup\" binding changed"] },
"Instructions": "Run `uip agent refresh` to regenerate entry-points.json and bindings_v2.json."
}
静的/スキーマの失敗 です (Code: "AgentValidationFailed"):
{
"Code": "AgentValidationFailed",
"Message": "Validation failed with 2 error(s)",
"Data": {
"Errors": [
"agent.json.settings.model: missing or empty",
"messages[1].contentTokens: contentTokens has 3 entries but content requires 2. Rebuild contentTokens to match content."
]
}
}
{
"Code": "AgentValidationFailed",
"Message": "Validation failed with 2 error(s)",
"Data": {
"Errors": [
"agent.json.settings.model: missing or empty",
"messages[1].contentTokens: contentTokens has 3 entries but content requires 2. Rebuild contentTokens to match content."
]
}
}
関連
uip agent init— 既定できれいに検証されるプロジェクトのスキャフォールディングです。uip agent refresh— ファイルを実際に移行および再生成するコマンド。[検証] が指すたびに実行します。uip agent review— Validate の [合格/不合格] スキーマ チェックとは異なり、スコア付けされた品質の合格です。