@salesforce/plugin-agent 1.42.0 → 1.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +495 -73
- package/lib/commands/agent/adl/file/add.d.ts +1 -1
- package/lib/commands/agent/adl/file/add.js +9 -5
- package/lib/commands/agent/adl/file/add.js.map +1 -1
- package/lib/commands/agent/adl/file/list.js +14 -1
- package/lib/commands/agent/adl/file/list.js.map +1 -1
- package/lib/commands/agent/adl/get.js +16 -1
- package/lib/commands/agent/adl/get.js.map +1 -1
- package/lib/commands/agent/adl/list.d.ts +1 -0
- package/lib/commands/agent/adl/list.js +7 -1
- package/lib/commands/agent/adl/list.js.map +1 -1
- package/lib/commands/agent/adl/update.d.ts +1 -0
- package/lib/commands/agent/adl/update.js +12 -0
- package/lib/commands/agent/adl/update.js.map +1 -1
- package/lib/commands/agent/adl/upload.d.ts +1 -1
- package/lib/commands/agent/adl/upload.js +11 -4
- package/lib/commands/agent/adl/upload.js.map +1 -1
- package/lib/commands/agent/generate/test-spec.d.ts +9 -0
- package/lib/commands/agent/generate/test-spec.js +195 -12
- package/lib/commands/agent/generate/test-spec.js.map +1 -1
- package/lib/commands/agent/mcp/asset/list.d.ts +16 -0
- package/lib/commands/agent/mcp/asset/list.js +68 -0
- package/lib/commands/agent/mcp/asset/list.js.map +1 -0
- package/lib/commands/agent/mcp/asset/replace.d.ts +18 -0
- package/lib/commands/agent/mcp/asset/replace.js +95 -0
- package/lib/commands/agent/mcp/asset/replace.js.map +1 -0
- package/lib/commands/agent/mcp/create.d.ts +24 -0
- package/lib/commands/agent/mcp/create.js +112 -0
- package/lib/commands/agent/mcp/create.js.map +1 -0
- package/lib/commands/agent/mcp/delete.d.ts +19 -0
- package/lib/commands/agent/mcp/delete.js +65 -0
- package/lib/commands/agent/mcp/delete.js.map +1 -0
- package/lib/commands/agent/mcp/fetch.d.ts +16 -0
- package/lib/commands/agent/mcp/fetch.js +68 -0
- package/lib/commands/agent/mcp/fetch.js.map +1 -0
- package/lib/commands/agent/mcp/get.d.ts +16 -0
- package/lib/commands/agent/mcp/get.js +58 -0
- package/lib/commands/agent/mcp/get.js.map +1 -0
- package/lib/commands/agent/mcp/list.d.ts +18 -0
- package/lib/commands/agent/mcp/list.js +73 -0
- package/lib/commands/agent/mcp/list.js.map +1 -0
- package/lib/commands/agent/mcp/update.d.ts +24 -0
- package/lib/commands/agent/mcp/update.js +115 -0
- package/lib/commands/agent/mcp/update.js.map +1 -0
- package/lib/commands/agent/preview/start.d.ts +1 -0
- package/lib/commands/agent/preview/start.js +4 -1
- package/lib/commands/agent/preview/start.js.map +1 -1
- package/lib/commands/agent/preview.d.ts +1 -0
- package/lib/commands/agent/preview.js +4 -0
- package/lib/commands/agent/preview.js.map +1 -1
- package/lib/components/agent-preview-react.d.ts +2 -1
- package/lib/components/agent-preview-react.js +3 -3
- package/lib/components/agent-preview-react.js.map +1 -1
- package/lib/flags.d.ts +12 -1
- package/lib/flags.js +31 -0
- package/lib/flags.js.map +1 -1
- package/messages/agent.adl.file.add.md +7 -3
- package/messages/agent.adl.list.md +4 -0
- package/messages/agent.adl.update.md +4 -0
- package/messages/agent.generate.test-spec.md +33 -5
- package/messages/agent.mcp.asset.list.md +25 -0
- package/messages/agent.mcp.asset.replace.md +49 -0
- package/messages/agent.mcp.create.md +61 -0
- package/messages/agent.mcp.delete.md +37 -0
- package/messages/agent.mcp.fetch.md +25 -0
- package/messages/agent.mcp.get.md +25 -0
- package/messages/agent.mcp.list.md +33 -0
- package/messages/agent.mcp.update.md +65 -0
- package/messages/shared.md +16 -0
- package/oclif.manifest.json +1971 -1081
- package/package.json +14 -4
- package/schemas/agent-adl-file-add.json +7 -1
- package/schemas/agent-mcp-asset-list.json +65 -0
- package/schemas/agent-mcp-asset-replace.json +65 -0
- package/schemas/agent-mcp-create.json +144 -0
- package/schemas/agent-mcp-delete.json +22 -0
- package/schemas/agent-mcp-fetch.json +66 -0
- package/schemas/agent-mcp-get.json +86 -0
- package/schemas/agent-mcp-list.json +101 -0
- package/schemas/agent-mcp-update.json +86 -0
package/oclif.manifest.json
CHANGED
|
@@ -374,6 +374,15 @@
|
|
|
374
374
|
"allowNo": false,
|
|
375
375
|
"type": "boolean"
|
|
376
376
|
},
|
|
377
|
+
"context-variables": {
|
|
378
|
+
"description": "Sets variables on the agent preview session, mirroring what the in-org Agentforce Builder UI does when you override variables before sending a message. Specify this flag multiple times or use comma-separated values. Two namespaces are supported, distinguished by the name shape. Names pass through to the runtime verbatim — the CLI doesn't transform them.\n\nLinked context variables use the \"$Context.\" prefix. These map to externally-provided fields that the runtime resolves (declared in the bundle's globalConfiguration.contextVariables) and are read by live actions and topic-routing expressions via $Context.Name. Example: $Context.MyLinkedVar=some-value.\n\nState variables use the bare developerName, no prefix. These seed mutable agent state declared in agentVersion.stateVariables. Example: MyStateVar=some-value.\n\nBoth namespaces can be mixed in one value. Example: --context-variables '$Context.MyLinkedVar=foo,MyStateVar=bar'.\n\nTips: (1) Quote the whole value in single quotes so $Context isn't shell-expanded. (2) Names are sent verbatim — a bare name is treated as a state variable, not a linked context variable, so live actions that bind via $Context.Name will see null. (3) Type defaults to Text.",
|
|
379
|
+
"name": "context-variables",
|
|
380
|
+
"summary": "Session variables for the agent preview session, in the form Name=Value.",
|
|
381
|
+
"delimiter": ",",
|
|
382
|
+
"hasDynamicHelp": false,
|
|
383
|
+
"multiple": true,
|
|
384
|
+
"type": "option"
|
|
385
|
+
},
|
|
377
386
|
"agent-json": {
|
|
378
387
|
"dependsOn": [
|
|
379
388
|
"authoring-bundle"
|
|
@@ -745,6 +754,18 @@
|
|
|
745
754
|
"hasDynamicHelp": false,
|
|
746
755
|
"multiple": false,
|
|
747
756
|
"type": "option"
|
|
757
|
+
},
|
|
758
|
+
"source-type": {
|
|
759
|
+
"name": "source-type",
|
|
760
|
+
"summary": "Filter by source type: sfdrive, knowledge, or retriever.",
|
|
761
|
+
"hasDynamicHelp": false,
|
|
762
|
+
"multiple": false,
|
|
763
|
+
"options": [
|
|
764
|
+
"sfdrive",
|
|
765
|
+
"knowledge",
|
|
766
|
+
"retriever"
|
|
767
|
+
],
|
|
768
|
+
"type": "option"
|
|
748
769
|
}
|
|
749
770
|
},
|
|
750
771
|
"hasDynamicHelp": true,
|
|
@@ -932,6 +953,13 @@
|
|
|
932
953
|
"summary": "Restrict to public Knowledge articles only (KNOWLEDGE libraries, triggers re-indexing).",
|
|
933
954
|
"allowNo": true,
|
|
934
955
|
"type": "boolean"
|
|
956
|
+
},
|
|
957
|
+
"retriever-id": {
|
|
958
|
+
"name": "retriever-id",
|
|
959
|
+
"summary": "Swap the retriever for a RETRIEVER library (must be an active Custom Retriever ID).",
|
|
960
|
+
"hasDynamicHelp": false,
|
|
961
|
+
"multiple": false,
|
|
962
|
+
"type": "option"
|
|
935
963
|
}
|
|
936
964
|
},
|
|
937
965
|
"hasDynamicHelp": true,
|
|
@@ -1018,7 +1046,7 @@
|
|
|
1018
1046
|
"required": true,
|
|
1019
1047
|
"summary": "Path to the file to upload.",
|
|
1020
1048
|
"hasDynamicHelp": false,
|
|
1021
|
-
"multiple":
|
|
1049
|
+
"multiple": true,
|
|
1022
1050
|
"type": "option"
|
|
1023
1051
|
},
|
|
1024
1052
|
"wait": {
|
|
@@ -1058,16 +1086,13 @@
|
|
|
1058
1086
|
"upload:adl:agent"
|
|
1059
1087
|
]
|
|
1060
1088
|
},
|
|
1061
|
-
"agent:
|
|
1089
|
+
"agent:mcp:create": {
|
|
1062
1090
|
"aliases": [],
|
|
1063
1091
|
"args": {},
|
|
1064
|
-
"description": "
|
|
1092
|
+
"description": "Registers an external Model Context Protocol (MCP) server with the API Catalog and discovers its assets (tools, prompts, and resources). Provide the server URL and, when the server requires it, OAuth authorization details. When the authorization type is OAUTH you must supply the identity provider, client ID, client secret, and scope.",
|
|
1065
1093
|
"examples": [
|
|
1066
|
-
"
|
|
1067
|
-
"
|
|
1068
|
-
"Be prompted for all required and optional agent properties; use your default org:\n<%= config.bin %> <%= command.id %> --full-interview",
|
|
1069
|
-
"Specify an existing agent spec file called \"specs/resortManagerAgent.yaml\", and then overwrite it with a new version that contains newly AI-generated topics based on the updated role information passed in with the --role flag:\n<%= config.bin %> <%= command.id %> --spec specs/resortManagerAgent.yaml --output-file specs/resortManagerAgent.yaml --role \"Field customer complaints, manage employee schedules, and ensure all resort operations are running smoothly\"",
|
|
1070
|
-
"Specify that the conversational tone of the agent is formal and to attach the \"resortmanager@myorg.com\" username to it; be prompted for the required properties and use your default org:\n<%= config.bin %> <%= command.id %> --tone formal --agent-user resortmanager@myorg.com"
|
|
1094
|
+
"Create an MCP server with no authentication:\n<%= config.bin %> <%= command.id %> --name myServer --server-url https://mcp.example.com --target-org myOrg",
|
|
1095
|
+
"Create an MCP server that uses OAuth authentication, piping the client secret from stdin to keep it out of shell history:\ncat secret.txt | <%= config.bin %> <%= command.id %> --name myServer --server-url https://mcp.example.com --auth-type OAUTH --identity-provider myIdp --client-id abc123 --client-secret - --scope \"read write\" --target-org myOrg"
|
|
1071
1096
|
],
|
|
1072
1097
|
"flags": {
|
|
1073
1098
|
"json": {
|
|
@@ -1102,164 +1127,113 @@
|
|
|
1102
1127
|
"multiple": false,
|
|
1103
1128
|
"type": "option"
|
|
1104
1129
|
},
|
|
1105
|
-
"
|
|
1106
|
-
"
|
|
1107
|
-
"
|
|
1108
|
-
"
|
|
1109
|
-
"
|
|
1110
|
-
"options": [
|
|
1111
|
-
"customer",
|
|
1112
|
-
"internal"
|
|
1113
|
-
],
|
|
1114
|
-
"type": "option"
|
|
1115
|
-
},
|
|
1116
|
-
"role": {
|
|
1117
|
-
"name": "role",
|
|
1118
|
-
"summary": "Role of the agent.",
|
|
1119
|
-
"hasDynamicHelp": false,
|
|
1120
|
-
"multiple": false,
|
|
1121
|
-
"type": "option"
|
|
1122
|
-
},
|
|
1123
|
-
"company-name": {
|
|
1124
|
-
"name": "company-name",
|
|
1125
|
-
"summary": "Name of your company.",
|
|
1126
|
-
"hasDynamicHelp": false,
|
|
1127
|
-
"multiple": false,
|
|
1128
|
-
"type": "option"
|
|
1129
|
-
},
|
|
1130
|
-
"company-description": {
|
|
1131
|
-
"name": "company-description",
|
|
1132
|
-
"summary": "Description of your company.",
|
|
1133
|
-
"hasDynamicHelp": false,
|
|
1134
|
-
"multiple": false,
|
|
1135
|
-
"type": "option"
|
|
1136
|
-
},
|
|
1137
|
-
"company-website": {
|
|
1138
|
-
"name": "company-website",
|
|
1139
|
-
"summary": "Website URL of your company.",
|
|
1130
|
+
"name": {
|
|
1131
|
+
"char": "n",
|
|
1132
|
+
"name": "name",
|
|
1133
|
+
"required": true,
|
|
1134
|
+
"summary": "Unique name of the MCP server.",
|
|
1140
1135
|
"hasDynamicHelp": false,
|
|
1141
1136
|
"multiple": false,
|
|
1142
1137
|
"type": "option"
|
|
1143
1138
|
},
|
|
1144
|
-
"
|
|
1145
|
-
"name": "
|
|
1146
|
-
"summary": "
|
|
1139
|
+
"label": {
|
|
1140
|
+
"name": "label",
|
|
1141
|
+
"summary": "Human-readable label for the MCP server.",
|
|
1147
1142
|
"hasDynamicHelp": false,
|
|
1148
1143
|
"multiple": false,
|
|
1149
1144
|
"type": "option"
|
|
1150
1145
|
},
|
|
1151
|
-
"
|
|
1152
|
-
"name": "
|
|
1153
|
-
"summary": "
|
|
1146
|
+
"description": {
|
|
1147
|
+
"name": "description",
|
|
1148
|
+
"summary": "Description of the MCP server.",
|
|
1154
1149
|
"hasDynamicHelp": false,
|
|
1155
1150
|
"multiple": false,
|
|
1156
1151
|
"type": "option"
|
|
1157
1152
|
},
|
|
1158
|
-
"
|
|
1159
|
-
"name": "
|
|
1160
|
-
"
|
|
1153
|
+
"server-url": {
|
|
1154
|
+
"name": "server-url",
|
|
1155
|
+
"required": true,
|
|
1156
|
+
"summary": "URL of the external MCP server.",
|
|
1161
1157
|
"hasDynamicHelp": false,
|
|
1162
1158
|
"multiple": false,
|
|
1163
|
-
"options": [
|
|
1164
|
-
"true",
|
|
1165
|
-
"false"
|
|
1166
|
-
],
|
|
1167
1159
|
"type": "option"
|
|
1168
1160
|
},
|
|
1169
|
-
"
|
|
1170
|
-
"name": "
|
|
1171
|
-
"summary": "
|
|
1161
|
+
"auth-type": {
|
|
1162
|
+
"name": "auth-type",
|
|
1163
|
+
"summary": "Authorization type to use when connecting to the MCP server.",
|
|
1164
|
+
"default": "NO_AUTH",
|
|
1172
1165
|
"hasDynamicHelp": false,
|
|
1173
1166
|
"multiple": false,
|
|
1174
1167
|
"options": [
|
|
1175
|
-
"
|
|
1176
|
-
"
|
|
1177
|
-
"neutral"
|
|
1168
|
+
"OAUTH",
|
|
1169
|
+
"NO_AUTH"
|
|
1178
1170
|
],
|
|
1179
1171
|
"type": "option"
|
|
1180
1172
|
},
|
|
1181
|
-
"
|
|
1182
|
-
"name": "
|
|
1183
|
-
"summary": "
|
|
1173
|
+
"identity-provider": {
|
|
1174
|
+
"name": "identity-provider",
|
|
1175
|
+
"summary": "Identity provider to use for OAuth authorization. Required when auth-type is OAUTH.",
|
|
1184
1176
|
"hasDynamicHelp": false,
|
|
1185
1177
|
"multiple": false,
|
|
1186
1178
|
"type": "option"
|
|
1187
1179
|
},
|
|
1188
|
-
"
|
|
1189
|
-
"name": "
|
|
1190
|
-
"summary": "
|
|
1191
|
-
"default": "specs/agentSpec.yaml",
|
|
1180
|
+
"client-id": {
|
|
1181
|
+
"name": "client-id",
|
|
1182
|
+
"summary": "OAuth client ID. Required when auth-type is OAUTH.",
|
|
1192
1183
|
"hasDynamicHelp": false,
|
|
1193
1184
|
"multiple": false,
|
|
1194
1185
|
"type": "option"
|
|
1195
1186
|
},
|
|
1196
|
-
"
|
|
1197
|
-
"name": "
|
|
1198
|
-
"summary": "
|
|
1199
|
-
"allowNo": false,
|
|
1200
|
-
"type": "boolean"
|
|
1201
|
-
},
|
|
1202
|
-
"prompt-template": {
|
|
1203
|
-
"name": "prompt-template",
|
|
1204
|
-
"summary": "API name of a customized prompt template to use instead of the default prompt template.",
|
|
1187
|
+
"client-secret": {
|
|
1188
|
+
"name": "client-secret",
|
|
1189
|
+
"summary": "OAuth client secret. Required when auth-type is OAUTH. Pass \"-\" to read it from stdin (piped) and keep it out of shell history.",
|
|
1205
1190
|
"hasDynamicHelp": false,
|
|
1206
1191
|
"multiple": false,
|
|
1207
1192
|
"type": "option"
|
|
1208
1193
|
},
|
|
1209
|
-
"
|
|
1210
|
-
"
|
|
1211
|
-
|
|
1212
|
-
],
|
|
1213
|
-
"name": "grounding-context",
|
|
1214
|
-
"summary": "Context information and personalization that's added to your prompts when using a custom prompt template.",
|
|
1194
|
+
"scope": {
|
|
1195
|
+
"name": "scope",
|
|
1196
|
+
"summary": "OAuth scope to request. Required when auth-type is OAUTH.",
|
|
1215
1197
|
"hasDynamicHelp": false,
|
|
1216
1198
|
"multiple": false,
|
|
1217
1199
|
"type": "option"
|
|
1218
|
-
},
|
|
1219
|
-
"force-overwrite": {
|
|
1220
|
-
"name": "force-overwrite",
|
|
1221
|
-
"summary": "Don't prompt the user to confirm that an existing spec file will be overwritten.",
|
|
1222
|
-
"allowNo": false,
|
|
1223
|
-
"type": "boolean"
|
|
1224
1200
|
}
|
|
1225
1201
|
},
|
|
1226
1202
|
"hasDynamicHelp": true,
|
|
1227
1203
|
"hiddenAliases": [],
|
|
1228
|
-
"id": "agent:
|
|
1204
|
+
"id": "agent:mcp:create",
|
|
1229
1205
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1230
1206
|
"pluginName": "@salesforce/plugin-agent",
|
|
1231
1207
|
"pluginType": "core",
|
|
1208
|
+
"state": "preview",
|
|
1232
1209
|
"strict": true,
|
|
1233
|
-
"summary": "
|
|
1210
|
+
"summary": "Create an MCP server in the API Catalog.",
|
|
1234
1211
|
"enableJsonFlag": true,
|
|
1235
|
-
"requiresProject": true,
|
|
1236
1212
|
"isESM": true,
|
|
1237
1213
|
"relativePath": [
|
|
1238
1214
|
"lib",
|
|
1239
1215
|
"commands",
|
|
1240
1216
|
"agent",
|
|
1241
|
-
"
|
|
1242
|
-
"
|
|
1217
|
+
"mcp",
|
|
1218
|
+
"create.js"
|
|
1243
1219
|
],
|
|
1244
1220
|
"aliasPermutations": [],
|
|
1245
1221
|
"permutations": [
|
|
1246
|
-
"agent:
|
|
1247
|
-
"
|
|
1248
|
-
"
|
|
1249
|
-
"agent:
|
|
1250
|
-
"
|
|
1251
|
-
"
|
|
1222
|
+
"agent:mcp:create",
|
|
1223
|
+
"mcp:agent:create",
|
|
1224
|
+
"mcp:create:agent",
|
|
1225
|
+
"agent:create:mcp",
|
|
1226
|
+
"create:agent:mcp",
|
|
1227
|
+
"create:mcp:agent"
|
|
1252
1228
|
]
|
|
1253
1229
|
},
|
|
1254
|
-
"agent:
|
|
1230
|
+
"agent:mcp:delete": {
|
|
1255
1231
|
"aliases": [],
|
|
1256
1232
|
"args": {},
|
|
1257
|
-
"description": "
|
|
1233
|
+
"description": "Permanently removes an MCP (Model Context Protocol) server registration from the API Catalog, identified by its ID. By default you are prompted to confirm the deletion; pass --no-prompt to skip the confirmation (for example in scripts and CI).",
|
|
1258
1234
|
"examples": [
|
|
1259
|
-
"
|
|
1260
|
-
"
|
|
1261
|
-
"Generate an authoring bundle from the \"specs/agentSpec.yaml\" agent spec YAML file and give it the label \"My Authoring Bundle\"; use your default org:\n<%= config.bin %> <%= command.id %> --spec specs/agentSpec.yaml --name \"My Authoring Bundle\"",
|
|
1262
|
-
"Similar to previous example, but generate the authoring bundle files in the \"other-package-dir/main/default\" package directory; use the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --spec specs/agentSpec.yaml --name \"My Authoring Bundle\" --output-dir other-package-dir/main/default --target-org my-dev-org"
|
|
1235
|
+
"Delete an MCP server, confirming interactively:\n<%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --target-org myOrg",
|
|
1236
|
+
"Delete an MCP server without a confirmation prompt:\n<%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --target-org myOrg --no-prompt"
|
|
1263
1237
|
],
|
|
1264
1238
|
"flags": {
|
|
1265
1239
|
"json": {
|
|
@@ -1287,13 +1261,6 @@
|
|
|
1287
1261
|
"multiple": false,
|
|
1288
1262
|
"type": "option"
|
|
1289
1263
|
},
|
|
1290
|
-
"api-name": {
|
|
1291
|
-
"name": "api-name",
|
|
1292
|
-
"summary": "API name of the new authoring bundle; if not specified, the API name is derived from the authoring bundle name (label); the API name can't exist in the org.",
|
|
1293
|
-
"hasDynamicHelp": false,
|
|
1294
|
-
"multiple": false,
|
|
1295
|
-
"type": "option"
|
|
1296
|
-
},
|
|
1297
1264
|
"api-version": {
|
|
1298
1265
|
"description": "Override the api version used for api requests made by this command",
|
|
1299
1266
|
"name": "api-version",
|
|
@@ -1301,77 +1268,57 @@
|
|
|
1301
1268
|
"multiple": false,
|
|
1302
1269
|
"type": "option"
|
|
1303
1270
|
},
|
|
1304
|
-
"
|
|
1305
|
-
"char": "
|
|
1306
|
-
"name": "
|
|
1307
|
-
"
|
|
1308
|
-
"
|
|
1309
|
-
"multiple": false,
|
|
1310
|
-
"type": "option"
|
|
1311
|
-
},
|
|
1312
|
-
"no-spec": {
|
|
1313
|
-
"name": "no-spec",
|
|
1314
|
-
"summary": "Skip prompting for an agent spec and use the default Agent Script boilerplate in the generated authoring bundle.",
|
|
1315
|
-
"allowNo": false,
|
|
1316
|
-
"type": "boolean"
|
|
1317
|
-
},
|
|
1318
|
-
"output-dir": {
|
|
1319
|
-
"char": "d",
|
|
1320
|
-
"name": "output-dir",
|
|
1321
|
-
"summary": "Directory where the authoring bundle files are generated.",
|
|
1322
|
-
"hasDynamicHelp": false,
|
|
1323
|
-
"multiple": false,
|
|
1324
|
-
"type": "option"
|
|
1325
|
-
},
|
|
1326
|
-
"name": {
|
|
1327
|
-
"char": "n",
|
|
1328
|
-
"name": "name",
|
|
1329
|
-
"summary": "Name (label) of the authoring bundle; if not specified, you're prompted for the name.",
|
|
1271
|
+
"mcp-server-id": {
|
|
1272
|
+
"char": "i",
|
|
1273
|
+
"name": "mcp-server-id",
|
|
1274
|
+
"required": true,
|
|
1275
|
+
"summary": "ID of the MCP server to delete.",
|
|
1330
1276
|
"hasDynamicHelp": false,
|
|
1331
1277
|
"multiple": false,
|
|
1332
1278
|
"type": "option"
|
|
1333
1279
|
},
|
|
1334
|
-
"
|
|
1335
|
-
"name": "
|
|
1336
|
-
"summary": "
|
|
1280
|
+
"no-prompt": {
|
|
1281
|
+
"name": "no-prompt",
|
|
1282
|
+
"summary": "Skip the confirmation prompt and delete the MCP server immediately.",
|
|
1337
1283
|
"allowNo": false,
|
|
1338
1284
|
"type": "boolean"
|
|
1339
1285
|
}
|
|
1340
1286
|
},
|
|
1341
1287
|
"hasDynamicHelp": true,
|
|
1342
1288
|
"hiddenAliases": [],
|
|
1343
|
-
"id": "agent:
|
|
1289
|
+
"id": "agent:mcp:delete",
|
|
1344
1290
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1345
1291
|
"pluginName": "@salesforce/plugin-agent",
|
|
1346
1292
|
"pluginType": "core",
|
|
1293
|
+
"state": "preview",
|
|
1347
1294
|
"strict": true,
|
|
1348
|
-
"summary": "
|
|
1295
|
+
"summary": "Delete an MCP server from the API Catalog.",
|
|
1349
1296
|
"enableJsonFlag": true,
|
|
1350
|
-
"requiresProject": true,
|
|
1351
1297
|
"isESM": true,
|
|
1352
1298
|
"relativePath": [
|
|
1353
1299
|
"lib",
|
|
1354
1300
|
"commands",
|
|
1355
1301
|
"agent",
|
|
1356
|
-
"
|
|
1357
|
-
"
|
|
1302
|
+
"mcp",
|
|
1303
|
+
"delete.js"
|
|
1358
1304
|
],
|
|
1359
1305
|
"aliasPermutations": [],
|
|
1360
1306
|
"permutations": [
|
|
1361
|
-
"agent:
|
|
1362
|
-
"
|
|
1363
|
-
"
|
|
1364
|
-
"agent:
|
|
1365
|
-
"
|
|
1366
|
-
"
|
|
1307
|
+
"agent:mcp:delete",
|
|
1308
|
+
"mcp:agent:delete",
|
|
1309
|
+
"mcp:delete:agent",
|
|
1310
|
+
"agent:delete:mcp",
|
|
1311
|
+
"delete:agent:mcp",
|
|
1312
|
+
"delete:mcp:agent"
|
|
1367
1313
|
]
|
|
1368
1314
|
},
|
|
1369
|
-
"agent:
|
|
1315
|
+
"agent:mcp:fetch": {
|
|
1370
1316
|
"aliases": [],
|
|
1371
1317
|
"args": {},
|
|
1372
|
-
"description": "
|
|
1318
|
+
"description": "Performs a live fetch against the configured MCP server identified by its ID, returning the assets (MCP tools, prompts, and resources) it currently advertises along with their status and activation state. Use this to refresh the view of what an MCP server exposes before activating its assets as agent actions.",
|
|
1373
1319
|
"examples": [
|
|
1374
|
-
"
|
|
1320
|
+
"Fetch the assets advertised by an MCP server in the default target org:\n<%= config.bin %> <%= command.id %> --target-org myOrg --mcp-server-id 0XSxx0000000001",
|
|
1321
|
+
"Fetch MCP server assets and output as JSON:\n<%= config.bin %> <%= command.id %> --target-org myOrg --mcp-server-id 0XSxx0000000001 --json"
|
|
1375
1322
|
],
|
|
1376
1323
|
"flags": {
|
|
1377
1324
|
"json": {
|
|
@@ -1389,44 +1336,28 @@
|
|
|
1389
1336
|
"multiple": false,
|
|
1390
1337
|
"type": "option"
|
|
1391
1338
|
},
|
|
1392
|
-
"
|
|
1393
|
-
"
|
|
1394
|
-
"name": "
|
|
1395
|
-
"hasDynamicHelp": false,
|
|
1396
|
-
"multiple": false,
|
|
1397
|
-
"type": "option"
|
|
1398
|
-
},
|
|
1399
|
-
"source-org": {
|
|
1400
|
-
"char": "s",
|
|
1401
|
-
"name": "source-org",
|
|
1339
|
+
"target-org": {
|
|
1340
|
+
"char": "o",
|
|
1341
|
+
"name": "target-org",
|
|
1402
1342
|
"noCacheDefault": true,
|
|
1403
1343
|
"required": true,
|
|
1404
|
-
"summary": "Username or alias of the
|
|
1344
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
1405
1345
|
"hasDynamicHelp": true,
|
|
1406
1346
|
"multiple": false,
|
|
1407
1347
|
"type": "option"
|
|
1408
1348
|
},
|
|
1409
|
-
"
|
|
1410
|
-
"
|
|
1411
|
-
"
|
|
1412
|
-
"summary": "Version of the agent (BotVersion).",
|
|
1349
|
+
"api-version": {
|
|
1350
|
+
"description": "Override the api version used for api requests made by this command",
|
|
1351
|
+
"name": "api-version",
|
|
1413
1352
|
"hasDynamicHelp": false,
|
|
1414
1353
|
"multiple": false,
|
|
1415
1354
|
"type": "option"
|
|
1416
1355
|
},
|
|
1417
|
-
"
|
|
1418
|
-
"char": "
|
|
1419
|
-
"name": "
|
|
1356
|
+
"mcp-server-id": {
|
|
1357
|
+
"char": "i",
|
|
1358
|
+
"name": "mcp-server-id",
|
|
1420
1359
|
"required": true,
|
|
1421
|
-
"summary": "
|
|
1422
|
-
"hasDynamicHelp": false,
|
|
1423
|
-
"multiple": false,
|
|
1424
|
-
"type": "option"
|
|
1425
|
-
},
|
|
1426
|
-
"output-dir": {
|
|
1427
|
-
"char": "r",
|
|
1428
|
-
"name": "output-dir",
|
|
1429
|
-
"summary": "Directory where the generated BotTemplate and GenAiPlannerBundle files are saved.",
|
|
1360
|
+
"summary": "ID of the MCP server to fetch assets from.",
|
|
1430
1361
|
"hasDynamicHelp": false,
|
|
1431
1362
|
"multiple": false,
|
|
1432
1363
|
"type": "option"
|
|
@@ -1434,42 +1365,48 @@
|
|
|
1434
1365
|
},
|
|
1435
1366
|
"hasDynamicHelp": true,
|
|
1436
1367
|
"hiddenAliases": [],
|
|
1437
|
-
"id": "agent:
|
|
1368
|
+
"id": "agent:mcp:fetch",
|
|
1438
1369
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1439
1370
|
"pluginName": "@salesforce/plugin-agent",
|
|
1440
1371
|
"pluginType": "core",
|
|
1372
|
+
"state": "preview",
|
|
1441
1373
|
"strict": true,
|
|
1442
|
-
"summary": "
|
|
1374
|
+
"summary": "Fetch the live assets (tools, prompts, resources) advertised by an MCP server.",
|
|
1443
1375
|
"enableJsonFlag": true,
|
|
1444
|
-
"requiresProject": true,
|
|
1445
1376
|
"isESM": true,
|
|
1446
1377
|
"relativePath": [
|
|
1447
1378
|
"lib",
|
|
1448
1379
|
"commands",
|
|
1449
1380
|
"agent",
|
|
1450
|
-
"
|
|
1451
|
-
"
|
|
1381
|
+
"mcp",
|
|
1382
|
+
"fetch.js"
|
|
1452
1383
|
],
|
|
1453
1384
|
"aliasPermutations": [],
|
|
1454
1385
|
"permutations": [
|
|
1455
|
-
"agent:
|
|
1456
|
-
"
|
|
1457
|
-
"
|
|
1458
|
-
"agent:
|
|
1459
|
-
"
|
|
1460
|
-
"
|
|
1386
|
+
"agent:mcp:fetch",
|
|
1387
|
+
"mcp:agent:fetch",
|
|
1388
|
+
"mcp:fetch:agent",
|
|
1389
|
+
"agent:fetch:mcp",
|
|
1390
|
+
"fetch:agent:mcp",
|
|
1391
|
+
"fetch:mcp:agent"
|
|
1461
1392
|
]
|
|
1462
1393
|
},
|
|
1463
|
-
"agent:
|
|
1394
|
+
"agent:mcp:get": {
|
|
1464
1395
|
"aliases": [],
|
|
1465
1396
|
"args": {},
|
|
1466
|
-
"description": "
|
|
1397
|
+
"description": "Retrieves the details of an MCP (Model Context Protocol) server by its identifier, including its name, label, type, status, and server URL.",
|
|
1467
1398
|
"examples": [
|
|
1468
|
-
"
|
|
1469
|
-
"
|
|
1470
|
-
"Generate an agent test spec YAML file from an existing AiEvaluationDefinition metadata XML file in your DX project:\n<%= config.bin %> <%= command.id %> --from-definition force-app//main/default/aiEvaluationDefinitions/Resort_Manager_Tests.aiEvaluationDefinition-meta.xml"
|
|
1399
|
+
"Get an MCP server by id in the default target org:\n<%= config.bin %> <%= command.id %> --target-org myOrg --mcp-server-id 0Mx000000000001",
|
|
1400
|
+
"Get an MCP server and output as JSON:\n<%= config.bin %> <%= command.id %> --target-org myOrg --mcp-server-id 0Mx000000000001 --json"
|
|
1471
1401
|
],
|
|
1472
1402
|
"flags": {
|
|
1403
|
+
"json": {
|
|
1404
|
+
"description": "Format output as json.",
|
|
1405
|
+
"helpGroup": "GLOBAL",
|
|
1406
|
+
"name": "json",
|
|
1407
|
+
"allowNo": false,
|
|
1408
|
+
"type": "boolean"
|
|
1409
|
+
},
|
|
1473
1410
|
"flags-dir": {
|
|
1474
1411
|
"helpGroup": "GLOBAL",
|
|
1475
1412
|
"name": "flags-dir",
|
|
@@ -1478,65 +1415,68 @@
|
|
|
1478
1415
|
"multiple": false,
|
|
1479
1416
|
"type": "option"
|
|
1480
1417
|
},
|
|
1481
|
-
"
|
|
1482
|
-
"char": "
|
|
1483
|
-
"name": "
|
|
1484
|
-
"
|
|
1485
|
-
"
|
|
1486
|
-
"
|
|
1487
|
-
"
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
"name": "force-overwrite",
|
|
1491
|
-
"summary": "Don't prompt for confirmation when overwriting an existing test spec YAML file.",
|
|
1492
|
-
"allowNo": false,
|
|
1493
|
-
"type": "boolean"
|
|
1418
|
+
"target-org": {
|
|
1419
|
+
"char": "o",
|
|
1420
|
+
"name": "target-org",
|
|
1421
|
+
"noCacheDefault": true,
|
|
1422
|
+
"required": true,
|
|
1423
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
1424
|
+
"hasDynamicHelp": true,
|
|
1425
|
+
"multiple": false,
|
|
1426
|
+
"type": "option"
|
|
1494
1427
|
},
|
|
1495
|
-
"
|
|
1496
|
-
"
|
|
1497
|
-
"name": "
|
|
1498
|
-
"
|
|
1428
|
+
"api-version": {
|
|
1429
|
+
"description": "Override the api version used for api requests made by this command",
|
|
1430
|
+
"name": "api-version",
|
|
1431
|
+
"hasDynamicHelp": false,
|
|
1432
|
+
"multiple": false,
|
|
1433
|
+
"type": "option"
|
|
1434
|
+
},
|
|
1435
|
+
"mcp-server-id": {
|
|
1436
|
+
"char": "i",
|
|
1437
|
+
"name": "mcp-server-id",
|
|
1438
|
+
"required": true,
|
|
1439
|
+
"summary": "The identifier of the MCP server to retrieve.",
|
|
1499
1440
|
"hasDynamicHelp": false,
|
|
1500
1441
|
"multiple": false,
|
|
1501
1442
|
"type": "option"
|
|
1502
1443
|
}
|
|
1503
1444
|
},
|
|
1504
|
-
"hasDynamicHelp":
|
|
1445
|
+
"hasDynamicHelp": true,
|
|
1505
1446
|
"hiddenAliases": [],
|
|
1506
|
-
"id": "agent:
|
|
1447
|
+
"id": "agent:mcp:get",
|
|
1507
1448
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1508
1449
|
"pluginName": "@salesforce/plugin-agent",
|
|
1509
1450
|
"pluginType": "core",
|
|
1451
|
+
"state": "preview",
|
|
1510
1452
|
"strict": true,
|
|
1511
|
-
"summary": "
|
|
1512
|
-
"enableJsonFlag":
|
|
1453
|
+
"summary": "Get a single MCP server registered in the API Catalog.",
|
|
1454
|
+
"enableJsonFlag": true,
|
|
1513
1455
|
"isESM": true,
|
|
1514
1456
|
"relativePath": [
|
|
1515
1457
|
"lib",
|
|
1516
1458
|
"commands",
|
|
1517
1459
|
"agent",
|
|
1518
|
-
"
|
|
1519
|
-
"
|
|
1460
|
+
"mcp",
|
|
1461
|
+
"get.js"
|
|
1520
1462
|
],
|
|
1521
1463
|
"aliasPermutations": [],
|
|
1522
1464
|
"permutations": [
|
|
1523
|
-
"agent:
|
|
1524
|
-
"
|
|
1525
|
-
"
|
|
1526
|
-
"agent:
|
|
1527
|
-
"
|
|
1528
|
-
"
|
|
1465
|
+
"agent:mcp:get",
|
|
1466
|
+
"mcp:agent:get",
|
|
1467
|
+
"mcp:get:agent",
|
|
1468
|
+
"agent:get:mcp",
|
|
1469
|
+
"get:agent:mcp",
|
|
1470
|
+
"get:mcp:agent"
|
|
1529
1471
|
]
|
|
1530
1472
|
},
|
|
1531
|
-
"agent:
|
|
1473
|
+
"agent:mcp:list": {
|
|
1532
1474
|
"aliases": [],
|
|
1533
1475
|
"args": {},
|
|
1534
|
-
"description": "
|
|
1476
|
+
"description": "Returns the Model Context Protocol (MCP) servers registered in the API Catalog, optionally filtered by label, type, or status. Use this to discover which MCP servers are available and inspect their server URLs and current status.",
|
|
1535
1477
|
"examples": [
|
|
1536
|
-
"
|
|
1537
|
-
"
|
|
1538
|
-
"Publish with verbose output to see all retrieved and deployed metadata components:\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --verbose",
|
|
1539
|
-
"Publish with concise output showing only essential information:\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --concise"
|
|
1478
|
+
"List all MCP servers in the default target org:\n<%= config.bin %> <%= command.id %> --target-org myOrg",
|
|
1479
|
+
"List external MCP servers filtered by status and output as JSON:\n<%= config.bin %> <%= command.id %> --target-org myOrg --type EXTERNAL --status ACTIVE --json"
|
|
1540
1480
|
],
|
|
1541
1481
|
"flags": {
|
|
1542
1482
|
"json": {
|
|
@@ -1571,96 +1511,70 @@
|
|
|
1571
1511
|
"multiple": false,
|
|
1572
1512
|
"type": "option"
|
|
1573
1513
|
},
|
|
1574
|
-
"
|
|
1575
|
-
"
|
|
1576
|
-
"
|
|
1577
|
-
"summary": "API name of the authoring bundle you want to publish; if not specified, the command provides a list that you can choose from.",
|
|
1514
|
+
"label": {
|
|
1515
|
+
"name": "label",
|
|
1516
|
+
"summary": "Filter the MCP servers by label.",
|
|
1578
1517
|
"hasDynamicHelp": false,
|
|
1579
1518
|
"multiple": false,
|
|
1580
1519
|
"type": "option"
|
|
1581
1520
|
},
|
|
1582
|
-
"
|
|
1583
|
-
"name": "
|
|
1584
|
-
"summary": "
|
|
1585
|
-
"
|
|
1586
|
-
"
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
"char": "v",
|
|
1590
|
-
"exclusive": [
|
|
1591
|
-
"concise"
|
|
1521
|
+
"type": {
|
|
1522
|
+
"name": "type",
|
|
1523
|
+
"summary": "Filter the MCP servers by type.",
|
|
1524
|
+
"hasDynamicHelp": false,
|
|
1525
|
+
"multiple": false,
|
|
1526
|
+
"options": [
|
|
1527
|
+
"EXTERNAL"
|
|
1592
1528
|
],
|
|
1593
|
-
"
|
|
1594
|
-
"summary": "Display detailed output showing all metadata components retrieved and deployed during the publish process.",
|
|
1595
|
-
"allowNo": false,
|
|
1596
|
-
"type": "boolean"
|
|
1529
|
+
"type": "option"
|
|
1597
1530
|
},
|
|
1598
|
-
"
|
|
1599
|
-
"
|
|
1600
|
-
|
|
1531
|
+
"status": {
|
|
1532
|
+
"name": "status",
|
|
1533
|
+
"summary": "Filter the MCP servers by connection status. Only ACTIVE and DISCONNECTED are supported as filters.",
|
|
1534
|
+
"hasDynamicHelp": false,
|
|
1535
|
+
"multiple": false,
|
|
1536
|
+
"options": [
|
|
1537
|
+
"ACTIVE",
|
|
1538
|
+
"DISCONNECTED"
|
|
1601
1539
|
],
|
|
1602
|
-
"
|
|
1603
|
-
"summary": "Display minimal output with only essential information about the publish operation.",
|
|
1604
|
-
"allowNo": false,
|
|
1605
|
-
"type": "boolean"
|
|
1540
|
+
"type": "option"
|
|
1606
1541
|
}
|
|
1607
1542
|
},
|
|
1608
1543
|
"hasDynamicHelp": true,
|
|
1609
1544
|
"hiddenAliases": [],
|
|
1610
|
-
"id": "agent:
|
|
1545
|
+
"id": "agent:mcp:list",
|
|
1611
1546
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1612
1547
|
"pluginName": "@salesforce/plugin-agent",
|
|
1613
1548
|
"pluginType": "core",
|
|
1549
|
+
"state": "preview",
|
|
1614
1550
|
"strict": true,
|
|
1615
|
-
"summary": "
|
|
1551
|
+
"summary": "List the MCP servers registered in the API Catalog.",
|
|
1616
1552
|
"enableJsonFlag": true,
|
|
1617
|
-
"requiresProject": true,
|
|
1618
|
-
"errorCodes": {
|
|
1619
|
-
"header": "ERROR CODES",
|
|
1620
|
-
"body": [
|
|
1621
|
-
{
|
|
1622
|
-
"name": "Succeeded (0)",
|
|
1623
|
-
"description": "Agent published successfully without errors."
|
|
1624
|
-
},
|
|
1625
|
-
{
|
|
1626
|
-
"name": "Failed (1)",
|
|
1627
|
-
"description": "Compilation errors found in the Agent Script file."
|
|
1628
|
-
}
|
|
1629
|
-
]
|
|
1630
|
-
},
|
|
1631
|
-
"FLAGGABLE_PROMPTS": {
|
|
1632
|
-
"api-name": {
|
|
1633
|
-
"message": "API name of the authoring bundle you want to publish; if not specified, the command provides a list that you can choose from.",
|
|
1634
|
-
"promptMessage": "API name of the authoring bundle to publish"
|
|
1635
|
-
}
|
|
1636
|
-
},
|
|
1637
1553
|
"isESM": true,
|
|
1638
1554
|
"relativePath": [
|
|
1639
1555
|
"lib",
|
|
1640
1556
|
"commands",
|
|
1641
1557
|
"agent",
|
|
1642
|
-
"
|
|
1643
|
-
"
|
|
1558
|
+
"mcp",
|
|
1559
|
+
"list.js"
|
|
1644
1560
|
],
|
|
1645
1561
|
"aliasPermutations": [],
|
|
1646
1562
|
"permutations": [
|
|
1647
|
-
"agent:
|
|
1648
|
-
"
|
|
1649
|
-
"
|
|
1650
|
-
"agent:
|
|
1651
|
-
"
|
|
1652
|
-
"
|
|
1563
|
+
"agent:mcp:list",
|
|
1564
|
+
"mcp:agent:list",
|
|
1565
|
+
"mcp:list:agent",
|
|
1566
|
+
"agent:list:mcp",
|
|
1567
|
+
"list:agent:mcp",
|
|
1568
|
+
"list:mcp:agent"
|
|
1653
1569
|
]
|
|
1654
1570
|
},
|
|
1655
|
-
"agent:
|
|
1571
|
+
"agent:mcp:update": {
|
|
1656
1572
|
"aliases": [],
|
|
1657
1573
|
"args": {},
|
|
1658
|
-
"description": "
|
|
1574
|
+
"description": "Updates an existing MCP server in the API Catalog. Only the fields you provide are changed; omitted fields are left untouched. You can update the label, description, and server URL, and replace the authorization configuration. When setting `--auth-type OAUTH`, you must also provide `--identity-provider`, `--client-id`, `--client-secret`, and `--scope`. When setting `--auth-type NO_AUTH`, no authorization credentials are required. At least one updatable field must be supplied.",
|
|
1659
1575
|
"examples": [
|
|
1660
|
-
"
|
|
1661
|
-
"
|
|
1662
|
-
"Preview what the agent test metadata (AiEvaluationDefinition) looks like without deploying it to your default org:\n<%= config.bin %> <%= command.id %> --spec specs/Resort_Manager-testSpec.yaml --api-name Resort_Manager_Test --preview",
|
|
1663
|
-
"Author an Agentforce Studio (NGT) test from an NGT-shaped YAML; writes an AiTestingDefinition metadata file:\n<%= config.bin %> <%= command.id %> --spec specs/ReturnsCheckout.ngt.yaml --api-name Returns_Checkout --test-runner agentforce-studio --target-org my-org"
|
|
1576
|
+
"Update the label and description of an MCP server in the default target org:\n<%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --label \"Orders MCP\" --description \"Order tooling\" --target-org myOrg",
|
|
1577
|
+
"Update the server URL and switch the authorization to OAuth, piping the client secret from stdin and outputting as JSON:\ncat secret.txt | <%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --server-url https://mcp.example.com --auth-type OAUTH --identity-provider MyIdp --client-id abc --client-secret - --scope \"read write\" --target-org myOrg --json"
|
|
1664
1578
|
],
|
|
1665
1579
|
"flags": {
|
|
1666
1580
|
"json": {
|
|
@@ -1678,20 +1592,6 @@
|
|
|
1678
1592
|
"multiple": false,
|
|
1679
1593
|
"type": "option"
|
|
1680
1594
|
},
|
|
1681
|
-
"api-name": {
|
|
1682
|
-
"name": "api-name",
|
|
1683
|
-
"summary": "API name of the new test; the API name must not exist in the org.",
|
|
1684
|
-
"hasDynamicHelp": false,
|
|
1685
|
-
"multiple": false,
|
|
1686
|
-
"type": "option"
|
|
1687
|
-
},
|
|
1688
|
-
"spec": {
|
|
1689
|
-
"name": "spec",
|
|
1690
|
-
"summary": "Path to the test spec YAML file.",
|
|
1691
|
-
"hasDynamicHelp": false,
|
|
1692
|
-
"multiple": false,
|
|
1693
|
-
"type": "option"
|
|
1694
|
-
},
|
|
1695
1595
|
"target-org": {
|
|
1696
1596
|
"char": "o",
|
|
1697
1597
|
"name": "target-org",
|
|
@@ -1709,95 +1609,114 @@
|
|
|
1709
1609
|
"multiple": false,
|
|
1710
1610
|
"type": "option"
|
|
1711
1611
|
},
|
|
1712
|
-
"
|
|
1713
|
-
"
|
|
1714
|
-
"
|
|
1715
|
-
"
|
|
1716
|
-
"
|
|
1612
|
+
"mcp-server-id": {
|
|
1613
|
+
"char": "i",
|
|
1614
|
+
"name": "mcp-server-id",
|
|
1615
|
+
"required": true,
|
|
1616
|
+
"summary": "ID of the MCP server to update.",
|
|
1617
|
+
"hasDynamicHelp": false,
|
|
1618
|
+
"multiple": false,
|
|
1619
|
+
"type": "option"
|
|
1717
1620
|
},
|
|
1718
|
-
"
|
|
1719
|
-
"name": "
|
|
1720
|
-
"summary": "
|
|
1721
|
-
"
|
|
1722
|
-
"
|
|
1621
|
+
"label": {
|
|
1622
|
+
"name": "label",
|
|
1623
|
+
"summary": "New display label for the MCP server.",
|
|
1624
|
+
"hasDynamicHelp": false,
|
|
1625
|
+
"multiple": false,
|
|
1626
|
+
"type": "option"
|
|
1723
1627
|
},
|
|
1724
|
-
"
|
|
1725
|
-
"
|
|
1726
|
-
"
|
|
1727
|
-
"
|
|
1628
|
+
"description": {
|
|
1629
|
+
"name": "description",
|
|
1630
|
+
"summary": "New description for the MCP server.",
|
|
1631
|
+
"hasDynamicHelp": false,
|
|
1632
|
+
"multiple": false,
|
|
1633
|
+
"type": "option"
|
|
1634
|
+
},
|
|
1635
|
+
"server-url": {
|
|
1636
|
+
"name": "server-url",
|
|
1637
|
+
"summary": "New endpoint URL of the MCP server.",
|
|
1638
|
+
"hasDynamicHelp": false,
|
|
1639
|
+
"multiple": false,
|
|
1640
|
+
"type": "option"
|
|
1641
|
+
},
|
|
1642
|
+
"auth-type": {
|
|
1643
|
+
"name": "auth-type",
|
|
1644
|
+
"summary": "Authorization type to apply to the MCP server (OAUTH or NO_AUTH).",
|
|
1728
1645
|
"hasDynamicHelp": false,
|
|
1729
1646
|
"multiple": false,
|
|
1730
1647
|
"options": [
|
|
1731
|
-
"
|
|
1732
|
-
"
|
|
1648
|
+
"OAUTH",
|
|
1649
|
+
"NO_AUTH"
|
|
1733
1650
|
],
|
|
1734
1651
|
"type": "option"
|
|
1652
|
+
},
|
|
1653
|
+
"identity-provider": {
|
|
1654
|
+
"name": "identity-provider",
|
|
1655
|
+
"summary": "Identity provider name for OAuth authorization (required when --auth-type is OAUTH).",
|
|
1656
|
+
"hasDynamicHelp": false,
|
|
1657
|
+
"multiple": false,
|
|
1658
|
+
"type": "option"
|
|
1659
|
+
},
|
|
1660
|
+
"client-id": {
|
|
1661
|
+
"name": "client-id",
|
|
1662
|
+
"summary": "OAuth client ID (required when --auth-type is OAUTH).",
|
|
1663
|
+
"hasDynamicHelp": false,
|
|
1664
|
+
"multiple": false,
|
|
1665
|
+
"type": "option"
|
|
1666
|
+
},
|
|
1667
|
+
"client-secret": {
|
|
1668
|
+
"name": "client-secret",
|
|
1669
|
+
"summary": "OAuth client secret (required when --auth-type is OAUTH). Pass \"-\" to read it from stdin (piped) and keep it out of shell history.",
|
|
1670
|
+
"hasDynamicHelp": false,
|
|
1671
|
+
"multiple": false,
|
|
1672
|
+
"type": "option"
|
|
1673
|
+
},
|
|
1674
|
+
"scope": {
|
|
1675
|
+
"name": "scope",
|
|
1676
|
+
"summary": "OAuth scope (required when --auth-type is OAUTH).",
|
|
1677
|
+
"hasDynamicHelp": false,
|
|
1678
|
+
"multiple": false,
|
|
1679
|
+
"type": "option"
|
|
1735
1680
|
}
|
|
1736
1681
|
},
|
|
1737
1682
|
"hasDynamicHelp": true,
|
|
1738
1683
|
"hiddenAliases": [],
|
|
1739
|
-
"id": "agent:
|
|
1684
|
+
"id": "agent:mcp:update",
|
|
1740
1685
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1741
1686
|
"pluginName": "@salesforce/plugin-agent",
|
|
1742
1687
|
"pluginType": "core",
|
|
1688
|
+
"state": "preview",
|
|
1743
1689
|
"strict": true,
|
|
1744
|
-
"summary": "
|
|
1690
|
+
"summary": "Update an MCP server registered in the API Catalog.",
|
|
1745
1691
|
"enableJsonFlag": true,
|
|
1746
|
-
"envVariablesSection": {
|
|
1747
|
-
"header": "ENVIRONMENT VARIABLES",
|
|
1748
|
-
"body": [
|
|
1749
|
-
{
|
|
1750
|
-
"name": "SF_TARGET_ORG",
|
|
1751
|
-
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
1752
|
-
}
|
|
1753
|
-
]
|
|
1754
|
-
},
|
|
1755
|
-
"errorCodes": {
|
|
1756
|
-
"header": "ERROR CODES",
|
|
1757
|
-
"body": [
|
|
1758
|
-
{
|
|
1759
|
-
"name": "Succeeded (0)",
|
|
1760
|
-
"description": "Test created and deployed successfully."
|
|
1761
|
-
},
|
|
1762
|
-
{
|
|
1763
|
-
"name": "Failed (1)",
|
|
1764
|
-
"description": "Test validation errors or metadata format issues."
|
|
1765
|
-
},
|
|
1766
|
-
{
|
|
1767
|
-
"name": "NotFound (2)",
|
|
1768
|
-
"description": "Test spec file not found or org connection failed."
|
|
1769
|
-
},
|
|
1770
|
-
{
|
|
1771
|
-
"name": "DeploymentFailed (4)",
|
|
1772
|
-
"description": "Deployment failed due to API or network errors."
|
|
1773
|
-
}
|
|
1774
|
-
]
|
|
1775
|
-
},
|
|
1776
1692
|
"isESM": true,
|
|
1777
1693
|
"relativePath": [
|
|
1778
1694
|
"lib",
|
|
1779
1695
|
"commands",
|
|
1780
1696
|
"agent",
|
|
1781
|
-
"
|
|
1782
|
-
"
|
|
1697
|
+
"mcp",
|
|
1698
|
+
"update.js"
|
|
1783
1699
|
],
|
|
1784
1700
|
"aliasPermutations": [],
|
|
1785
1701
|
"permutations": [
|
|
1786
|
-
"agent:
|
|
1787
|
-
"
|
|
1788
|
-
"
|
|
1789
|
-
"agent:
|
|
1790
|
-
"
|
|
1791
|
-
"
|
|
1702
|
+
"agent:mcp:update",
|
|
1703
|
+
"mcp:agent:update",
|
|
1704
|
+
"mcp:update:agent",
|
|
1705
|
+
"agent:update:mcp",
|
|
1706
|
+
"update:agent:mcp",
|
|
1707
|
+
"update:mcp:agent"
|
|
1792
1708
|
]
|
|
1793
1709
|
},
|
|
1794
|
-
"agent:
|
|
1710
|
+
"agent:generate:agent-spec": {
|
|
1795
1711
|
"aliases": [],
|
|
1796
1712
|
"args": {},
|
|
1797
|
-
"description": "
|
|
1713
|
+
"description": "An agent spec is a YAML-formatted file that contains basic information about the agent, such as its role, company description, and an AI-generated list of topics based on this information. Topics define the range of jobs your agent can handle.\n\nUse flags, such as --role and --company-description, to provide details about your company and the role that the agent plays in your company. If you prefer, you can also be prompted for the basic information; use --full-interview to be prompted for all required and optional properties. Upon command execution, the large language model (LLM) associated with your org uses the provided information to generate a list of topics for the agent. Because the LLM uses the company and role information to generate the topics, we recommend that you provide accurate, complete, and specific details so the LLM generates the best and most relevant topics. Once generated, you can edit the spec file; for example, you can remove topics that don't apply or change a topic's description.\n\nYou can also iterate the spec generation process by using the --spec flag to pass an existing agent spec file to this command, and then using the --role, --company-description, etc, flags to refine your agent properties. Iteratively improving the description of your agent allows the LLM to generate progressively better topics.\n\nYou can also specify other agent properties, such as a custom prompt template, how to ground the prompt template to add context to the agent's prompts, the tone of the prompts, and the username of a user in the org to assign to the agent.\n\nWhen your agent spec is ready, generate an authoring bundle from it by passing the spec file to the --spec flag of the \"agent generate authoring-bundle\" CLI command. An authoring bundle is a metadata type that contains an Agent Script file, which is the blueprint for an agent. (While not recommended, you can also use the agent spec file to immediately create an agent with the \"agent create\" command. We don't recommend this workflow because these types of agents don't use Agent Script, and are thus less flexible and more difficult to maintain.)",
|
|
1798
1714
|
"examples": [
|
|
1799
|
-
"
|
|
1800
|
-
"
|
|
1715
|
+
"Generate an agent spec in the default location and use flags to specify the agent properties, such as its role and your company details; use your default org:\n<%= config.bin %> <%= command.id %> --type customer --role \"Field customer complaints and manage employee schedules.\" --company-name \"Coral Cloud Resorts\" --company-description \"Provide customers with exceptional destination activities, unforgettable experiences, and reservation services.\"",
|
|
1716
|
+
"Generate an agent spec by being prompted for the required agent properties and generate a maxiumum of 5 topics; write the generated file to the \"specs/resortManagerSpec.yaml\" file and use the org with alias \"my-org\":\n<%= config.bin %> <%= command.id %> --max-topics 5 --output-file specs/resortManagerAgent.yaml --target-org my-org",
|
|
1717
|
+
"Be prompted for all required and optional agent properties; use your default org:\n<%= config.bin %> <%= command.id %> --full-interview",
|
|
1718
|
+
"Specify an existing agent spec file called \"specs/resortManagerAgent.yaml\", and then overwrite it with a new version that contains newly AI-generated topics based on the updated role information passed in with the --role flag:\n<%= config.bin %> <%= command.id %> --spec specs/resortManagerAgent.yaml --output-file specs/resortManagerAgent.yaml --role \"Field customer complaints, manage employee schedules, and ensure all resort operations are running smoothly\"",
|
|
1719
|
+
"Specify that the conversational tone of the agent is formal and to attach the \"resortmanager@myorg.com\" username to it; be prompted for the required properties and use your default org:\n<%= config.bin %> <%= command.id %> --tone formal --agent-user resortmanager@myorg.com"
|
|
1801
1720
|
],
|
|
1802
1721
|
"flags": {
|
|
1803
1722
|
"json": {
|
|
@@ -1831,36 +1750,779 @@
|
|
|
1831
1750
|
"hasDynamicHelp": false,
|
|
1832
1751
|
"multiple": false,
|
|
1833
1752
|
"type": "option"
|
|
1834
|
-
}
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
"
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1753
|
+
},
|
|
1754
|
+
"type": {
|
|
1755
|
+
"name": "type",
|
|
1756
|
+
"summary": "Type of agent to create. Internal types are copilots used internally by your company and customer types are the agents you create for your customers.",
|
|
1757
|
+
"hasDynamicHelp": false,
|
|
1758
|
+
"multiple": false,
|
|
1759
|
+
"options": [
|
|
1760
|
+
"customer",
|
|
1761
|
+
"internal"
|
|
1762
|
+
],
|
|
1763
|
+
"type": "option"
|
|
1764
|
+
},
|
|
1765
|
+
"role": {
|
|
1766
|
+
"name": "role",
|
|
1767
|
+
"summary": "Role of the agent.",
|
|
1768
|
+
"hasDynamicHelp": false,
|
|
1769
|
+
"multiple": false,
|
|
1770
|
+
"type": "option"
|
|
1771
|
+
},
|
|
1772
|
+
"company-name": {
|
|
1773
|
+
"name": "company-name",
|
|
1774
|
+
"summary": "Name of your company.",
|
|
1775
|
+
"hasDynamicHelp": false,
|
|
1776
|
+
"multiple": false,
|
|
1777
|
+
"type": "option"
|
|
1778
|
+
},
|
|
1779
|
+
"company-description": {
|
|
1780
|
+
"name": "company-description",
|
|
1781
|
+
"summary": "Description of your company.",
|
|
1782
|
+
"hasDynamicHelp": false,
|
|
1783
|
+
"multiple": false,
|
|
1784
|
+
"type": "option"
|
|
1785
|
+
},
|
|
1786
|
+
"company-website": {
|
|
1787
|
+
"name": "company-website",
|
|
1788
|
+
"summary": "Website URL of your company.",
|
|
1789
|
+
"hasDynamicHelp": false,
|
|
1790
|
+
"multiple": false,
|
|
1791
|
+
"type": "option"
|
|
1792
|
+
},
|
|
1793
|
+
"max-topics": {
|
|
1794
|
+
"name": "max-topics",
|
|
1795
|
+
"summary": "Maximum number of topics to generate in the agent spec; default is 5.",
|
|
1796
|
+
"hasDynamicHelp": false,
|
|
1797
|
+
"multiple": false,
|
|
1798
|
+
"type": "option"
|
|
1799
|
+
},
|
|
1800
|
+
"agent-user": {
|
|
1801
|
+
"name": "agent-user",
|
|
1802
|
+
"summary": "Username of a user in your org to assign to your agent; determines what your agent can access and do.",
|
|
1803
|
+
"hasDynamicHelp": false,
|
|
1804
|
+
"multiple": false,
|
|
1805
|
+
"type": "option"
|
|
1806
|
+
},
|
|
1807
|
+
"enrich-logs": {
|
|
1808
|
+
"name": "enrich-logs",
|
|
1809
|
+
"summary": "Adds agent conversation data to event logs so you can view all agent session activity in one place.",
|
|
1810
|
+
"hasDynamicHelp": false,
|
|
1811
|
+
"multiple": false,
|
|
1812
|
+
"options": [
|
|
1813
|
+
"true",
|
|
1814
|
+
"false"
|
|
1815
|
+
],
|
|
1816
|
+
"type": "option"
|
|
1817
|
+
},
|
|
1818
|
+
"tone": {
|
|
1819
|
+
"name": "tone",
|
|
1820
|
+
"summary": "Conversational style of the agent, such as how it expresses your brand personality in its messages through word choice, punctuation, and sentence structure.",
|
|
1821
|
+
"hasDynamicHelp": false,
|
|
1822
|
+
"multiple": false,
|
|
1823
|
+
"options": [
|
|
1824
|
+
"formal",
|
|
1825
|
+
"casual",
|
|
1826
|
+
"neutral"
|
|
1827
|
+
],
|
|
1828
|
+
"type": "option"
|
|
1829
|
+
},
|
|
1830
|
+
"spec": {
|
|
1831
|
+
"name": "spec",
|
|
1832
|
+
"summary": "Agent spec file, in YAML format, to use as input to the command.",
|
|
1833
|
+
"hasDynamicHelp": false,
|
|
1834
|
+
"multiple": false,
|
|
1835
|
+
"type": "option"
|
|
1836
|
+
},
|
|
1837
|
+
"output-file": {
|
|
1838
|
+
"name": "output-file",
|
|
1839
|
+
"summary": "Path for the generated YAML agent spec file; can be an absolute or relative path.",
|
|
1840
|
+
"default": "specs/agentSpec.yaml",
|
|
1841
|
+
"hasDynamicHelp": false,
|
|
1842
|
+
"multiple": false,
|
|
1843
|
+
"type": "option"
|
|
1844
|
+
},
|
|
1845
|
+
"full-interview": {
|
|
1846
|
+
"name": "full-interview",
|
|
1847
|
+
"summary": "Prompt for both required and optional flags.",
|
|
1848
|
+
"allowNo": false,
|
|
1849
|
+
"type": "boolean"
|
|
1850
|
+
},
|
|
1851
|
+
"prompt-template": {
|
|
1852
|
+
"name": "prompt-template",
|
|
1853
|
+
"summary": "API name of a customized prompt template to use instead of the default prompt template.",
|
|
1854
|
+
"hasDynamicHelp": false,
|
|
1855
|
+
"multiple": false,
|
|
1856
|
+
"type": "option"
|
|
1857
|
+
},
|
|
1858
|
+
"grounding-context": {
|
|
1859
|
+
"dependsOn": [
|
|
1860
|
+
"prompt-template"
|
|
1861
|
+
],
|
|
1862
|
+
"name": "grounding-context",
|
|
1863
|
+
"summary": "Context information and personalization that's added to your prompts when using a custom prompt template.",
|
|
1864
|
+
"hasDynamicHelp": false,
|
|
1865
|
+
"multiple": false,
|
|
1866
|
+
"type": "option"
|
|
1867
|
+
},
|
|
1868
|
+
"force-overwrite": {
|
|
1869
|
+
"name": "force-overwrite",
|
|
1870
|
+
"summary": "Don't prompt the user to confirm that an existing spec file will be overwritten.",
|
|
1871
|
+
"allowNo": false,
|
|
1872
|
+
"type": "boolean"
|
|
1873
|
+
}
|
|
1874
|
+
},
|
|
1875
|
+
"hasDynamicHelp": true,
|
|
1876
|
+
"hiddenAliases": [],
|
|
1877
|
+
"id": "agent:generate:agent-spec",
|
|
1878
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
1879
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
1880
|
+
"pluginType": "core",
|
|
1881
|
+
"strict": true,
|
|
1882
|
+
"summary": "Generate an agent spec, which is a YAML file that captures what an agent can do.",
|
|
1883
|
+
"enableJsonFlag": true,
|
|
1884
|
+
"requiresProject": true,
|
|
1885
|
+
"isESM": true,
|
|
1886
|
+
"relativePath": [
|
|
1887
|
+
"lib",
|
|
1888
|
+
"commands",
|
|
1889
|
+
"agent",
|
|
1890
|
+
"generate",
|
|
1891
|
+
"agent-spec.js"
|
|
1892
|
+
],
|
|
1893
|
+
"aliasPermutations": [],
|
|
1894
|
+
"permutations": [
|
|
1895
|
+
"agent:generate:agent-spec",
|
|
1896
|
+
"generate:agent:agent-spec",
|
|
1897
|
+
"generate:agent-spec:agent",
|
|
1898
|
+
"agent:agent-spec:generate",
|
|
1899
|
+
"agent-spec:agent:generate",
|
|
1900
|
+
"agent-spec:generate:agent"
|
|
1901
|
+
]
|
|
1902
|
+
},
|
|
1903
|
+
"agent:generate:authoring-bundle": {
|
|
1904
|
+
"aliases": [],
|
|
1905
|
+
"args": {},
|
|
1906
|
+
"description": "Authoring bundles are metadata components that contain an agent's Agent Script file. The Agent Script file is the agent's blueprint; it fully describes what the agent can do using the Agent Script language.\n\nUse this command to generate a new authoring bundle based on an agent spec YAML file, which you create with the \"agent generate agent-spec\" command. The agent spec YAML file is a high-level description of the agent; it describes its essence rather than exactly what it can do. The resulting Agent Script file is customized to reflect what's in the agent spec file. You can also create an authoring bundle without an agent spec file by specifying the \"--no-spec\" flag; in this case, the resulting Agent Script file is just the default boilerplate.\n\nThe metadata type for authoring bundles is aiAuthoringBundle, which consist of a standard \"<bundle-api-name>.bundle-meta.xml\" metadata file and the Agent Script file (with extension \".agent\"). When you run this command, the new authoring bundle is generated in the force-app/main/default/aiAuthoringBundles/<bundle-api-name> directory. Use the --output-dir flag to generate them elsewhere.\n\nAfter you generate the initial authoring bundle, code the Agent Script file so your agent behaves exactly as you want. The Agent Script file generated by this command is just a first draft of your agent! Interactively test the agent by conversing with it using the \"agent preview\" command. Then publish the agent to your org with the \"agent publish authoring-bundle\" command.\n\nThis command requires an org because it uses it to access an LLM for generating the Agent Script file.",
|
|
1907
|
+
"examples": [
|
|
1908
|
+
"Generate an authoring bundle by being prompted for all required values, such as the agent spec YAML file, the bundle name, and the API name; use your default org:\n<%= config.bin %> <%= command.id %>",
|
|
1909
|
+
"Generate an authoring bundle without using an agent spec file; give the bundle the label \"My Authoring Bundle\" and use your default org:\n<%= config.bin %> <%= command.id %> --no-spec --name \"My Authoring Bundle\"",
|
|
1910
|
+
"Generate an authoring bundle from the \"specs/agentSpec.yaml\" agent spec YAML file and give it the label \"My Authoring Bundle\"; use your default org:\n<%= config.bin %> <%= command.id %> --spec specs/agentSpec.yaml --name \"My Authoring Bundle\"",
|
|
1911
|
+
"Similar to previous example, but generate the authoring bundle files in the \"other-package-dir/main/default\" package directory; use the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --spec specs/agentSpec.yaml --name \"My Authoring Bundle\" --output-dir other-package-dir/main/default --target-org my-dev-org"
|
|
1912
|
+
],
|
|
1913
|
+
"flags": {
|
|
1914
|
+
"json": {
|
|
1915
|
+
"description": "Format output as json.",
|
|
1916
|
+
"helpGroup": "GLOBAL",
|
|
1917
|
+
"name": "json",
|
|
1918
|
+
"allowNo": false,
|
|
1919
|
+
"type": "boolean"
|
|
1920
|
+
},
|
|
1921
|
+
"flags-dir": {
|
|
1922
|
+
"helpGroup": "GLOBAL",
|
|
1923
|
+
"name": "flags-dir",
|
|
1924
|
+
"summary": "Import flag values from a directory.",
|
|
1925
|
+
"hasDynamicHelp": false,
|
|
1926
|
+
"multiple": false,
|
|
1927
|
+
"type": "option"
|
|
1928
|
+
},
|
|
1929
|
+
"target-org": {
|
|
1930
|
+
"char": "o",
|
|
1931
|
+
"name": "target-org",
|
|
1932
|
+
"noCacheDefault": true,
|
|
1933
|
+
"required": true,
|
|
1934
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
1935
|
+
"hasDynamicHelp": true,
|
|
1936
|
+
"multiple": false,
|
|
1937
|
+
"type": "option"
|
|
1938
|
+
},
|
|
1939
|
+
"api-name": {
|
|
1940
|
+
"name": "api-name",
|
|
1941
|
+
"summary": "API name of the new authoring bundle; if not specified, the API name is derived from the authoring bundle name (label); the API name can't exist in the org.",
|
|
1942
|
+
"hasDynamicHelp": false,
|
|
1943
|
+
"multiple": false,
|
|
1944
|
+
"type": "option"
|
|
1945
|
+
},
|
|
1946
|
+
"api-version": {
|
|
1947
|
+
"description": "Override the api version used for api requests made by this command",
|
|
1948
|
+
"name": "api-version",
|
|
1949
|
+
"hasDynamicHelp": false,
|
|
1950
|
+
"multiple": false,
|
|
1951
|
+
"type": "option"
|
|
1952
|
+
},
|
|
1953
|
+
"spec": {
|
|
1954
|
+
"char": "f",
|
|
1955
|
+
"name": "spec",
|
|
1956
|
+
"summary": "Path to the agent spec YAML file. If you don't specify the flag, the command provides a list that you can choose from. Use the --no-spec flag to skip using an agent spec entirely.",
|
|
1957
|
+
"hasDynamicHelp": false,
|
|
1958
|
+
"multiple": false,
|
|
1959
|
+
"type": "option"
|
|
1960
|
+
},
|
|
1961
|
+
"no-spec": {
|
|
1962
|
+
"name": "no-spec",
|
|
1963
|
+
"summary": "Skip prompting for an agent spec and use the default Agent Script boilerplate in the generated authoring bundle.",
|
|
1964
|
+
"allowNo": false,
|
|
1965
|
+
"type": "boolean"
|
|
1966
|
+
},
|
|
1967
|
+
"output-dir": {
|
|
1968
|
+
"char": "d",
|
|
1969
|
+
"name": "output-dir",
|
|
1970
|
+
"summary": "Directory where the authoring bundle files are generated.",
|
|
1971
|
+
"hasDynamicHelp": false,
|
|
1972
|
+
"multiple": false,
|
|
1973
|
+
"type": "option"
|
|
1974
|
+
},
|
|
1975
|
+
"name": {
|
|
1976
|
+
"char": "n",
|
|
1977
|
+
"name": "name",
|
|
1978
|
+
"summary": "Name (label) of the authoring bundle; if not specified, you're prompted for the name.",
|
|
1979
|
+
"hasDynamicHelp": false,
|
|
1980
|
+
"multiple": false,
|
|
1981
|
+
"type": "option"
|
|
1982
|
+
},
|
|
1983
|
+
"force-overwrite": {
|
|
1984
|
+
"name": "force-overwrite",
|
|
1985
|
+
"summary": "Overwrite the existing authoring bundle if one with the same API name already exists locally.",
|
|
1986
|
+
"allowNo": false,
|
|
1987
|
+
"type": "boolean"
|
|
1988
|
+
}
|
|
1989
|
+
},
|
|
1990
|
+
"hasDynamicHelp": true,
|
|
1991
|
+
"hiddenAliases": [],
|
|
1992
|
+
"id": "agent:generate:authoring-bundle",
|
|
1993
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
1994
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
1995
|
+
"pluginType": "core",
|
|
1996
|
+
"strict": true,
|
|
1997
|
+
"summary": "Generate an authoring bundle from an existing agent spec YAML file.",
|
|
1998
|
+
"enableJsonFlag": true,
|
|
1999
|
+
"requiresProject": true,
|
|
2000
|
+
"isESM": true,
|
|
2001
|
+
"relativePath": [
|
|
2002
|
+
"lib",
|
|
2003
|
+
"commands",
|
|
2004
|
+
"agent",
|
|
2005
|
+
"generate",
|
|
2006
|
+
"authoring-bundle.js"
|
|
2007
|
+
],
|
|
2008
|
+
"aliasPermutations": [],
|
|
2009
|
+
"permutations": [
|
|
2010
|
+
"agent:generate:authoring-bundle",
|
|
2011
|
+
"generate:agent:authoring-bundle",
|
|
2012
|
+
"generate:authoring-bundle:agent",
|
|
2013
|
+
"agent:authoring-bundle:generate",
|
|
2014
|
+
"authoring-bundle:agent:generate",
|
|
2015
|
+
"authoring-bundle:generate:agent"
|
|
2016
|
+
]
|
|
2017
|
+
},
|
|
2018
|
+
"agent:generate:template": {
|
|
2019
|
+
"aliases": [],
|
|
2020
|
+
"args": {},
|
|
2021
|
+
"description": "WARNING: This command doesn't work for agents that were created from an Agent Script file. In other words, you can't currently package an agent template for agents that use Agent Script.\n\nAt a high-level, agents are defined by the Bot, BotVersion, and GenAiPlannerBundle metadata types. The GenAiPlannerBundle type in turn defines the agent's topics and actions. This command uses the metadata files for these three types, located in your local DX project, to generate a BotTemplate metadata file for a specific agent (Bot). You then use the BotTemplate metadata file, along with the GenAiPlannerBundle metadata file that references the BotTemplate, to package the template in a managed package that you can share between orgs or on AppExchange.\n\nUse the --agent-file flag to specify the relative or full pathname of the Bot metadata file, such as force-app/main/default/bots/My_Awesome_Agent/My_Awesome_Agent.bot-meta.xml. A single Bot can have multiple BotVersions, so use the --agent-version flag to specify the version. The corresponding BotVersion metadata file must exist locally. For example, if you specify \"--agent-version 4\", then the file force-app/main/default/bots/My_Awesome_Agent/v4.botVersion-meta.xml must exist.\n\nThe new BotTemplate metadata file is generated in the \"botTemplates\" directory in the output directory specified with the --output-dir flag, and has the name <Agent_API_name>\\_v<Version>\\_Template.botTemplate-meta.xml, such as my-package/botTemplates/My_Awesome_Agent_v4_Template.botTemplate-meta.xml. The command displays the full pathname of the generated files when it completes.\n\nSee \"Develop and Package Agent Templates Using Scratch Orgs\" (https://developer.salesforce.com/docs/atlas.en-us.pkg2_dev.meta/pkg2_dev/dev2gp_package_agent_templates.htm) for details about the complete process, which includes using a scratch org to create and test the agent, retrieving the agent metadata to your DX project, running this command to create the agent template, and then packaging the template.",
|
|
2022
|
+
"examples": [
|
|
2023
|
+
"Generate an agent template from the My_Awesome_Agent Bot metadata file in your DX project and save the BotTemplate and GenAiPlannerBundle to the specified directory; use version 1 of the agent. The agent that the template is based on is in the org with alias \"my-scratch-org\":\n<%= config.bin %> <%= command.id %> --agent-file force-app/main/default/bots/My_Awesome_Agent/My_Awesome_Agent.bot-meta.xml --agent-version 1 --output-dir my-package --source-org my-scratch-org"
|
|
2024
|
+
],
|
|
2025
|
+
"flags": {
|
|
2026
|
+
"json": {
|
|
2027
|
+
"description": "Format output as json.",
|
|
2028
|
+
"helpGroup": "GLOBAL",
|
|
2029
|
+
"name": "json",
|
|
2030
|
+
"allowNo": false,
|
|
2031
|
+
"type": "boolean"
|
|
2032
|
+
},
|
|
2033
|
+
"flags-dir": {
|
|
2034
|
+
"helpGroup": "GLOBAL",
|
|
2035
|
+
"name": "flags-dir",
|
|
2036
|
+
"summary": "Import flag values from a directory.",
|
|
2037
|
+
"hasDynamicHelp": false,
|
|
2038
|
+
"multiple": false,
|
|
2039
|
+
"type": "option"
|
|
2040
|
+
},
|
|
2041
|
+
"api-version": {
|
|
2042
|
+
"description": "Override the api version used for api requests made by this command",
|
|
2043
|
+
"name": "api-version",
|
|
2044
|
+
"hasDynamicHelp": false,
|
|
2045
|
+
"multiple": false,
|
|
2046
|
+
"type": "option"
|
|
2047
|
+
},
|
|
2048
|
+
"source-org": {
|
|
2049
|
+
"char": "s",
|
|
2050
|
+
"name": "source-org",
|
|
2051
|
+
"noCacheDefault": true,
|
|
2052
|
+
"required": true,
|
|
2053
|
+
"summary": "Username or alias of the namespaced scratch org that contains the agent which this template is based on.",
|
|
2054
|
+
"hasDynamicHelp": true,
|
|
2055
|
+
"multiple": false,
|
|
2056
|
+
"type": "option"
|
|
2057
|
+
},
|
|
2058
|
+
"agent-version": {
|
|
2059
|
+
"name": "agent-version",
|
|
2060
|
+
"required": true,
|
|
2061
|
+
"summary": "Version of the agent (BotVersion).",
|
|
2062
|
+
"hasDynamicHelp": false,
|
|
2063
|
+
"multiple": false,
|
|
2064
|
+
"type": "option"
|
|
2065
|
+
},
|
|
2066
|
+
"agent-file": {
|
|
2067
|
+
"char": "f",
|
|
2068
|
+
"name": "agent-file",
|
|
2069
|
+
"required": true,
|
|
2070
|
+
"summary": "Path to an agent (Bot) metadata file.",
|
|
2071
|
+
"hasDynamicHelp": false,
|
|
2072
|
+
"multiple": false,
|
|
2073
|
+
"type": "option"
|
|
2074
|
+
},
|
|
2075
|
+
"output-dir": {
|
|
2076
|
+
"char": "r",
|
|
2077
|
+
"name": "output-dir",
|
|
2078
|
+
"summary": "Directory where the generated BotTemplate and GenAiPlannerBundle files are saved.",
|
|
2079
|
+
"hasDynamicHelp": false,
|
|
2080
|
+
"multiple": false,
|
|
2081
|
+
"type": "option"
|
|
2082
|
+
}
|
|
2083
|
+
},
|
|
2084
|
+
"hasDynamicHelp": true,
|
|
2085
|
+
"hiddenAliases": [],
|
|
2086
|
+
"id": "agent:generate:template",
|
|
2087
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
2088
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
2089
|
+
"pluginType": "core",
|
|
2090
|
+
"strict": true,
|
|
2091
|
+
"summary": "Generate an agent template from an existing agent in your DX project so you can then package the template in a second-generation managed package.",
|
|
2092
|
+
"enableJsonFlag": true,
|
|
2093
|
+
"requiresProject": true,
|
|
2094
|
+
"isESM": true,
|
|
2095
|
+
"relativePath": [
|
|
2096
|
+
"lib",
|
|
2097
|
+
"commands",
|
|
2098
|
+
"agent",
|
|
2099
|
+
"generate",
|
|
2100
|
+
"template.js"
|
|
2101
|
+
],
|
|
2102
|
+
"aliasPermutations": [],
|
|
2103
|
+
"permutations": [
|
|
2104
|
+
"agent:generate:template",
|
|
2105
|
+
"generate:agent:template",
|
|
2106
|
+
"generate:template:agent",
|
|
2107
|
+
"agent:template:generate",
|
|
2108
|
+
"template:agent:generate",
|
|
2109
|
+
"template:generate:agent"
|
|
2110
|
+
]
|
|
2111
|
+
},
|
|
2112
|
+
"agent:generate:test-spec": {
|
|
2113
|
+
"aliases": [],
|
|
2114
|
+
"args": {},
|
|
2115
|
+
"description": "The first step when using Salesforce CLI to create an agent test in your org is to use this interactive command to generate a local YAML-formatted test spec file. The test spec YAML file contains information about the agent being tested, such as its API name, and then one or more test cases. This command uses the metadata components in your DX project when prompting for information, such as the agent API name; it doesn't look in your org.\n\nTo generate a specific agent test case, this command prompts you for this information; when possible, the command provides a list of options for you to choose from:\n\n- Utterance: Natural language statement, question, or command used to test the agent.\n- Expected topic: API name of the topic you expect the agent to use when responding to the utterance.\n- Expected actions: One or more API names of the expection actions the agent takes.\n- Expected outcome: Natural language description of the outcome you expect.\n- (Optional) Custom evaluation: Test an agent's response for specific strings or numbers.\n- (Optional) Conversation history: Boilerplate for additional context you can add to the test in the form of a conversation history.\n\nYou can manually add contextVariables to test cases in the generated YAML file to inject contextual data (such as CaseId or RoutableId) into agent sessions. This is useful for testing agent behavior with different contextual information.\n\nWhen your test spec is ready, you then run the \"agent test create\" command to actually create the test in your org and synchronize the metadata with your DX project. The metadata type for an agent test is `AiEvaluationDefinition` (legacy testing-center) or `AiTestingDefinition` (Agentforce Studio / NGT), selected via --test-runner.\n\nIf you have an existing AiEvaluationDefinition or AiTestingDefinition metadata XML file in your DX project, you can generate its equivalent YAML test spec file with the --from-definition flag. The runner is inferred from the file extension; pass --test-runner to override.",
|
|
2116
|
+
"examples": [
|
|
2117
|
+
"Generate an agent test spec YAML file interactively:\n<%= config.bin %> <%= command.id %>",
|
|
2118
|
+
"Generate an Agentforce Studio (NGT) test spec YAML file interactively:\n<%= config.bin %> <%= command.id %> --test-runner agentforce-studio",
|
|
2119
|
+
"Generate an agent test spec YAML file and specify a name for the new file; if the file exists, overwrite it without confirmation:\n<%= config.bin %> <%= command.id %> --output-file specs/Resort_Manager-new-version-testSpec.yaml --force-overwrite",
|
|
2120
|
+
"Generate an agent test spec YAML file from an existing AiEvaluationDefinition metadata XML file in your DX project:\n<%= config.bin %> <%= command.id %> --from-definition force-app/main/default/aiEvaluationDefinitions/Resort_Manager_Tests.aiEvaluationDefinition-meta.xml",
|
|
2121
|
+
"Generate an Agentforce Studio (NGT) test spec YAML file from an existing AiTestingDefinition metadata XML file:\n<%= config.bin %> <%= command.id %> --from-definition force-app/main/default/aiTestingDefinitions/Returns_Checkout_Tests.aiTestingDefinition-meta.xml"
|
|
2122
|
+
],
|
|
2123
|
+
"flags": {
|
|
2124
|
+
"flags-dir": {
|
|
2125
|
+
"helpGroup": "GLOBAL",
|
|
2126
|
+
"name": "flags-dir",
|
|
2127
|
+
"summary": "Import flag values from a directory.",
|
|
2128
|
+
"hasDynamicHelp": false,
|
|
2129
|
+
"multiple": false,
|
|
2130
|
+
"type": "option"
|
|
2131
|
+
},
|
|
2132
|
+
"from-definition": {
|
|
2133
|
+
"char": "d",
|
|
2134
|
+
"name": "from-definition",
|
|
2135
|
+
"summary": "Filepath to an AiEvaluationDefinition or AiTestingDefinition metadata XML file in your DX project that you want to convert to a test spec YAML file.",
|
|
2136
|
+
"hasDynamicHelp": false,
|
|
2137
|
+
"multiple": false,
|
|
2138
|
+
"type": "option"
|
|
2139
|
+
},
|
|
2140
|
+
"force-overwrite": {
|
|
2141
|
+
"name": "force-overwrite",
|
|
2142
|
+
"summary": "Don't prompt for confirmation when overwriting an existing test spec YAML file.",
|
|
2143
|
+
"allowNo": false,
|
|
2144
|
+
"type": "boolean"
|
|
2145
|
+
},
|
|
2146
|
+
"output-file": {
|
|
2147
|
+
"char": "f",
|
|
2148
|
+
"name": "output-file",
|
|
2149
|
+
"summary": "Name of the generated test spec YAML file. Default value is \"specs/<AGENT_API_NAME>-testSpec.yaml\" (legacy) or \"specs/<AGENT_API_NAME>-ngtTestSpec.yaml\" (Agentforce Studio).",
|
|
2150
|
+
"hasDynamicHelp": false,
|
|
2151
|
+
"multiple": false,
|
|
2152
|
+
"type": "option"
|
|
2153
|
+
},
|
|
2154
|
+
"test-runner": {
|
|
2155
|
+
"description": "By default, the command automatically detects which test runner to use based on the test definition metadata type in your org. Use this flag to explicitly specify the runner type. 'agentforce-studio' uses AiTestingDefinition metadata. 'testing-center' uses AiEvaluationDefinition metadata.",
|
|
2156
|
+
"name": "test-runner",
|
|
2157
|
+
"summary": "Explicitly specify which test runner to use (agentforce-studio or testing-center).",
|
|
2158
|
+
"hasDynamicHelp": false,
|
|
2159
|
+
"multiple": false,
|
|
2160
|
+
"options": [
|
|
2161
|
+
"agentforce-studio",
|
|
2162
|
+
"testing-center"
|
|
2163
|
+
],
|
|
2164
|
+
"type": "option"
|
|
2165
|
+
}
|
|
2166
|
+
},
|
|
2167
|
+
"hasDynamicHelp": false,
|
|
2168
|
+
"hiddenAliases": [],
|
|
2169
|
+
"id": "agent:generate:test-spec",
|
|
2170
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
2171
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
2172
|
+
"pluginType": "core",
|
|
2173
|
+
"strict": true,
|
|
2174
|
+
"summary": "Generate an agent test spec, which is a YAML file that lists the test cases for testing a specific agent.",
|
|
2175
|
+
"enableJsonFlag": false,
|
|
2176
|
+
"isESM": true,
|
|
2177
|
+
"relativePath": [
|
|
2178
|
+
"lib",
|
|
2179
|
+
"commands",
|
|
2180
|
+
"agent",
|
|
2181
|
+
"generate",
|
|
2182
|
+
"test-spec.js"
|
|
2183
|
+
],
|
|
2184
|
+
"aliasPermutations": [],
|
|
2185
|
+
"permutations": [
|
|
2186
|
+
"agent:generate:test-spec",
|
|
2187
|
+
"generate:agent:test-spec",
|
|
2188
|
+
"generate:test-spec:agent",
|
|
2189
|
+
"agent:test-spec:generate",
|
|
2190
|
+
"test-spec:agent:generate",
|
|
2191
|
+
"test-spec:generate:agent"
|
|
2192
|
+
]
|
|
2193
|
+
},
|
|
2194
|
+
"agent:preview:end": {
|
|
2195
|
+
"aliases": [],
|
|
2196
|
+
"args": {},
|
|
2197
|
+
"description": "You must have previously started a programmatic agent preview session with the \"agent preview start\" command to then use this command to end it. This command also displays the local directory where the session trace files are stored.\n\nThe original \"agent preview start\" command outputs a session ID which you then use with the --session-id flag of this command to end the session. You don't have to specify the --session-id flag if an agent has only one active preview session. You must also use either the --authoring-bundle or --api-name flag to specify the API name of the authoring bundle or the published agent, respectively. To find either API name, navigate to your package directory in your DX project. The API name of an authoring bundle is the same as its directory name under the \"aiAuthoringBundles\" metadata directory. Similarly, the published agent's API name is the same as its directory name under the \"Bots\" metadata directory.\n\nUse the --all flag to end all active preview sessions at once. You can combine --all with --api-name or --authoring-bundle to end only sessions for a specific agent, or use --all on its own to end every session across all agents in the project.",
|
|
2198
|
+
"examples": [
|
|
2199
|
+
"End a preview session of a published agent by specifying its session ID and API name; use the default org:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --api-name My_Published_Agent",
|
|
2200
|
+
"Similar to previous example, but don't specify a session ID; you get an error if the published agent has more than one active session. Use the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --api-name My_Published_Agent --target-org my-dev-org",
|
|
2201
|
+
"End a preview session of an agent using its authoring bundle API name; you get an error if the agent has more than one active session.\n<%= config.bin %> <%= command.id %> --authoring-bundle My_Local_Agent",
|
|
2202
|
+
"End all active preview sessions for a specific agent without prompting:\n<%= config.bin %> <%= command.id %> --all --authoring-bundle My_Local_Agent --target-org <target_org> --no-prompt",
|
|
2203
|
+
"End all active preview sessions across every agent in the local session cache for an org:\n<%= config.bin %> <%= command.id %> --all --target-org <target_org>"
|
|
2204
|
+
],
|
|
2205
|
+
"flags": {
|
|
2206
|
+
"json": {
|
|
2207
|
+
"description": "Format output as json.",
|
|
2208
|
+
"helpGroup": "GLOBAL",
|
|
2209
|
+
"name": "json",
|
|
2210
|
+
"allowNo": false,
|
|
2211
|
+
"type": "boolean"
|
|
2212
|
+
},
|
|
2213
|
+
"flags-dir": {
|
|
2214
|
+
"helpGroup": "GLOBAL",
|
|
2215
|
+
"name": "flags-dir",
|
|
2216
|
+
"summary": "Import flag values from a directory.",
|
|
2217
|
+
"hasDynamicHelp": false,
|
|
2218
|
+
"multiple": false,
|
|
2219
|
+
"type": "option"
|
|
2220
|
+
},
|
|
2221
|
+
"target-org": {
|
|
2222
|
+
"char": "o",
|
|
2223
|
+
"name": "target-org",
|
|
2224
|
+
"noCacheDefault": true,
|
|
2225
|
+
"required": true,
|
|
2226
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
2227
|
+
"hasDynamicHelp": true,
|
|
2228
|
+
"multiple": false,
|
|
2229
|
+
"type": "option"
|
|
2230
|
+
},
|
|
2231
|
+
"api-version": {
|
|
2232
|
+
"description": "Override the api version used for api requests made by this command",
|
|
2233
|
+
"name": "api-version",
|
|
2234
|
+
"hasDynamicHelp": false,
|
|
2235
|
+
"multiple": false,
|
|
2236
|
+
"type": "option"
|
|
2237
|
+
},
|
|
2238
|
+
"session-id": {
|
|
2239
|
+
"exclusive": [
|
|
2240
|
+
"all"
|
|
2241
|
+
],
|
|
2242
|
+
"name": "session-id",
|
|
2243
|
+
"required": false,
|
|
2244
|
+
"summary": "Session ID outputted by \"agent preview start\". Not required when the agent has exactly one active session. Run \"agent preview sessions\" to see the list of all sessions.",
|
|
2245
|
+
"hasDynamicHelp": false,
|
|
2246
|
+
"multiple": false,
|
|
2247
|
+
"type": "option"
|
|
2248
|
+
},
|
|
2249
|
+
"api-name": {
|
|
2250
|
+
"char": "n",
|
|
2251
|
+
"exclusive": [
|
|
2252
|
+
"authoring-bundle"
|
|
2253
|
+
],
|
|
2254
|
+
"name": "api-name",
|
|
2255
|
+
"summary": "API name of the activated published agent you want to preview.",
|
|
2256
|
+
"hasDynamicHelp": false,
|
|
2257
|
+
"multiple": false,
|
|
2258
|
+
"type": "option"
|
|
2259
|
+
},
|
|
2260
|
+
"authoring-bundle": {
|
|
2261
|
+
"exclusive": [
|
|
2262
|
+
"api-name"
|
|
2263
|
+
],
|
|
2264
|
+
"name": "authoring-bundle",
|
|
2265
|
+
"summary": "API name of the authoring bundle metadata component that contains the agent's Agent Script file.",
|
|
2266
|
+
"hasDynamicHelp": false,
|
|
2267
|
+
"multiple": false,
|
|
2268
|
+
"type": "option"
|
|
2269
|
+
},
|
|
2270
|
+
"all": {
|
|
2271
|
+
"exclusive": [
|
|
2272
|
+
"session-id"
|
|
2273
|
+
],
|
|
2274
|
+
"name": "all",
|
|
2275
|
+
"summary": "End all active preview sessions. Combine with --api-name or --authoring-bundle to limit to a specific agent, or use with only --target-org to end sessions for all agents found in the local session cache. Requires --target-org.",
|
|
2276
|
+
"allowNo": false,
|
|
2277
|
+
"type": "boolean"
|
|
2278
|
+
},
|
|
2279
|
+
"no-prompt": {
|
|
2280
|
+
"char": "p",
|
|
2281
|
+
"name": "no-prompt",
|
|
2282
|
+
"summary": "Don't prompt for confirmation before ending sessions. Has an effect only when used with --all.",
|
|
2283
|
+
"allowNo": false,
|
|
2284
|
+
"type": "boolean"
|
|
2285
|
+
}
|
|
2286
|
+
},
|
|
2287
|
+
"hasDynamicHelp": true,
|
|
2288
|
+
"hiddenAliases": [],
|
|
2289
|
+
"id": "agent:preview:end",
|
|
2290
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
2291
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
2292
|
+
"pluginType": "core",
|
|
2293
|
+
"strict": true,
|
|
2294
|
+
"summary": "End an existing programmatic agent preview session and get trace location.",
|
|
2295
|
+
"enableJsonFlag": true,
|
|
2296
|
+
"requiresProject": true,
|
|
2297
|
+
"envVariablesSection": {
|
|
2298
|
+
"header": "ENVIRONMENT VARIABLES",
|
|
2299
|
+
"body": [
|
|
2300
|
+
{
|
|
2301
|
+
"name": "SF_TARGET_ORG",
|
|
2302
|
+
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
2303
|
+
}
|
|
2304
|
+
]
|
|
2305
|
+
},
|
|
2306
|
+
"errorCodes": {
|
|
2307
|
+
"header": "ERROR CODES",
|
|
2308
|
+
"body": [
|
|
2309
|
+
{
|
|
2310
|
+
"name": "Succeeded (0)",
|
|
2311
|
+
"description": "Preview session ended successfully and traces saved."
|
|
2312
|
+
},
|
|
2313
|
+
{
|
|
2314
|
+
"name": "ExactlyOneRequired (2)",
|
|
2315
|
+
"description": "Neither --api-name nor --authoring-bundle was provided (required when --all is not set)."
|
|
2316
|
+
},
|
|
2317
|
+
{
|
|
2318
|
+
"name": "NotFound (2)",
|
|
2319
|
+
"description": "Agent not found, or no preview session exists for this agent."
|
|
2320
|
+
},
|
|
2321
|
+
{
|
|
2322
|
+
"name": "PreviewEndFailed (4)",
|
|
2323
|
+
"description": "Failed to end the preview session."
|
|
2324
|
+
},
|
|
2325
|
+
{
|
|
2326
|
+
"name": "PreviewEndPartialFailure (68)",
|
|
2327
|
+
"description": "With --all, one or more sessions failed to end while others succeeded."
|
|
2328
|
+
},
|
|
2329
|
+
{
|
|
2330
|
+
"name": "SessionAmbiguous (5)",
|
|
2331
|
+
"description": "Multiple preview sessions found; specify --session-id to choose one."
|
|
2332
|
+
}
|
|
2333
|
+
]
|
|
2334
|
+
},
|
|
2335
|
+
"isESM": true,
|
|
2336
|
+
"relativePath": [
|
|
2337
|
+
"lib",
|
|
2338
|
+
"commands",
|
|
2339
|
+
"agent",
|
|
2340
|
+
"preview",
|
|
2341
|
+
"end.js"
|
|
2342
|
+
],
|
|
2343
|
+
"aliasPermutations": [],
|
|
2344
|
+
"permutations": [
|
|
2345
|
+
"agent:preview:end",
|
|
2346
|
+
"preview:agent:end",
|
|
2347
|
+
"preview:end:agent",
|
|
2348
|
+
"agent:end:preview",
|
|
2349
|
+
"end:agent:preview",
|
|
2350
|
+
"end:preview:agent"
|
|
2351
|
+
]
|
|
2352
|
+
},
|
|
2353
|
+
"agent:preview:send": {
|
|
2354
|
+
"aliases": [],
|
|
2355
|
+
"args": {},
|
|
2356
|
+
"description": "You must have previously started a programmatic agent preview session with the \"agent preview start\" command to then use this command to send the agent a message (utterance). This command then displays the agent's response.\n\nThe original \"agent preview start\" command outputs a session ID which you then use with the --session-id flag of this command to send a message. You don't have to specify the --session-id flag if an agent has only one active preview session. You must also use either the --authoring-bundle or --api-name flag to specify the API name of the authoring bundle or the published agent, respecitvely. To find either API name, navigate to your package directory in your DX project. The API name of an authoring bundle is the same as its directory name under the \"aiAuthoringBundles\" metadata directory. Similarly, the published agent's API name is the same as its directory name under the \"Bots\" metadata directory.",
|
|
2357
|
+
"examples": [
|
|
2358
|
+
"Send a message to an activated published agent using its API name and session ID; use the default org:\n<%= config.bin %> <%= command.id %> --utterance \"What can you help me with?\" --api-name My_Published_Agent --session-id <SESSION_ID>",
|
|
2359
|
+
"Similar to previous example, but don't specify a session ID; you get an error if the agent has more than one active session. Use the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --utterance \"What can you help me with?\" --api-name My_Published_Agent --target-org my-dev-org",
|
|
2360
|
+
"Send a message to an agent using its authoring bundle API name; you get an error if the agent has more than one active session:\n<%= config.bin %> <%= command.id %> --utterance \"what can you help me with?\" --authoring-bundle My_Local_Agent"
|
|
2361
|
+
],
|
|
2362
|
+
"flags": {
|
|
2363
|
+
"json": {
|
|
2364
|
+
"description": "Format output as json.",
|
|
2365
|
+
"helpGroup": "GLOBAL",
|
|
2366
|
+
"name": "json",
|
|
2367
|
+
"allowNo": false,
|
|
2368
|
+
"type": "boolean"
|
|
2369
|
+
},
|
|
2370
|
+
"flags-dir": {
|
|
2371
|
+
"helpGroup": "GLOBAL",
|
|
2372
|
+
"name": "flags-dir",
|
|
2373
|
+
"summary": "Import flag values from a directory.",
|
|
2374
|
+
"hasDynamicHelp": false,
|
|
2375
|
+
"multiple": false,
|
|
2376
|
+
"type": "option"
|
|
2377
|
+
},
|
|
2378
|
+
"target-org": {
|
|
2379
|
+
"char": "o",
|
|
2380
|
+
"name": "target-org",
|
|
2381
|
+
"noCacheDefault": true,
|
|
2382
|
+
"required": true,
|
|
2383
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
2384
|
+
"hasDynamicHelp": true,
|
|
2385
|
+
"multiple": false,
|
|
2386
|
+
"type": "option"
|
|
2387
|
+
},
|
|
2388
|
+
"api-version": {
|
|
2389
|
+
"description": "Override the api version used for api requests made by this command",
|
|
2390
|
+
"name": "api-version",
|
|
2391
|
+
"hasDynamicHelp": false,
|
|
2392
|
+
"multiple": false,
|
|
2393
|
+
"type": "option"
|
|
2394
|
+
},
|
|
2395
|
+
"session-id": {
|
|
2396
|
+
"name": "session-id",
|
|
2397
|
+
"required": false,
|
|
2398
|
+
"summary": "Session ID outputted by \"agent preview start\". Not required when the agent has exactly one active session. Run \"agent preview sessions\" to see list of all sessions.",
|
|
2399
|
+
"hasDynamicHelp": false,
|
|
2400
|
+
"multiple": false,
|
|
2401
|
+
"type": "option"
|
|
2402
|
+
},
|
|
2403
|
+
"utterance": {
|
|
2404
|
+
"char": "u",
|
|
2405
|
+
"name": "utterance",
|
|
2406
|
+
"required": true,
|
|
2407
|
+
"summary": "Utterance to send to the agent, enclosed in double quotes.",
|
|
2408
|
+
"hasDynamicHelp": false,
|
|
2409
|
+
"multiple": false,
|
|
2410
|
+
"type": "option"
|
|
2411
|
+
},
|
|
2412
|
+
"api-name": {
|
|
2413
|
+
"char": "n",
|
|
2414
|
+
"name": "api-name",
|
|
2415
|
+
"summary": "API name of the activated published agent you want to preview.",
|
|
2416
|
+
"hasDynamicHelp": false,
|
|
2417
|
+
"multiple": false,
|
|
2418
|
+
"type": "option"
|
|
2419
|
+
},
|
|
2420
|
+
"authoring-bundle": {
|
|
2421
|
+
"name": "authoring-bundle",
|
|
2422
|
+
"summary": "API name of the authoring bundle metadata component that contains the agent's Agent Script file.",
|
|
2423
|
+
"hasDynamicHelp": false,
|
|
2424
|
+
"multiple": false,
|
|
2425
|
+
"type": "option"
|
|
2426
|
+
}
|
|
2427
|
+
},
|
|
2428
|
+
"hasDynamicHelp": true,
|
|
2429
|
+
"hiddenAliases": [],
|
|
2430
|
+
"id": "agent:preview:send",
|
|
2431
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
2432
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
2433
|
+
"pluginType": "core",
|
|
2434
|
+
"strict": true,
|
|
2435
|
+
"summary": "Send a message to an existing agent preview session.",
|
|
2436
|
+
"enableJsonFlag": true,
|
|
2437
|
+
"requiresProject": true,
|
|
2438
|
+
"envVariablesSection": {
|
|
2439
|
+
"header": "ENVIRONMENT VARIABLES",
|
|
2440
|
+
"body": [
|
|
2441
|
+
{
|
|
2442
|
+
"name": "SF_TARGET_ORG",
|
|
2443
|
+
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
2444
|
+
}
|
|
2445
|
+
]
|
|
2446
|
+
},
|
|
2447
|
+
"errorCodes": {
|
|
2448
|
+
"header": "ERROR CODES",
|
|
2449
|
+
"body": [
|
|
2450
|
+
{
|
|
2451
|
+
"name": "Succeeded (0)",
|
|
2452
|
+
"description": "Message sent successfully and agent response received."
|
|
2453
|
+
},
|
|
2454
|
+
{
|
|
2455
|
+
"name": "NotFound (2)",
|
|
2456
|
+
"description": "Agent not found, or no preview session exists for this agent."
|
|
2457
|
+
},
|
|
2458
|
+
{
|
|
2459
|
+
"name": "PreviewSendFailed (4)",
|
|
2460
|
+
"description": "Failed to send message or receive response from the preview session."
|
|
2461
|
+
},
|
|
2462
|
+
{
|
|
2463
|
+
"name": "SessionAmbiguous (5)",
|
|
2464
|
+
"description": "Multiple preview sessions found; specify --session-id to choose one."
|
|
2465
|
+
}
|
|
1852
2466
|
]
|
|
1853
2467
|
},
|
|
2468
|
+
"isESM": true,
|
|
2469
|
+
"relativePath": [
|
|
2470
|
+
"lib",
|
|
2471
|
+
"commands",
|
|
2472
|
+
"agent",
|
|
2473
|
+
"preview",
|
|
2474
|
+
"send.js"
|
|
2475
|
+
],
|
|
2476
|
+
"aliasPermutations": [],
|
|
2477
|
+
"permutations": [
|
|
2478
|
+
"agent:preview:send",
|
|
2479
|
+
"preview:agent:send",
|
|
2480
|
+
"preview:send:agent",
|
|
2481
|
+
"agent:send:preview",
|
|
2482
|
+
"send:agent:preview",
|
|
2483
|
+
"send:preview:agent"
|
|
2484
|
+
]
|
|
2485
|
+
},
|
|
2486
|
+
"agent:preview:sessions": {
|
|
2487
|
+
"aliases": [],
|
|
2488
|
+
"args": {},
|
|
2489
|
+
"description": "This command lists the agent preview sessions that were started with the \"agent preview start\" command and are still in the local cache. Use this command to discover specific session IDs that you can pass to the \"agent preview send\" or \"agent preview end\" commands with the --session-id flag.\n\nProgrammatic agent preview sessions can be started for both published activated agents and by using an agent's local authoring bundle, which contains its Agent Script file. In this command's output table, the Agent column contains either the API name of the authoring bundle or the published agent, whichever was used when starting the session. In the table, if the same API name has multiple rows with different session IDs, then it means that you previously started multiple preview sessions with the associated agent.",
|
|
2490
|
+
"examples": [
|
|
2491
|
+
"List all cached agent preview sessions:\n<%= config.bin %> <%= command.id %>"
|
|
2492
|
+
],
|
|
2493
|
+
"flags": {
|
|
2494
|
+
"json": {
|
|
2495
|
+
"description": "Format output as json.",
|
|
2496
|
+
"helpGroup": "GLOBAL",
|
|
2497
|
+
"name": "json",
|
|
2498
|
+
"allowNo": false,
|
|
2499
|
+
"type": "boolean"
|
|
2500
|
+
},
|
|
2501
|
+
"flags-dir": {
|
|
2502
|
+
"helpGroup": "GLOBAL",
|
|
2503
|
+
"name": "flags-dir",
|
|
2504
|
+
"summary": "Import flag values from a directory.",
|
|
2505
|
+
"hasDynamicHelp": false,
|
|
2506
|
+
"multiple": false,
|
|
2507
|
+
"type": "option"
|
|
2508
|
+
}
|
|
2509
|
+
},
|
|
2510
|
+
"hasDynamicHelp": false,
|
|
2511
|
+
"hiddenAliases": [],
|
|
2512
|
+
"id": "agent:preview:sessions",
|
|
2513
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
2514
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
2515
|
+
"pluginType": "core",
|
|
2516
|
+
"strict": true,
|
|
2517
|
+
"summary": "List all known programmatic agent preview sessions.",
|
|
2518
|
+
"enableJsonFlag": true,
|
|
2519
|
+
"requiresProject": true,
|
|
1854
2520
|
"errorCodes": {
|
|
1855
2521
|
"header": "ERROR CODES",
|
|
1856
2522
|
"body": [
|
|
1857
2523
|
{
|
|
1858
2524
|
"name": "Succeeded (0)",
|
|
1859
|
-
"description": "
|
|
1860
|
-
},
|
|
1861
|
-
{
|
|
1862
|
-
"name": "Failed (4)",
|
|
1863
|
-
"description": "Failed to retrieve agent tests due to API or network errors."
|
|
2525
|
+
"description": "Sessions listed successfully (or empty list if no active sessions)."
|
|
1864
2526
|
}
|
|
1865
2527
|
]
|
|
1866
2528
|
},
|
|
@@ -1869,27 +2531,27 @@
|
|
|
1869
2531
|
"lib",
|
|
1870
2532
|
"commands",
|
|
1871
2533
|
"agent",
|
|
1872
|
-
"
|
|
1873
|
-
"
|
|
2534
|
+
"preview",
|
|
2535
|
+
"sessions.js"
|
|
1874
2536
|
],
|
|
1875
2537
|
"aliasPermutations": [],
|
|
1876
2538
|
"permutations": [
|
|
1877
|
-
"agent:
|
|
1878
|
-
"
|
|
1879
|
-
"
|
|
1880
|
-
"agent:
|
|
1881
|
-
"
|
|
1882
|
-
"
|
|
2539
|
+
"agent:preview:sessions",
|
|
2540
|
+
"preview:agent:sessions",
|
|
2541
|
+
"preview:sessions:agent",
|
|
2542
|
+
"agent:sessions:preview",
|
|
2543
|
+
"sessions:agent:preview",
|
|
2544
|
+
"sessions:preview:agent"
|
|
1883
2545
|
]
|
|
1884
2546
|
},
|
|
1885
|
-
"agent:
|
|
2547
|
+
"agent:preview:start": {
|
|
1886
2548
|
"aliases": [],
|
|
1887
2549
|
"args": {},
|
|
1888
|
-
"description": "This command
|
|
2550
|
+
"description": "This command outputs a session ID that you then use with the \"agent preview send\" command to send an utterance to the agent. Use the \"agent preview sessions\" command to list all active sessions and the \"agent preview end\" command to end a specific session.\n\nIdentify the agent you want to start previewing with either the --authoring-bundle flag to specify a local authoring bundle's API name or --api-name to specify an activated published agent's API name. To find either API name, navigate to your package directory in your DX project. The API name of an authoring bundle is the same as its directory name under the \"aiAuthoringBundles\" metadata directory. Similarly, the published agent's API name is the same as its directory name under the \"Bots\" metadata directory.\n\nWhen starting a preview session with --authoring-bundle, you must explicitly specify the execution mode using one of these flags:\n\n- --use-live-actions: Executes real Apex classes, flows, and other actions in the org. This surfaces compile and validation errors during preview.\n- --simulate-actions: Uses AI to simulate action execution without calling real implementations.\n\nPublished agents (--api-name) always use live actions. The mode flags are optional and have no effect for published agents.",
|
|
1889
2551
|
"examples": [
|
|
1890
|
-
"
|
|
1891
|
-
"
|
|
1892
|
-
"
|
|
2552
|
+
"Start a programmatic agent preview session by specifying an authoring bundle; use simulated actions. Use the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --authoring-bundle My_Agent_Bundle --target-org my-dev-org --simulate-actions",
|
|
2553
|
+
"Similar to previous example but use live actions and the default org:\n<%= config.bin %> <%= command.id %> --authoring-bundle My_Agent_Bundle --use-live-actions",
|
|
2554
|
+
"Start a preview session with an activated published agent (always uses live actions):\n<%= config.bin %> <%= command.id %> --api-name My_Published_Agent"
|
|
1893
2555
|
],
|
|
1894
2556
|
"flags": {
|
|
1895
2557
|
"json": {
|
|
@@ -1924,67 +2586,70 @@
|
|
|
1924
2586
|
"multiple": false,
|
|
1925
2587
|
"type": "option"
|
|
1926
2588
|
},
|
|
1927
|
-
"
|
|
1928
|
-
"char": "
|
|
1929
|
-
"name": "
|
|
1930
|
-
"
|
|
1931
|
-
"summary": "Job ID of the completed agent test run.",
|
|
2589
|
+
"api-name": {
|
|
2590
|
+
"char": "n",
|
|
2591
|
+
"name": "api-name",
|
|
2592
|
+
"summary": "API name of the activated published agent you want to preview.",
|
|
1932
2593
|
"hasDynamicHelp": false,
|
|
1933
2594
|
"multiple": false,
|
|
1934
2595
|
"type": "option"
|
|
1935
2596
|
},
|
|
1936
|
-
"
|
|
1937
|
-
"name": "
|
|
1938
|
-
"summary": "
|
|
1939
|
-
"default": "human",
|
|
2597
|
+
"authoring-bundle": {
|
|
2598
|
+
"name": "authoring-bundle",
|
|
2599
|
+
"summary": "API name of the authoring bundle metadata component that contains the agent's Agent Script file.",
|
|
1940
2600
|
"hasDynamicHelp": false,
|
|
1941
2601
|
"multiple": false,
|
|
1942
|
-
"options": [
|
|
1943
|
-
"json",
|
|
1944
|
-
"human",
|
|
1945
|
-
"junit",
|
|
1946
|
-
"tap"
|
|
1947
|
-
],
|
|
1948
2602
|
"type": "option"
|
|
1949
2603
|
},
|
|
1950
|
-
"
|
|
1951
|
-
"
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
"
|
|
2604
|
+
"use-live-actions": {
|
|
2605
|
+
"exclusive": [
|
|
2606
|
+
"simulate-actions"
|
|
2607
|
+
],
|
|
2608
|
+
"name": "use-live-actions",
|
|
2609
|
+
"summary": "Execute real actions in the org (Apex classes, flows, etc.). Required with --authoring-bundle.",
|
|
2610
|
+
"allowNo": false,
|
|
2611
|
+
"type": "boolean"
|
|
2612
|
+
},
|
|
2613
|
+
"simulate-actions": {
|
|
2614
|
+
"exclusive": [
|
|
2615
|
+
"use-live-actions"
|
|
2616
|
+
],
|
|
2617
|
+
"name": "simulate-actions",
|
|
2618
|
+
"summary": "Use AI to simulate action execution instead of calling real actions. Required with --authoring-bundle.",
|
|
2619
|
+
"allowNo": false,
|
|
2620
|
+
"type": "boolean"
|
|
2621
|
+
},
|
|
2622
|
+
"context-variables": {
|
|
2623
|
+
"description": "Sets variables on the agent preview session, mirroring what the in-org Agentforce Builder UI does when you override variables before sending a message. Specify this flag multiple times or use comma-separated values. Two namespaces are supported, distinguished by the name shape. Names pass through to the runtime verbatim — the CLI doesn't transform them.\n\nLinked context variables use the \"$Context.\" prefix. These map to externally-provided fields that the runtime resolves (declared in the bundle's globalConfiguration.contextVariables) and are read by live actions and topic-routing expressions via $Context.Name. Example: $Context.MyLinkedVar=some-value.\n\nState variables use the bare developerName, no prefix. These seed mutable agent state declared in agentVersion.stateVariables. Example: MyStateVar=some-value.\n\nBoth namespaces can be mixed in one value. Example: --context-variables '$Context.MyLinkedVar=foo,MyStateVar=bar'.\n\nTips: (1) Quote the whole value in single quotes so $Context isn't shell-expanded. (2) Names are sent verbatim — a bare name is treated as a state variable, not a linked context variable, so live actions that bind via $Context.Name will see null. (3) Type defaults to Text.",
|
|
2624
|
+
"name": "context-variables",
|
|
2625
|
+
"summary": "Session variables for the agent preview session, in the form Name=Value.",
|
|
2626
|
+
"delimiter": ",",
|
|
1955
2627
|
"hasDynamicHelp": false,
|
|
1956
|
-
"multiple":
|
|
2628
|
+
"multiple": true,
|
|
1957
2629
|
"type": "option"
|
|
1958
2630
|
},
|
|
1959
|
-
"
|
|
1960
|
-
"
|
|
1961
|
-
|
|
1962
|
-
|
|
2631
|
+
"agent-json": {
|
|
2632
|
+
"dependsOn": [
|
|
2633
|
+
"authoring-bundle"
|
|
2634
|
+
],
|
|
2635
|
+
"hidden": true,
|
|
2636
|
+
"name": "agent-json",
|
|
2637
|
+
"summary": "Path to a pre-compiled AgentJSON file to use instead of compiling the Agent Script file. Intended for internal use and testing.",
|
|
1963
2638
|
"hasDynamicHelp": false,
|
|
1964
2639
|
"multiple": false,
|
|
1965
|
-
"options": [
|
|
1966
|
-
"agentforce-studio",
|
|
1967
|
-
"testing-center"
|
|
1968
|
-
],
|
|
1969
2640
|
"type": "option"
|
|
1970
|
-
},
|
|
1971
|
-
"verbose": {
|
|
1972
|
-
"description": "When enabled, includes detailed generated data (such as invoked actions) in the human-readable test results output. This is useful for debugging test failures and understanding what actions were actually invoked during the test run.\n\nThe generated data is in JSON format and includes the Apex classes or Flows that were invoked, the Salesforce objects that were touched, and so on. Use the JSON structure of this information to build the test case JSONPath expression when using custom evaluations.",
|
|
1973
|
-
"name": "verbose",
|
|
1974
|
-
"summary": "Show generated data in the test results output.",
|
|
1975
|
-
"allowNo": false,
|
|
1976
|
-
"type": "boolean"
|
|
1977
2641
|
}
|
|
1978
2642
|
},
|
|
1979
2643
|
"hasDynamicHelp": true,
|
|
1980
2644
|
"hiddenAliases": [],
|
|
1981
|
-
"id": "agent:
|
|
2645
|
+
"id": "agent:preview:start",
|
|
1982
2646
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
1983
2647
|
"pluginName": "@salesforce/plugin-agent",
|
|
1984
2648
|
"pluginType": "core",
|
|
1985
2649
|
"strict": true,
|
|
1986
|
-
"summary": "
|
|
2650
|
+
"summary": "Start a programmatic agent preview session.",
|
|
1987
2651
|
"enableJsonFlag": true,
|
|
2652
|
+
"requiresProject": true,
|
|
1988
2653
|
"envVariablesSection": {
|
|
1989
2654
|
"header": "ENVIRONMENT VARIABLES",
|
|
1990
2655
|
"body": [
|
|
@@ -1999,44 +2664,177 @@
|
|
|
1999
2664
|
"body": [
|
|
2000
2665
|
{
|
|
2001
2666
|
"name": "Succeeded (0)",
|
|
2002
|
-
"description": "
|
|
2667
|
+
"description": "Preview session started successfully."
|
|
2668
|
+
},
|
|
2669
|
+
{
|
|
2670
|
+
"name": "Failed (1)",
|
|
2671
|
+
"description": "Agent Script compilation failed (syntax errors in the script)."
|
|
2003
2672
|
},
|
|
2004
2673
|
{
|
|
2005
2674
|
"name": "NotFound (2)",
|
|
2006
|
-
"description": "
|
|
2675
|
+
"description": "Agent not found, or compilation API returned HTTP 404 (endpoint may not be available in your org or region)."
|
|
2676
|
+
},
|
|
2677
|
+
{
|
|
2678
|
+
"name": "ServerError (3)",
|
|
2679
|
+
"description": "Compilation API returned HTTP 500 (server error during compilation)."
|
|
2680
|
+
},
|
|
2681
|
+
{
|
|
2682
|
+
"name": "PreviewStartFailed (4)",
|
|
2683
|
+
"description": "Preview session failed to start due to API or network errors."
|
|
2684
|
+
}
|
|
2685
|
+
]
|
|
2686
|
+
},
|
|
2687
|
+
"isESM": true,
|
|
2688
|
+
"relativePath": [
|
|
2689
|
+
"lib",
|
|
2690
|
+
"commands",
|
|
2691
|
+
"agent",
|
|
2692
|
+
"preview",
|
|
2693
|
+
"start.js"
|
|
2694
|
+
],
|
|
2695
|
+
"aliasPermutations": [],
|
|
2696
|
+
"permutations": [
|
|
2697
|
+
"agent:preview:start",
|
|
2698
|
+
"preview:agent:start",
|
|
2699
|
+
"preview:start:agent",
|
|
2700
|
+
"agent:start:preview",
|
|
2701
|
+
"start:agent:preview",
|
|
2702
|
+
"start:preview:agent"
|
|
2703
|
+
]
|
|
2704
|
+
},
|
|
2705
|
+
"agent:publish:authoring-bundle": {
|
|
2706
|
+
"aliases": [],
|
|
2707
|
+
"args": {},
|
|
2708
|
+
"description": "An authoring bundle is a metadata type (named aiAuthoringBundle) that provides the blueprint for an agent. The metadata type contains two files: the standard metatada XML file and an Agent Script file (extension \".agent\") that fully describes the agent using the Agent Script language.\n\nWhen you publish an authoring bundle to your org, a number of things happen. First, this command validates that the Agent Script file successfully compiles. If there are compilation errors, the command exits and you must fix the Agent Script file to continue. Once the Agent Script file compiles, then it's published to the org, which in turn creates new associated metadata (Bot, BotVersion, GenAiX), or new versions of the metadata if the agent already exists. The new or updated metadata is retrieved back to your DX project; specify the --skip-retrieve flag to skip this step. Finally, the authoring bundle metadata (AiAuthoringBundle) is deployed to your org.\n\nThis command uses the API name of the authoring bundle.",
|
|
2709
|
+
"examples": [
|
|
2710
|
+
"Publish an authoring bundle by being prompted for its API name; use your default org:\n<%= config.bin %> <%= command.id %>",
|
|
2711
|
+
"Publish an authoring bundle with API name MyAuthoringBundle to the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --target-org my-dev-org",
|
|
2712
|
+
"Publish with verbose output to see all retrieved and deployed metadata components:\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --verbose",
|
|
2713
|
+
"Publish with concise output showing only essential information:\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --concise"
|
|
2714
|
+
],
|
|
2715
|
+
"flags": {
|
|
2716
|
+
"json": {
|
|
2717
|
+
"description": "Format output as json.",
|
|
2718
|
+
"helpGroup": "GLOBAL",
|
|
2719
|
+
"name": "json",
|
|
2720
|
+
"allowNo": false,
|
|
2721
|
+
"type": "boolean"
|
|
2722
|
+
},
|
|
2723
|
+
"flags-dir": {
|
|
2724
|
+
"helpGroup": "GLOBAL",
|
|
2725
|
+
"name": "flags-dir",
|
|
2726
|
+
"summary": "Import flag values from a directory.",
|
|
2727
|
+
"hasDynamicHelp": false,
|
|
2728
|
+
"multiple": false,
|
|
2729
|
+
"type": "option"
|
|
2730
|
+
},
|
|
2731
|
+
"target-org": {
|
|
2732
|
+
"char": "o",
|
|
2733
|
+
"name": "target-org",
|
|
2734
|
+
"noCacheDefault": true,
|
|
2735
|
+
"required": true,
|
|
2736
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
2737
|
+
"hasDynamicHelp": true,
|
|
2738
|
+
"multiple": false,
|
|
2739
|
+
"type": "option"
|
|
2740
|
+
},
|
|
2741
|
+
"api-version": {
|
|
2742
|
+
"description": "Override the api version used for api requests made by this command",
|
|
2743
|
+
"name": "api-version",
|
|
2744
|
+
"hasDynamicHelp": false,
|
|
2745
|
+
"multiple": false,
|
|
2746
|
+
"type": "option"
|
|
2747
|
+
},
|
|
2748
|
+
"api-name": {
|
|
2749
|
+
"char": "n",
|
|
2750
|
+
"name": "api-name",
|
|
2751
|
+
"summary": "API name of the authoring bundle you want to publish; if not specified, the command provides a list that you can choose from.",
|
|
2752
|
+
"hasDynamicHelp": false,
|
|
2753
|
+
"multiple": false,
|
|
2754
|
+
"type": "option"
|
|
2755
|
+
},
|
|
2756
|
+
"skip-retrieve": {
|
|
2757
|
+
"name": "skip-retrieve",
|
|
2758
|
+
"summary": "Don't retrieve the metadata associated with the agent to your DX project.",
|
|
2759
|
+
"allowNo": false,
|
|
2760
|
+
"type": "boolean"
|
|
2761
|
+
},
|
|
2762
|
+
"verbose": {
|
|
2763
|
+
"char": "v",
|
|
2764
|
+
"exclusive": [
|
|
2765
|
+
"concise"
|
|
2766
|
+
],
|
|
2767
|
+
"name": "verbose",
|
|
2768
|
+
"summary": "Display detailed output showing all metadata components retrieved and deployed during the publish process.",
|
|
2769
|
+
"allowNo": false,
|
|
2770
|
+
"type": "boolean"
|
|
2771
|
+
},
|
|
2772
|
+
"concise": {
|
|
2773
|
+
"exclusive": [
|
|
2774
|
+
"verbose"
|
|
2775
|
+
],
|
|
2776
|
+
"name": "concise",
|
|
2777
|
+
"summary": "Display minimal output with only essential information about the publish operation.",
|
|
2778
|
+
"allowNo": false,
|
|
2779
|
+
"type": "boolean"
|
|
2780
|
+
}
|
|
2781
|
+
},
|
|
2782
|
+
"hasDynamicHelp": true,
|
|
2783
|
+
"hiddenAliases": [],
|
|
2784
|
+
"id": "agent:publish:authoring-bundle",
|
|
2785
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
2786
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
2787
|
+
"pluginType": "core",
|
|
2788
|
+
"strict": true,
|
|
2789
|
+
"summary": "Publish an authoring bundle to your org, which results in a new agent or a new version of an existing agent.",
|
|
2790
|
+
"enableJsonFlag": true,
|
|
2791
|
+
"requiresProject": true,
|
|
2792
|
+
"errorCodes": {
|
|
2793
|
+
"header": "ERROR CODES",
|
|
2794
|
+
"body": [
|
|
2795
|
+
{
|
|
2796
|
+
"name": "Succeeded (0)",
|
|
2797
|
+
"description": "Agent published successfully without errors."
|
|
2007
2798
|
},
|
|
2008
2799
|
{
|
|
2009
|
-
"name": "Failed (
|
|
2010
|
-
"description": "
|
|
2800
|
+
"name": "Failed (1)",
|
|
2801
|
+
"description": "Compilation errors found in the Agent Script file."
|
|
2011
2802
|
}
|
|
2012
2803
|
]
|
|
2013
2804
|
},
|
|
2805
|
+
"FLAGGABLE_PROMPTS": {
|
|
2806
|
+
"api-name": {
|
|
2807
|
+
"message": "API name of the authoring bundle you want to publish; if not specified, the command provides a list that you can choose from.",
|
|
2808
|
+
"promptMessage": "API name of the authoring bundle to publish"
|
|
2809
|
+
}
|
|
2810
|
+
},
|
|
2014
2811
|
"isESM": true,
|
|
2015
2812
|
"relativePath": [
|
|
2016
2813
|
"lib",
|
|
2017
2814
|
"commands",
|
|
2018
2815
|
"agent",
|
|
2019
|
-
"
|
|
2020
|
-
"
|
|
2816
|
+
"publish",
|
|
2817
|
+
"authoring-bundle.js"
|
|
2021
2818
|
],
|
|
2022
2819
|
"aliasPermutations": [],
|
|
2023
2820
|
"permutations": [
|
|
2024
|
-
"agent:
|
|
2025
|
-
"
|
|
2026
|
-
"
|
|
2027
|
-
"agent:
|
|
2028
|
-
"
|
|
2029
|
-
"
|
|
2821
|
+
"agent:publish:authoring-bundle",
|
|
2822
|
+
"publish:agent:authoring-bundle",
|
|
2823
|
+
"publish:authoring-bundle:agent",
|
|
2824
|
+
"agent:authoring-bundle:publish",
|
|
2825
|
+
"authoring-bundle:agent:publish",
|
|
2826
|
+
"authoring-bundle:publish:agent"
|
|
2030
2827
|
]
|
|
2031
2828
|
},
|
|
2032
|
-
"agent:test:
|
|
2829
|
+
"agent:test:create": {
|
|
2033
2830
|
"aliases": [],
|
|
2034
2831
|
"args": {},
|
|
2035
|
-
"description": "
|
|
2832
|
+
"description": "To run this command, you must have an agent test spec file, which is a YAML file that lists the test cases for testing a specific agent. Use the \"agent generate test-spec\" CLI command to generate a test spec file. Then specify the file to this command with the --spec flag, or run this command with no flags to be prompted.\n\nWhen this command completes, your org contains the new agent test, which you can view and edit using the Testing Center UI (legacy) or Agentforce Studio (NGT). This command also retrieves the metadata component associated with the new test to your local Salesforce DX project and displays its filename. By default, the legacy AiEvaluationDefinition is created; use --test-runner agentforce-studio to author an AiTestingDefinition (NGT) instead.\n\nAfter you've created the test in the org, use the \"agent test run\" command to run it.",
|
|
2036
2833
|
"examples": [
|
|
2037
|
-
"
|
|
2038
|
-
"
|
|
2039
|
-
"
|
|
2834
|
+
"Create an agent test interactively and be prompted for the test spec and API name of the test in the org; use the default org:\n<%= config.bin %> <%= command.id %>",
|
|
2835
|
+
"Create an agent test and use flags to specify all required information; if a test with same API name already exists in the org, overwrite it without confirmation. Use the org with alias \"my-org\":\n<%= config.bin %> <%= command.id %> --spec specs/Resort_Manager-testSpec.yaml --api-name Resort_Manager_Test --force-overwrite --target-org my-org",
|
|
2836
|
+
"Preview what the agent test metadata (AiEvaluationDefinition) looks like without deploying it to your default org:\n<%= config.bin %> <%= command.id %> --spec specs/Resort_Manager-testSpec.yaml --api-name Resort_Manager_Test --preview",
|
|
2837
|
+
"Author an Agentforce Studio (NGT) test from an NGT-shaped YAML; writes an AiTestingDefinition metadata file:\n<%= config.bin %> <%= command.id %> --spec specs/ReturnsCheckout.ngt.yaml --api-name Returns_Checkout --test-runner agentforce-studio --target-org my-org"
|
|
2040
2838
|
],
|
|
2041
2839
|
"flags": {
|
|
2042
2840
|
"json": {
|
|
@@ -2054,6 +2852,20 @@
|
|
|
2054
2852
|
"multiple": false,
|
|
2055
2853
|
"type": "option"
|
|
2056
2854
|
},
|
|
2855
|
+
"api-name": {
|
|
2856
|
+
"name": "api-name",
|
|
2857
|
+
"summary": "API name of the new test; the API name must not exist in the org.",
|
|
2858
|
+
"hasDynamicHelp": false,
|
|
2859
|
+
"multiple": false,
|
|
2860
|
+
"type": "option"
|
|
2861
|
+
},
|
|
2862
|
+
"spec": {
|
|
2863
|
+
"name": "spec",
|
|
2864
|
+
"summary": "Path to the test spec YAML file.",
|
|
2865
|
+
"hasDynamicHelp": false,
|
|
2866
|
+
"multiple": false,
|
|
2867
|
+
"type": "option"
|
|
2868
|
+
},
|
|
2057
2869
|
"target-org": {
|
|
2058
2870
|
"char": "o",
|
|
2059
2871
|
"name": "target-org",
|
|
@@ -2071,52 +2883,17 @@
|
|
|
2071
2883
|
"multiple": false,
|
|
2072
2884
|
"type": "option"
|
|
2073
2885
|
},
|
|
2074
|
-
"
|
|
2075
|
-
"
|
|
2076
|
-
"
|
|
2077
|
-
"summary": "Job ID of the original agent test run.",
|
|
2078
|
-
"hasDynamicHelp": false,
|
|
2079
|
-
"multiple": false,
|
|
2080
|
-
"type": "option"
|
|
2081
|
-
},
|
|
2082
|
-
"use-most-recent": {
|
|
2083
|
-
"char": "r",
|
|
2084
|
-
"name": "use-most-recent",
|
|
2085
|
-
"summary": "Use the job ID of the most recent agent test run.",
|
|
2886
|
+
"preview": {
|
|
2887
|
+
"name": "preview",
|
|
2888
|
+
"summary": "Preview the test metadata file without deploying to your org.",
|
|
2086
2889
|
"allowNo": false,
|
|
2087
2890
|
"type": "boolean"
|
|
2088
2891
|
},
|
|
2089
|
-
"
|
|
2090
|
-
"
|
|
2091
|
-
"
|
|
2092
|
-
"
|
|
2093
|
-
"
|
|
2094
|
-
"hasDynamicHelp": true,
|
|
2095
|
-
"multiple": false,
|
|
2096
|
-
"type": "option"
|
|
2097
|
-
},
|
|
2098
|
-
"result-format": {
|
|
2099
|
-
"name": "result-format",
|
|
2100
|
-
"summary": "Format of the agent test run results.",
|
|
2101
|
-
"default": "human",
|
|
2102
|
-
"hasDynamicHelp": false,
|
|
2103
|
-
"multiple": false,
|
|
2104
|
-
"options": [
|
|
2105
|
-
"json",
|
|
2106
|
-
"human",
|
|
2107
|
-
"junit",
|
|
2108
|
-
"tap"
|
|
2109
|
-
],
|
|
2110
|
-
"type": "option"
|
|
2111
|
-
},
|
|
2112
|
-
"output-dir": {
|
|
2113
|
-
"char": "d",
|
|
2114
|
-
"description": "If the agent test run completes, write the results to the specified directory. If the test is still running, the test results aren't written.",
|
|
2115
|
-
"name": "output-dir",
|
|
2116
|
-
"summary": "Directory to write the agent test results into.",
|
|
2117
|
-
"hasDynamicHelp": false,
|
|
2118
|
-
"multiple": false,
|
|
2119
|
-
"type": "option"
|
|
2892
|
+
"force-overwrite": {
|
|
2893
|
+
"name": "force-overwrite",
|
|
2894
|
+
"summary": "Don't prompt for confirmation when overwriting an existing test (based on API name) in your org.",
|
|
2895
|
+
"allowNo": false,
|
|
2896
|
+
"type": "boolean"
|
|
2120
2897
|
},
|
|
2121
2898
|
"test-runner": {
|
|
2122
2899
|
"description": "By default, the command automatically detects which test runner to use based on the test definition metadata type in your org. Use this flag to explicitly specify the runner type. 'agentforce-studio' uses AiTestingDefinition metadata. 'testing-center' uses AiEvaluationDefinition metadata.",
|
|
@@ -2129,23 +2906,16 @@
|
|
|
2129
2906
|
"testing-center"
|
|
2130
2907
|
],
|
|
2131
2908
|
"type": "option"
|
|
2132
|
-
},
|
|
2133
|
-
"verbose": {
|
|
2134
|
-
"description": "When enabled, includes detailed generated data (such as invoked actions) in the human-readable test results output. This is useful for debugging test failures and understanding what actions were actually invoked during the test run.\n\nThe generated data is in JSON format and includes the Apex classes or Flows that were invoked, the Salesforce objects that were touched, and so on. Use the JSON structure of this information to build the test case JSONPath expression when using custom evaluations.",
|
|
2135
|
-
"name": "verbose",
|
|
2136
|
-
"summary": "Show generated data in the test results output.",
|
|
2137
|
-
"allowNo": false,
|
|
2138
|
-
"type": "boolean"
|
|
2139
2909
|
}
|
|
2140
2910
|
},
|
|
2141
2911
|
"hasDynamicHelp": true,
|
|
2142
2912
|
"hiddenAliases": [],
|
|
2143
|
-
"id": "agent:test:
|
|
2913
|
+
"id": "agent:test:create",
|
|
2144
2914
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
2145
2915
|
"pluginName": "@salesforce/plugin-agent",
|
|
2146
2916
|
"pluginType": "core",
|
|
2147
2917
|
"strict": true,
|
|
2148
|
-
"summary": "
|
|
2918
|
+
"summary": "Create an agent test in your org using a local test spec YAML file.",
|
|
2149
2919
|
"enableJsonFlag": true,
|
|
2150
2920
|
"envVariablesSection": {
|
|
2151
2921
|
"header": "ENVIRONMENT VARIABLES",
|
|
@@ -2161,19 +2931,19 @@
|
|
|
2161
2931
|
"body": [
|
|
2162
2932
|
{
|
|
2163
2933
|
"name": "Succeeded (0)",
|
|
2164
|
-
"description": "Test
|
|
2934
|
+
"description": "Test created and deployed successfully."
|
|
2165
2935
|
},
|
|
2166
2936
|
{
|
|
2167
2937
|
"name": "Failed (1)",
|
|
2168
|
-
"description": "
|
|
2938
|
+
"description": "Test validation errors or metadata format issues."
|
|
2169
2939
|
},
|
|
2170
2940
|
{
|
|
2171
2941
|
"name": "NotFound (2)",
|
|
2172
|
-
"description": "
|
|
2942
|
+
"description": "Test spec file not found or org connection failed."
|
|
2173
2943
|
},
|
|
2174
2944
|
{
|
|
2175
|
-
"name": "
|
|
2176
|
-
"description": "
|
|
2945
|
+
"name": "DeploymentFailed (4)",
|
|
2946
|
+
"description": "Deployment failed due to API or network errors."
|
|
2177
2947
|
}
|
|
2178
2948
|
]
|
|
2179
2949
|
},
|
|
@@ -2183,29 +2953,25 @@
|
|
|
2183
2953
|
"commands",
|
|
2184
2954
|
"agent",
|
|
2185
2955
|
"test",
|
|
2186
|
-
"
|
|
2956
|
+
"create.js"
|
|
2187
2957
|
],
|
|
2188
2958
|
"aliasPermutations": [],
|
|
2189
2959
|
"permutations": [
|
|
2190
|
-
"agent:test:
|
|
2191
|
-
"test:agent:
|
|
2192
|
-
"test:
|
|
2193
|
-
"agent:
|
|
2194
|
-
"
|
|
2195
|
-
"
|
|
2960
|
+
"agent:test:create",
|
|
2961
|
+
"test:agent:create",
|
|
2962
|
+
"test:create:agent",
|
|
2963
|
+
"agent:create:test",
|
|
2964
|
+
"create:agent:test",
|
|
2965
|
+
"create:test:agent"
|
|
2196
2966
|
]
|
|
2197
2967
|
},
|
|
2198
|
-
"agent:test:
|
|
2968
|
+
"agent:test:list": {
|
|
2199
2969
|
"aliases": [],
|
|
2200
2970
|
"args": {},
|
|
2201
|
-
"description": "
|
|
2971
|
+
"description": "The command outputs a table with the name (API name) of each test along with its unique ID, type ('agentforce-studio' or 'testing-center'), and the date it was created in the org.",
|
|
2202
2972
|
"examples": [
|
|
2203
|
-
"
|
|
2204
|
-
"
|
|
2205
|
-
"Run tests using a JSON payload:\n<%= config.bin %> <%= command.id %> --spec specs/eval-payload.json --target-org my-org",
|
|
2206
|
-
"Run tests and output results in JUnit format; useful for continuous integration and deployment (CI/CD):\n<%= config.bin %> <%= command.id %> --spec specs/my-agent-testSpec.yaml --target-org my-org --result-format junit",
|
|
2207
|
-
"Run tests with contextVariables to inject contextual data into agent sessions (add contextVariables to test cases in your YAML spec):\n<%= config.bin %> <%= command.id %> --spec specs/agent-with-context.yaml --target-org my-org",
|
|
2208
|
-
"Pipe JSON payload from stdin (--spec flag is automatically populated from stdin):\n$ echo '{\"tests\":[...]}' | <%= config.bin %> <%= command.id %> --spec --target-org my-org"
|
|
2973
|
+
"List the agent tests in your default org:\n<%= config.bin %> <%= command.id %>",
|
|
2974
|
+
"List the agent tests in an org with alias \"my-org\"\"\n<%= config.bin %> <%= command.id %> --target-org my-org"
|
|
2209
2975
|
],
|
|
2210
2976
|
"flags": {
|
|
2211
2977
|
"json": {
|
|
@@ -2239,62 +3005,16 @@
|
|
|
2239
3005
|
"hasDynamicHelp": false,
|
|
2240
3006
|
"multiple": false,
|
|
2241
3007
|
"type": "option"
|
|
2242
|
-
},
|
|
2243
|
-
"spec": {
|
|
2244
|
-
"char": "s",
|
|
2245
|
-
"name": "spec",
|
|
2246
|
-
"required": true,
|
|
2247
|
-
"summary": "Path to test spec file (YAML or JSON). Supports reading from stdin when piping content.",
|
|
2248
|
-
"hasDynamicHelp": false,
|
|
2249
|
-
"multiple": false,
|
|
2250
|
-
"type": "option"
|
|
2251
|
-
},
|
|
2252
|
-
"api-name": {
|
|
2253
|
-
"char": "n",
|
|
2254
|
-
"name": "api-name",
|
|
2255
|
-
"summary": "Agent API name (also called DeveloperName) used to resolve agent_id and agent_version_id. Auto-inferred from the YAML spec's subjectName.",
|
|
2256
|
-
"hasDynamicHelp": false,
|
|
2257
|
-
"multiple": false,
|
|
2258
|
-
"type": "option"
|
|
2259
|
-
},
|
|
2260
|
-
"result-format": {
|
|
2261
|
-
"name": "result-format",
|
|
2262
|
-
"summary": "Format of the agent test run results.",
|
|
2263
|
-
"default": "human",
|
|
2264
|
-
"hasDynamicHelp": false,
|
|
2265
|
-
"multiple": false,
|
|
2266
|
-
"options": [
|
|
2267
|
-
"json",
|
|
2268
|
-
"human",
|
|
2269
|
-
"junit",
|
|
2270
|
-
"tap"
|
|
2271
|
-
],
|
|
2272
|
-
"type": "option"
|
|
2273
|
-
},
|
|
2274
|
-
"batch-size": {
|
|
2275
|
-
"name": "batch-size",
|
|
2276
|
-
"summary": "Number of tests per API request (max 5).",
|
|
2277
|
-
"default": 5,
|
|
2278
|
-
"hasDynamicHelp": false,
|
|
2279
|
-
"multiple": false,
|
|
2280
|
-
"type": "option"
|
|
2281
|
-
},
|
|
2282
|
-
"no-normalize": {
|
|
2283
|
-
"name": "no-normalize",
|
|
2284
|
-
"summary": "Disable auto-normalization of field names and shorthand references.",
|
|
2285
|
-
"allowNo": false,
|
|
2286
|
-
"type": "boolean"
|
|
2287
3008
|
}
|
|
2288
3009
|
},
|
|
2289
3010
|
"hasDynamicHelp": true,
|
|
2290
3011
|
"hiddenAliases": [],
|
|
2291
|
-
"id": "agent:test:
|
|
3012
|
+
"id": "agent:test:list",
|
|
2292
3013
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
2293
3014
|
"pluginName": "@salesforce/plugin-agent",
|
|
2294
3015
|
"pluginType": "core",
|
|
2295
|
-
"state": "beta",
|
|
2296
3016
|
"strict": true,
|
|
2297
|
-
"summary": "
|
|
3017
|
+
"summary": "List the available agent tests in your org.",
|
|
2298
3018
|
"enableJsonFlag": true,
|
|
2299
3019
|
"envVariablesSection": {
|
|
2300
3020
|
"header": "ENVIRONMENT VARIABLES",
|
|
@@ -2310,19 +3030,11 @@
|
|
|
2310
3030
|
"body": [
|
|
2311
3031
|
{
|
|
2312
3032
|
"name": "Succeeded (0)",
|
|
2313
|
-
"description": "
|
|
2314
|
-
},
|
|
2315
|
-
{
|
|
2316
|
-
"name": "Failed (1)",
|
|
2317
|
-
"description": "Tests encountered execution errors (tests couldn't run properly)."
|
|
2318
|
-
},
|
|
2319
|
-
{
|
|
2320
|
-
"name": "NotFound (2)",
|
|
2321
|
-
"description": "Agent not found, spec file not found, or invalid agent name."
|
|
3033
|
+
"description": "Agent tests listed successfully."
|
|
2322
3034
|
},
|
|
2323
3035
|
{
|
|
2324
|
-
"name": "
|
|
2325
|
-
"description": "Failed to
|
|
3036
|
+
"name": "Failed (4)",
|
|
3037
|
+
"description": "Failed to retrieve agent tests due to API or network errors."
|
|
2326
3038
|
}
|
|
2327
3039
|
]
|
|
2328
3040
|
},
|
|
@@ -2332,26 +3044,26 @@
|
|
|
2332
3044
|
"commands",
|
|
2333
3045
|
"agent",
|
|
2334
3046
|
"test",
|
|
2335
|
-
"
|
|
3047
|
+
"list.js"
|
|
2336
3048
|
],
|
|
2337
3049
|
"aliasPermutations": [],
|
|
2338
3050
|
"permutations": [
|
|
2339
|
-
"agent:test:
|
|
2340
|
-
"test:agent:
|
|
2341
|
-
"test:
|
|
2342
|
-
"agent:
|
|
2343
|
-
"
|
|
2344
|
-
"
|
|
3051
|
+
"agent:test:list",
|
|
3052
|
+
"test:agent:list",
|
|
3053
|
+
"test:list:agent",
|
|
3054
|
+
"agent:list:test",
|
|
3055
|
+
"list:agent:test",
|
|
3056
|
+
"list:test:agent"
|
|
2345
3057
|
]
|
|
2346
3058
|
},
|
|
2347
|
-
"agent:test:
|
|
3059
|
+
"agent:test:results": {
|
|
2348
3060
|
"aliases": [],
|
|
2349
3061
|
"args": {},
|
|
2350
|
-
"description": "
|
|
3062
|
+
"description": "This command requires a job ID, which the original \"agent test run\" command displays when it completes. You can also use the --use-most-recent flag to see results for the most recently run agent test.\n\nBy default, this command outputs test results in human-readable tables for each test case. The tables show whether the test case passed, the expected and actual values, the test score, how long the test took, and more. Use the --result-format to display the test results in JSON or Junit format. Use the --output-dir flag to write the results to a file rather than to the terminal.",
|
|
2351
3063
|
"examples": [
|
|
2352
|
-
"
|
|
2353
|
-
"
|
|
2354
|
-
"
|
|
3064
|
+
"Get the results of an agent test run in your default org using its job ID:\n<%= config.bin %> <%= command.id %> --job-id 4KBfake0000003F4AQ",
|
|
3065
|
+
"Get the results of the most recently run agent test in an org with alias \"my-org\":\n<%= config.bin %> <%= command.id %> --use-most-recent --target-org my-org",
|
|
3066
|
+
"Get the results of the most recently run agent test in your default org, and write the JSON-formatted results into a directory called \"test-results\":\n<%= config.bin %> <%= command.id %> --use-most-recent --output-dir ./test-results --result-format json"
|
|
2355
3067
|
],
|
|
2356
3068
|
"flags": {
|
|
2357
3069
|
"json": {
|
|
@@ -2386,19 +3098,12 @@
|
|
|
2386
3098
|
"multiple": false,
|
|
2387
3099
|
"type": "option"
|
|
2388
3100
|
},
|
|
2389
|
-
"
|
|
2390
|
-
"char": "
|
|
2391
|
-
"name": "
|
|
2392
|
-
"
|
|
2393
|
-
"
|
|
2394
|
-
"
|
|
2395
|
-
"type": "option"
|
|
2396
|
-
},
|
|
2397
|
-
"wait": {
|
|
2398
|
-
"char": "w",
|
|
2399
|
-
"name": "wait",
|
|
2400
|
-
"summary": "Number of minutes to wait for the command to complete and display results to the terminal window.",
|
|
2401
|
-
"hasDynamicHelp": true,
|
|
3101
|
+
"job-id": {
|
|
3102
|
+
"char": "i",
|
|
3103
|
+
"name": "job-id",
|
|
3104
|
+
"required": true,
|
|
3105
|
+
"summary": "Job ID of the completed agent test run.",
|
|
3106
|
+
"hasDynamicHelp": false,
|
|
2402
3107
|
"multiple": false,
|
|
2403
3108
|
"type": "option"
|
|
2404
3109
|
},
|
|
@@ -2447,12 +3152,12 @@
|
|
|
2447
3152
|
},
|
|
2448
3153
|
"hasDynamicHelp": true,
|
|
2449
3154
|
"hiddenAliases": [],
|
|
2450
|
-
"id": "agent:test:
|
|
3155
|
+
"id": "agent:test:results",
|
|
2451
3156
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
2452
3157
|
"pluginName": "@salesforce/plugin-agent",
|
|
2453
3158
|
"pluginType": "core",
|
|
2454
3159
|
"strict": true,
|
|
2455
|
-
"summary": "
|
|
3160
|
+
"summary": "Get the results of a completed agent test run.",
|
|
2456
3161
|
"enableJsonFlag": true,
|
|
2457
3162
|
"envVariablesSection": {
|
|
2458
3163
|
"header": "ENVIRONMENT VARIABLES",
|
|
@@ -2468,19 +3173,15 @@
|
|
|
2468
3173
|
"body": [
|
|
2469
3174
|
{
|
|
2470
3175
|
"name": "Succeeded (0)",
|
|
2471
|
-
"description": "
|
|
2472
|
-
},
|
|
2473
|
-
{
|
|
2474
|
-
"name": "Failed (1)",
|
|
2475
|
-
"description": "Tests encountered execution errors (test cases with ERROR status when using --wait)."
|
|
3176
|
+
"description": "Results retrieved successfully. Test results (passed/failed) are in the output."
|
|
2476
3177
|
},
|
|
2477
3178
|
{
|
|
2478
3179
|
"name": "NotFound (2)",
|
|
2479
|
-
"description": "
|
|
3180
|
+
"description": "Job ID not found or invalid."
|
|
2480
3181
|
},
|
|
2481
3182
|
{
|
|
2482
|
-
"name": "
|
|
2483
|
-
"description": "Failed to
|
|
3183
|
+
"name": "Failed (4)",
|
|
3184
|
+
"description": "Failed to retrieve results due to API or network errors."
|
|
2484
3185
|
}
|
|
2485
3186
|
]
|
|
2486
3187
|
},
|
|
@@ -2490,25 +3191,26 @@
|
|
|
2490
3191
|
"commands",
|
|
2491
3192
|
"agent",
|
|
2492
3193
|
"test",
|
|
2493
|
-
"
|
|
3194
|
+
"results.js"
|
|
2494
3195
|
],
|
|
2495
3196
|
"aliasPermutations": [],
|
|
2496
3197
|
"permutations": [
|
|
2497
|
-
"agent:test:
|
|
2498
|
-
"test:agent:
|
|
2499
|
-
"test:
|
|
2500
|
-
"agent:
|
|
2501
|
-
"
|
|
2502
|
-
"
|
|
3198
|
+
"agent:test:results",
|
|
3199
|
+
"test:agent:results",
|
|
3200
|
+
"test:results:agent",
|
|
3201
|
+
"agent:results:test",
|
|
3202
|
+
"results:agent:test",
|
|
3203
|
+
"results:test:agent"
|
|
2503
3204
|
]
|
|
2504
3205
|
},
|
|
2505
|
-
"agent:
|
|
3206
|
+
"agent:test:resume": {
|
|
2506
3207
|
"aliases": [],
|
|
2507
3208
|
"args": {},
|
|
2508
|
-
"description": "
|
|
3209
|
+
"description": "This command requires a job ID, which the original \"agent test run\" command displays when it completes. You can also use the --use-most-recent flag to see results for the most recently run agent test.\n\nUse the --wait flag to specify the number of minutes for this command to wait for the agent test to complete; if the test completes by the end of the wait time, the command displays the test results. If not, the CLI returns control of the terminal to you, and you must run \"agent test resume\" again.\n\nBy default, this command outputs test results in human-readable tables for each test case. The tables show whether the test case passed, the expected and actual values, the test score, how long the test took, and more. Use the --result-format to display the test results in JSON or Junit format. Use the --output-dir flag to write the results to a file rather than to the terminal.",
|
|
2509
3210
|
"examples": [
|
|
2510
|
-
"
|
|
2511
|
-
"
|
|
3211
|
+
"Resume an agent test in your default org using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 4KBfake0000003F4AQ",
|
|
3212
|
+
"Resume the most recently-run agent test in an org with alias \"my-org\" org; wait 10 minutes for the tests to finish:\n<%= config.bin %> <%= command.id %> --use-most-recent --wait 10 --target-org my-org",
|
|
3213
|
+
"Resume the most recent agent test in your default org, and write the JSON-formatted results into a directory called \"test-results\":\n<%= config.bin %> <%= command.id %> --use-most-recent --output-dir ./test-results --result-format json"
|
|
2512
3214
|
],
|
|
2513
3215
|
"flags": {
|
|
2514
3216
|
"json": {
|
|
@@ -2543,25 +3245,82 @@
|
|
|
2543
3245
|
"multiple": false,
|
|
2544
3246
|
"type": "option"
|
|
2545
3247
|
},
|
|
2546
|
-
"
|
|
2547
|
-
"char": "
|
|
2548
|
-
"name": "
|
|
2549
|
-
"summary": "
|
|
3248
|
+
"job-id": {
|
|
3249
|
+
"char": "i",
|
|
3250
|
+
"name": "job-id",
|
|
3251
|
+
"summary": "Job ID of the original agent test run.",
|
|
3252
|
+
"hasDynamicHelp": false,
|
|
3253
|
+
"multiple": false,
|
|
3254
|
+
"type": "option"
|
|
3255
|
+
},
|
|
3256
|
+
"use-most-recent": {
|
|
3257
|
+
"char": "r",
|
|
3258
|
+
"name": "use-most-recent",
|
|
3259
|
+
"summary": "Use the job ID of the most recent agent test run.",
|
|
3260
|
+
"allowNo": false,
|
|
3261
|
+
"type": "boolean"
|
|
3262
|
+
},
|
|
3263
|
+
"wait": {
|
|
3264
|
+
"char": "w",
|
|
3265
|
+
"name": "wait",
|
|
3266
|
+
"summary": "Number of minutes to wait for the command to complete and display results to the terminal window.",
|
|
3267
|
+
"default": "5 minutes",
|
|
3268
|
+
"hasDynamicHelp": true,
|
|
3269
|
+
"multiple": false,
|
|
3270
|
+
"type": "option"
|
|
3271
|
+
},
|
|
3272
|
+
"result-format": {
|
|
3273
|
+
"name": "result-format",
|
|
3274
|
+
"summary": "Format of the agent test run results.",
|
|
3275
|
+
"default": "human",
|
|
3276
|
+
"hasDynamicHelp": false,
|
|
3277
|
+
"multiple": false,
|
|
3278
|
+
"options": [
|
|
3279
|
+
"json",
|
|
3280
|
+
"human",
|
|
3281
|
+
"junit",
|
|
3282
|
+
"tap"
|
|
3283
|
+
],
|
|
3284
|
+
"type": "option"
|
|
3285
|
+
},
|
|
3286
|
+
"output-dir": {
|
|
3287
|
+
"char": "d",
|
|
3288
|
+
"description": "If the agent test run completes, write the results to the specified directory. If the test is still running, the test results aren't written.",
|
|
3289
|
+
"name": "output-dir",
|
|
3290
|
+
"summary": "Directory to write the agent test results into.",
|
|
3291
|
+
"hasDynamicHelp": false,
|
|
3292
|
+
"multiple": false,
|
|
3293
|
+
"type": "option"
|
|
3294
|
+
},
|
|
3295
|
+
"test-runner": {
|
|
3296
|
+
"description": "By default, the command automatically detects which test runner to use based on the test definition metadata type in your org. Use this flag to explicitly specify the runner type. 'agentforce-studio' uses AiTestingDefinition metadata. 'testing-center' uses AiEvaluationDefinition metadata.",
|
|
3297
|
+
"name": "test-runner",
|
|
3298
|
+
"summary": "Explicitly specify which test runner to use (agentforce-studio or testing-center).",
|
|
2550
3299
|
"hasDynamicHelp": false,
|
|
2551
3300
|
"multiple": false,
|
|
3301
|
+
"options": [
|
|
3302
|
+
"agentforce-studio",
|
|
3303
|
+
"testing-center"
|
|
3304
|
+
],
|
|
2552
3305
|
"type": "option"
|
|
3306
|
+
},
|
|
3307
|
+
"verbose": {
|
|
3308
|
+
"description": "When enabled, includes detailed generated data (such as invoked actions) in the human-readable test results output. This is useful for debugging test failures and understanding what actions were actually invoked during the test run.\n\nThe generated data is in JSON format and includes the Apex classes or Flows that were invoked, the Salesforce objects that were touched, and so on. Use the JSON structure of this information to build the test case JSONPath expression when using custom evaluations.",
|
|
3309
|
+
"name": "verbose",
|
|
3310
|
+
"summary": "Show generated data in the test results output.",
|
|
3311
|
+
"allowNo": false,
|
|
3312
|
+
"type": "boolean"
|
|
2553
3313
|
}
|
|
2554
3314
|
},
|
|
2555
3315
|
"hasDynamicHelp": true,
|
|
2556
3316
|
"hiddenAliases": [],
|
|
2557
|
-
"id": "agent:
|
|
3317
|
+
"id": "agent:test:resume",
|
|
2558
3318
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
2559
3319
|
"pluginName": "@salesforce/plugin-agent",
|
|
2560
3320
|
"pluginType": "core",
|
|
2561
3321
|
"strict": true,
|
|
2562
|
-
"summary": "
|
|
3322
|
+
"summary": "Resume an agent test that you previously started in your org so you can view the test results.",
|
|
2563
3323
|
"enableJsonFlag": true,
|
|
2564
|
-
"requiresProject": true,
|
|
2565
3324
|
"envVariablesSection": {
|
|
2566
3325
|
"header": "ENVIRONMENT VARIABLES",
|
|
2567
3326
|
"body": [
|
|
@@ -2576,57 +3335,51 @@
|
|
|
2576
3335
|
"body": [
|
|
2577
3336
|
{
|
|
2578
3337
|
"name": "Succeeded (0)",
|
|
2579
|
-
"description": "
|
|
3338
|
+
"description": "Test completed successfully (with test results in the output)."
|
|
2580
3339
|
},
|
|
2581
3340
|
{
|
|
2582
3341
|
"name": "Failed (1)",
|
|
2583
|
-
"description": "
|
|
3342
|
+
"description": "Tests encountered execution errors (test cases with ERROR status)."
|
|
2584
3343
|
},
|
|
2585
3344
|
{
|
|
2586
3345
|
"name": "NotFound (2)",
|
|
2587
|
-
"description": "
|
|
3346
|
+
"description": "Job ID not found or invalid."
|
|
2588
3347
|
},
|
|
2589
3348
|
{
|
|
2590
|
-
"name": "
|
|
2591
|
-
"description": "
|
|
3349
|
+
"name": "OperationFailed (4)",
|
|
3350
|
+
"description": "Failed to poll test due to API or network errors."
|
|
2592
3351
|
}
|
|
2593
3352
|
]
|
|
2594
3353
|
},
|
|
2595
|
-
"FLAGGABLE_PROMPTS": {
|
|
2596
|
-
"api-name": {
|
|
2597
|
-
"message": "API name of the authoring bundle you want to validate; if not specified, the command provides a list that you can choose from.",
|
|
2598
|
-
"promptMessage": "API name of the authoring bundle to validate"
|
|
2599
|
-
}
|
|
2600
|
-
},
|
|
2601
3354
|
"isESM": true,
|
|
2602
3355
|
"relativePath": [
|
|
2603
3356
|
"lib",
|
|
2604
3357
|
"commands",
|
|
2605
3358
|
"agent",
|
|
2606
|
-
"
|
|
2607
|
-
"
|
|
3359
|
+
"test",
|
|
3360
|
+
"resume.js"
|
|
2608
3361
|
],
|
|
2609
3362
|
"aliasPermutations": [],
|
|
2610
3363
|
"permutations": [
|
|
2611
|
-
"agent:
|
|
2612
|
-
"
|
|
2613
|
-
"
|
|
2614
|
-
"agent:
|
|
2615
|
-
"
|
|
2616
|
-
"
|
|
3364
|
+
"agent:test:resume",
|
|
3365
|
+
"test:agent:resume",
|
|
3366
|
+
"test:resume:agent",
|
|
3367
|
+
"agent:resume:test",
|
|
3368
|
+
"resume:agent:test",
|
|
3369
|
+
"resume:test:agent"
|
|
2617
3370
|
]
|
|
2618
3371
|
},
|
|
2619
|
-
"agent:
|
|
3372
|
+
"agent:test:run-eval": {
|
|
2620
3373
|
"aliases": [],
|
|
2621
3374
|
"args": {},
|
|
2622
|
-
"description": "
|
|
3375
|
+
"description": "Specify the tests you want to run with one of these inputs to the --spec flag:\n\n- YAML test spec generated by the `agent generate test-spec` CLI command\n- JSON payload\n\nWhen you provide a YAML test spec, this command automatically translates test cases into internal state-based evaluation framework calls and infers the agent name from the test spec's `subjectName` field. As a result, you can use the same test spec with both the `agent test run` and `agent test run-eval` commands. YAML test specs also support context variables, which allow you to inject contextual data (such as CaseId or RoutableId) into agent sessions for testing with different contexts.\n\nWhen you provide a JSON payload, it's sent directly to the evaluation framework with optional normalization. The normalizer auto-corrects common field name mistakes, converts shorthand references to JSONPath, and injects defaults. Use `--no-normalize` to disable this auto-normalization. JSON payloads can also include context_variables on agent.create_session steps for the same contextual testing capabilities as when you use a YAML test spec.\n\nThis command supports more than 8 evaluator types, including subagent routing assertions, action invocation checks, string/numeric assertions, semantic similarity scoring, and LLM-based quality ratings.",
|
|
2623
3376
|
"examples": [
|
|
2624
|
-
"
|
|
2625
|
-
"
|
|
2626
|
-
"
|
|
2627
|
-
"
|
|
2628
|
-
"
|
|
2629
|
-
"
|
|
3377
|
+
"Run tests using a YAML test spec on the org with alias \"my-org\":\n<%= config.bin %> <%= command.id %> --spec specs/my-agent-testSpec.yaml --target-org my-org",
|
|
3378
|
+
"Run tests using a YAML spec with explicit agent name override; use your default org:\n<%= config.bin %> <%= command.id %> --spec specs/my-agent-testSpec.yaml --api-name My_Agent",
|
|
3379
|
+
"Run tests using a JSON payload:\n<%= config.bin %> <%= command.id %> --spec specs/eval-payload.json --target-org my-org",
|
|
3380
|
+
"Run tests and output results in JUnit format; useful for continuous integration and deployment (CI/CD):\n<%= config.bin %> <%= command.id %> --spec specs/my-agent-testSpec.yaml --target-org my-org --result-format junit",
|
|
3381
|
+
"Run tests with contextVariables to inject contextual data into agent sessions (add contextVariables to test cases in your YAML spec):\n<%= config.bin %> <%= command.id %> --spec specs/agent-with-context.yaml --target-org my-org",
|
|
3382
|
+
"Pipe JSON payload from stdin (--spec flag is automatically populated from stdin):\n$ echo '{\"tests\":[...]}' | <%= config.bin %> <%= command.id %> --spec --target-org my-org"
|
|
2630
3383
|
],
|
|
2631
3384
|
"flags": {
|
|
2632
3385
|
"json": {
|
|
@@ -2644,141 +3397,106 @@
|
|
|
2644
3397
|
"multiple": false,
|
|
2645
3398
|
"type": "option"
|
|
2646
3399
|
},
|
|
2647
|
-
"
|
|
2648
|
-
"char": "
|
|
2649
|
-
"name": "
|
|
2650
|
-
"
|
|
2651
|
-
"
|
|
2652
|
-
"
|
|
2653
|
-
"
|
|
2654
|
-
},
|
|
2655
|
-
"session-id": {
|
|
2656
|
-
"name": "session-id",
|
|
2657
|
-
"summary": "Session ID used to filter the list of trace files you want to delete. Use the \"agent preview sessions\" CLI command to list all known agent preview sessions along with their session IDs.",
|
|
2658
|
-
"hasDynamicHelp": false,
|
|
3400
|
+
"target-org": {
|
|
3401
|
+
"char": "o",
|
|
3402
|
+
"name": "target-org",
|
|
3403
|
+
"noCacheDefault": true,
|
|
3404
|
+
"required": true,
|
|
3405
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
3406
|
+
"hasDynamicHelp": true,
|
|
2659
3407
|
"multiple": false,
|
|
2660
3408
|
"type": "option"
|
|
2661
3409
|
},
|
|
2662
|
-
"
|
|
2663
|
-
"
|
|
2664
|
-
"
|
|
3410
|
+
"api-version": {
|
|
3411
|
+
"description": "Override the api version used for api requests made by this command",
|
|
3412
|
+
"name": "api-version",
|
|
2665
3413
|
"hasDynamicHelp": false,
|
|
2666
3414
|
"multiple": false,
|
|
2667
3415
|
"type": "option"
|
|
2668
3416
|
},
|
|
2669
|
-
"
|
|
2670
|
-
"
|
|
2671
|
-
"
|
|
2672
|
-
"
|
|
2673
|
-
"
|
|
2674
|
-
}
|
|
2675
|
-
},
|
|
2676
|
-
"hasDynamicHelp": false,
|
|
2677
|
-
"hiddenAliases": [],
|
|
2678
|
-
"id": "agent:trace:delete",
|
|
2679
|
-
"pluginAlias": "@salesforce/plugin-agent",
|
|
2680
|
-
"pluginName": "@salesforce/plugin-agent",
|
|
2681
|
-
"pluginType": "core",
|
|
2682
|
-
"strict": true,
|
|
2683
|
-
"summary": "Delete trace files from an agent preview session.",
|
|
2684
|
-
"enableJsonFlag": true,
|
|
2685
|
-
"requiresProject": true,
|
|
2686
|
-
"errorCodes": {
|
|
2687
|
-
"header": "ERROR CODES",
|
|
2688
|
-
"body": [
|
|
2689
|
-
{
|
|
2690
|
-
"name": "Succeeded (0)",
|
|
2691
|
-
"description": "Traces deleted successfully (or no traces matched)."
|
|
2692
|
-
}
|
|
2693
|
-
]
|
|
2694
|
-
},
|
|
2695
|
-
"isESM": true,
|
|
2696
|
-
"relativePath": [
|
|
2697
|
-
"lib",
|
|
2698
|
-
"commands",
|
|
2699
|
-
"agent",
|
|
2700
|
-
"trace",
|
|
2701
|
-
"delete.js"
|
|
2702
|
-
],
|
|
2703
|
-
"aliasPermutations": [],
|
|
2704
|
-
"permutations": [
|
|
2705
|
-
"agent:trace:delete",
|
|
2706
|
-
"trace:agent:delete",
|
|
2707
|
-
"trace:delete:agent",
|
|
2708
|
-
"agent:delete:trace",
|
|
2709
|
-
"delete:agent:trace",
|
|
2710
|
-
"delete:trace:agent"
|
|
2711
|
-
]
|
|
2712
|
-
},
|
|
2713
|
-
"agent:trace:list": {
|
|
2714
|
-
"aliases": [],
|
|
2715
|
-
"args": {},
|
|
2716
|
-
"description": "When you run an agent preview conversation (either interactive or programmatic), trace files are automatically recorded and saved in your local DX project. By default, this command lists all trace files for all agents and all of their sessions. Use flags to narrow results: filter by agent name (--agent), by session (--session-id), or by date (--since).\n\nEach row in the output corresponds to one trace file, which in turn corresponds to one agent session. The Agent column shows the authoring bundle or API name used when starting the session.",
|
|
2717
|
-
"examples": [
|
|
2718
|
-
"List all trace files for all agents and sessions:\n<%= config.bin %> <%= command.id %>",
|
|
2719
|
-
"List all trace files for a specific agent:\n<%= config.bin %> <%= command.id %> --agent My_Agent",
|
|
2720
|
-
"List trace files for a specific session:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID>",
|
|
2721
|
-
"List trace files recorded on or after April 20, 2026 (date-only, interpreted as UTC midnight):\n<%= config.bin %> <%= command.id %> --since 2026-04-20",
|
|
2722
|
-
"List trace files recorded on or after a specific UTC time:\n<%= config.bin %> <%= command.id %> --since 2026-04-20T14:00:00Z",
|
|
2723
|
-
"Filter by agent and date together:\n<%= config.bin %> <%= command.id %> --agent My_Agent --since 2026-04-20",
|
|
2724
|
-
"Return results as JSON:\n<%= config.bin %> <%= command.id %> --json"
|
|
2725
|
-
],
|
|
2726
|
-
"flags": {
|
|
2727
|
-
"json": {
|
|
2728
|
-
"description": "Format output as json.",
|
|
2729
|
-
"helpGroup": "GLOBAL",
|
|
2730
|
-
"name": "json",
|
|
2731
|
-
"allowNo": false,
|
|
2732
|
-
"type": "boolean"
|
|
2733
|
-
},
|
|
2734
|
-
"flags-dir": {
|
|
2735
|
-
"helpGroup": "GLOBAL",
|
|
2736
|
-
"name": "flags-dir",
|
|
2737
|
-
"summary": "Import flag values from a directory.",
|
|
3417
|
+
"spec": {
|
|
3418
|
+
"char": "s",
|
|
3419
|
+
"name": "spec",
|
|
3420
|
+
"required": true,
|
|
3421
|
+
"summary": "Path to test spec file (YAML or JSON). Supports reading from stdin when piping content.",
|
|
2738
3422
|
"hasDynamicHelp": false,
|
|
2739
3423
|
"multiple": false,
|
|
2740
3424
|
"type": "option"
|
|
2741
3425
|
},
|
|
2742
|
-
"
|
|
2743
|
-
"
|
|
2744
|
-
"
|
|
3426
|
+
"api-name": {
|
|
3427
|
+
"char": "n",
|
|
3428
|
+
"name": "api-name",
|
|
3429
|
+
"summary": "Agent API name (also called DeveloperName) used to resolve agent_id and agent_version_id. Auto-inferred from the YAML spec's subjectName.",
|
|
2745
3430
|
"hasDynamicHelp": false,
|
|
2746
3431
|
"multiple": false,
|
|
2747
3432
|
"type": "option"
|
|
2748
3433
|
},
|
|
2749
|
-
"
|
|
2750
|
-
"
|
|
2751
|
-
"
|
|
2752
|
-
"
|
|
3434
|
+
"result-format": {
|
|
3435
|
+
"name": "result-format",
|
|
3436
|
+
"summary": "Format of the agent test run results.",
|
|
3437
|
+
"default": "human",
|
|
2753
3438
|
"hasDynamicHelp": false,
|
|
2754
3439
|
"multiple": false,
|
|
3440
|
+
"options": [
|
|
3441
|
+
"json",
|
|
3442
|
+
"human",
|
|
3443
|
+
"junit",
|
|
3444
|
+
"tap"
|
|
3445
|
+
],
|
|
2755
3446
|
"type": "option"
|
|
2756
3447
|
},
|
|
2757
|
-
"
|
|
2758
|
-
"
|
|
2759
|
-
"
|
|
2760
|
-
"
|
|
3448
|
+
"batch-size": {
|
|
3449
|
+
"name": "batch-size",
|
|
3450
|
+
"summary": "Number of tests per API request (max 5).",
|
|
3451
|
+
"default": 5,
|
|
2761
3452
|
"hasDynamicHelp": false,
|
|
2762
3453
|
"multiple": false,
|
|
2763
3454
|
"type": "option"
|
|
3455
|
+
},
|
|
3456
|
+
"no-normalize": {
|
|
3457
|
+
"name": "no-normalize",
|
|
3458
|
+
"summary": "Disable auto-normalization of field names and shorthand references.",
|
|
3459
|
+
"allowNo": false,
|
|
3460
|
+
"type": "boolean"
|
|
2764
3461
|
}
|
|
2765
3462
|
},
|
|
2766
|
-
"hasDynamicHelp":
|
|
3463
|
+
"hasDynamicHelp": true,
|
|
2767
3464
|
"hiddenAliases": [],
|
|
2768
|
-
"id": "agent:
|
|
3465
|
+
"id": "agent:test:run-eval",
|
|
2769
3466
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
2770
3467
|
"pluginName": "@salesforce/plugin-agent",
|
|
2771
3468
|
"pluginType": "core",
|
|
3469
|
+
"state": "beta",
|
|
2772
3470
|
"strict": true,
|
|
2773
|
-
"summary": "
|
|
3471
|
+
"summary": "Run rich evaluation tests against an Agentforce agent.",
|
|
2774
3472
|
"enableJsonFlag": true,
|
|
2775
|
-
"
|
|
3473
|
+
"envVariablesSection": {
|
|
3474
|
+
"header": "ENVIRONMENT VARIABLES",
|
|
3475
|
+
"body": [
|
|
3476
|
+
{
|
|
3477
|
+
"name": "SF_TARGET_ORG",
|
|
3478
|
+
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
3479
|
+
}
|
|
3480
|
+
]
|
|
3481
|
+
},
|
|
2776
3482
|
"errorCodes": {
|
|
2777
3483
|
"header": "ERROR CODES",
|
|
2778
3484
|
"body": [
|
|
2779
3485
|
{
|
|
2780
3486
|
"name": "Succeeded (0)",
|
|
2781
|
-
"description": "
|
|
3487
|
+
"description": "Tests completed successfully. Test results (passed/failed) are in the JSON output."
|
|
3488
|
+
},
|
|
3489
|
+
{
|
|
3490
|
+
"name": "Failed (1)",
|
|
3491
|
+
"description": "Tests encountered execution errors (tests couldn't run properly)."
|
|
3492
|
+
},
|
|
3493
|
+
{
|
|
3494
|
+
"name": "NotFound (2)",
|
|
3495
|
+
"description": "Agent not found, spec file not found, or invalid agent name."
|
|
3496
|
+
},
|
|
3497
|
+
{
|
|
3498
|
+
"name": "OperationFailed (4)",
|
|
3499
|
+
"description": "Failed to execute tests due to API or network errors."
|
|
2782
3500
|
}
|
|
2783
3501
|
]
|
|
2784
3502
|
},
|
|
@@ -2787,31 +3505,27 @@
|
|
|
2787
3505
|
"lib",
|
|
2788
3506
|
"commands",
|
|
2789
3507
|
"agent",
|
|
2790
|
-
"
|
|
2791
|
-
"
|
|
3508
|
+
"test",
|
|
3509
|
+
"run-eval.js"
|
|
2792
3510
|
],
|
|
2793
3511
|
"aliasPermutations": [],
|
|
2794
3512
|
"permutations": [
|
|
2795
|
-
"agent:
|
|
2796
|
-
"
|
|
2797
|
-
"
|
|
2798
|
-
"agent:
|
|
2799
|
-
"
|
|
2800
|
-
"
|
|
3513
|
+
"agent:test:run-eval",
|
|
3514
|
+
"test:agent:run-eval",
|
|
3515
|
+
"test:run-eval:agent",
|
|
3516
|
+
"agent:run-eval:test",
|
|
3517
|
+
"run-eval:agent:test",
|
|
3518
|
+
"run-eval:test:agent"
|
|
2801
3519
|
]
|
|
2802
3520
|
},
|
|
2803
|
-
"agent:
|
|
3521
|
+
"agent:test:run": {
|
|
2804
3522
|
"aliases": [],
|
|
2805
3523
|
"args": {},
|
|
2806
|
-
"description": "
|
|
3524
|
+
"description": "Use the --api-name flag to specify the name of the agent test you want to run. Use the output of the \"agent test list\" command to get the names of all the available agent tests in your org.\n\nBy default, this command starts the agent test in your org, but it doesn't wait for the test to finish. Instead, it displays the \"agent test resume\" command, with a job ID, that you execute to see the results of the test run, and then returns control of the terminal window to you. Use the --wait flag to specify the number of minutes for the command to wait for the agent test to complete; if the test completes by the end of the wait time, the command displays the test results. If not, run \"agent test resume\".\n\nBy default, this command outputs test results in human-readable tables for each test case, if the test completes in time. The tables show whether the test case passed, the expected and actual values, the test score, how long the test took, and more. Use the --result-format to display the test results in JSON or Junit format. Use the --output-dir flag to write the results to a file rather than to the terminal.",
|
|
2807
3525
|
"examples": [
|
|
2808
|
-
"
|
|
2809
|
-
"
|
|
2810
|
-
"
|
|
2811
|
-
"Drill into routing decisions for the first turn of the conversation:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension routing --turn 1",
|
|
2812
|
-
"Show all errors across the session:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension errors",
|
|
2813
|
-
"Output raw trace JSON for custom parsing:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format raw",
|
|
2814
|
-
"Return results as JSON:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --json"
|
|
3526
|
+
"Start an agent test called Resort_Manager_Test for an agent in your default org, don't wait for the test to finish:\n<%= config.bin %> <%= command.id %> --api-name Resort_Manager_Test",
|
|
3527
|
+
"Start an agent test for an agent in an org with alias \"my-org\" and wait for 10 minutes for the test to finish:\n<%= config.bin %> <%= command.id %> --api-name Resort_Manager_Test --wait 10 --target-org my-org",
|
|
3528
|
+
"Start an agent test and write the JSON-formatted results into a directory called \"test-results\":\n<%= config.bin %> <%= command.id %> --api-name Resort_Manager_Test --wait 10 --output-dir ./test-results --result-format json"
|
|
2815
3529
|
],
|
|
2816
3530
|
"flags": {
|
|
2817
3531
|
"json": {
|
|
@@ -2829,90 +3543,150 @@
|
|
|
2829
3543
|
"multiple": false,
|
|
2830
3544
|
"type": "option"
|
|
2831
3545
|
},
|
|
2832
|
-
"
|
|
2833
|
-
"char": "
|
|
2834
|
-
"name": "
|
|
3546
|
+
"target-org": {
|
|
3547
|
+
"char": "o",
|
|
3548
|
+
"name": "target-org",
|
|
3549
|
+
"noCacheDefault": true,
|
|
2835
3550
|
"required": true,
|
|
2836
|
-
"summary": "
|
|
3551
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
3552
|
+
"hasDynamicHelp": true,
|
|
3553
|
+
"multiple": false,
|
|
3554
|
+
"type": "option"
|
|
3555
|
+
},
|
|
3556
|
+
"api-version": {
|
|
3557
|
+
"description": "Override the api version used for api requests made by this command",
|
|
3558
|
+
"name": "api-version",
|
|
2837
3559
|
"hasDynamicHelp": false,
|
|
2838
3560
|
"multiple": false,
|
|
2839
3561
|
"type": "option"
|
|
2840
3562
|
},
|
|
2841
|
-
"
|
|
2842
|
-
"char": "
|
|
2843
|
-
"name": "
|
|
2844
|
-
"summary": "
|
|
2845
|
-
"
|
|
3563
|
+
"api-name": {
|
|
3564
|
+
"char": "n",
|
|
3565
|
+
"name": "api-name",
|
|
3566
|
+
"summary": "API name of the agent test to run; corresponds to the name of the AiEvaluationDefinition metadata component that implements the agent test.",
|
|
3567
|
+
"hasDynamicHelp": false,
|
|
3568
|
+
"multiple": false,
|
|
3569
|
+
"type": "option"
|
|
3570
|
+
},
|
|
3571
|
+
"wait": {
|
|
3572
|
+
"char": "w",
|
|
3573
|
+
"name": "wait",
|
|
3574
|
+
"summary": "Number of minutes to wait for the command to complete and display results to the terminal window.",
|
|
3575
|
+
"hasDynamicHelp": true,
|
|
3576
|
+
"multiple": false,
|
|
3577
|
+
"type": "option"
|
|
3578
|
+
},
|
|
3579
|
+
"result-format": {
|
|
3580
|
+
"name": "result-format",
|
|
3581
|
+
"summary": "Format of the agent test run results.",
|
|
3582
|
+
"default": "human",
|
|
2846
3583
|
"hasDynamicHelp": false,
|
|
2847
3584
|
"multiple": false,
|
|
2848
3585
|
"options": [
|
|
2849
|
-
"
|
|
2850
|
-
"
|
|
2851
|
-
"
|
|
3586
|
+
"json",
|
|
3587
|
+
"human",
|
|
3588
|
+
"junit",
|
|
3589
|
+
"tap"
|
|
2852
3590
|
],
|
|
2853
3591
|
"type": "option"
|
|
2854
3592
|
},
|
|
2855
|
-
"
|
|
3593
|
+
"output-dir": {
|
|
2856
3594
|
"char": "d",
|
|
2857
|
-
"
|
|
2858
|
-
"
|
|
3595
|
+
"description": "If the agent test run completes, write the results to the specified directory. If the test is still running, the test results aren't written.",
|
|
3596
|
+
"name": "output-dir",
|
|
3597
|
+
"summary": "Directory to write the agent test results into.",
|
|
2859
3598
|
"hasDynamicHelp": false,
|
|
2860
3599
|
"multiple": false,
|
|
2861
|
-
"options": [
|
|
2862
|
-
"actions",
|
|
2863
|
-
"grounding",
|
|
2864
|
-
"routing",
|
|
2865
|
-
"errors"
|
|
2866
|
-
],
|
|
2867
3600
|
"type": "option"
|
|
2868
3601
|
},
|
|
2869
|
-
"
|
|
2870
|
-
"
|
|
2871
|
-
"name": "
|
|
2872
|
-
"summary": "
|
|
3602
|
+
"test-runner": {
|
|
3603
|
+
"description": "By default, the command automatically detects which test runner to use based on the test definition metadata type in your org. Use this flag to explicitly specify the runner type. 'agentforce-studio' uses AiTestingDefinition metadata. 'testing-center' uses AiEvaluationDefinition metadata.",
|
|
3604
|
+
"name": "test-runner",
|
|
3605
|
+
"summary": "Explicitly specify which test runner to use (agentforce-studio or testing-center).",
|
|
2873
3606
|
"hasDynamicHelp": false,
|
|
2874
3607
|
"multiple": false,
|
|
3608
|
+
"options": [
|
|
3609
|
+
"agentforce-studio",
|
|
3610
|
+
"testing-center"
|
|
3611
|
+
],
|
|
2875
3612
|
"type": "option"
|
|
3613
|
+
},
|
|
3614
|
+
"verbose": {
|
|
3615
|
+
"description": "When enabled, includes detailed generated data (such as invoked actions) in the human-readable test results output. This is useful for debugging test failures and understanding what actions were actually invoked during the test run.\n\nThe generated data is in JSON format and includes the Apex classes or Flows that were invoked, the Salesforce objects that were touched, and so on. Use the JSON structure of this information to build the test case JSONPath expression when using custom evaluations.",
|
|
3616
|
+
"name": "verbose",
|
|
3617
|
+
"summary": "Show generated data in the test results output.",
|
|
3618
|
+
"allowNo": false,
|
|
3619
|
+
"type": "boolean"
|
|
2876
3620
|
}
|
|
2877
3621
|
},
|
|
2878
|
-
"hasDynamicHelp":
|
|
3622
|
+
"hasDynamicHelp": true,
|
|
2879
3623
|
"hiddenAliases": [],
|
|
2880
|
-
"id": "agent:
|
|
3624
|
+
"id": "agent:test:run",
|
|
2881
3625
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
2882
3626
|
"pluginName": "@salesforce/plugin-agent",
|
|
2883
3627
|
"pluginType": "core",
|
|
2884
3628
|
"strict": true,
|
|
2885
|
-
"summary": "
|
|
3629
|
+
"summary": "Start an agent test in your org.",
|
|
2886
3630
|
"enableJsonFlag": true,
|
|
2887
|
-
"
|
|
3631
|
+
"envVariablesSection": {
|
|
3632
|
+
"header": "ENVIRONMENT VARIABLES",
|
|
3633
|
+
"body": [
|
|
3634
|
+
{
|
|
3635
|
+
"name": "SF_TARGET_ORG",
|
|
3636
|
+
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
3637
|
+
}
|
|
3638
|
+
]
|
|
3639
|
+
},
|
|
3640
|
+
"errorCodes": {
|
|
3641
|
+
"header": "ERROR CODES",
|
|
3642
|
+
"body": [
|
|
3643
|
+
{
|
|
3644
|
+
"name": "Succeeded (0)",
|
|
3645
|
+
"description": "Test started successfully (without --wait), or test completed successfully (with --wait)."
|
|
3646
|
+
},
|
|
3647
|
+
{
|
|
3648
|
+
"name": "Failed (1)",
|
|
3649
|
+
"description": "Tests encountered execution errors (test cases with ERROR status when using --wait)."
|
|
3650
|
+
},
|
|
3651
|
+
{
|
|
3652
|
+
"name": "NotFound (2)",
|
|
3653
|
+
"description": "Test definition not found or invalid test name."
|
|
3654
|
+
},
|
|
3655
|
+
{
|
|
3656
|
+
"name": "OperationFailed (4)",
|
|
3657
|
+
"description": "Failed to start or poll test due to API or network errors."
|
|
3658
|
+
}
|
|
3659
|
+
]
|
|
3660
|
+
},
|
|
2888
3661
|
"isESM": true,
|
|
2889
3662
|
"relativePath": [
|
|
2890
3663
|
"lib",
|
|
2891
3664
|
"commands",
|
|
2892
3665
|
"agent",
|
|
2893
|
-
"
|
|
2894
|
-
"
|
|
3666
|
+
"test",
|
|
3667
|
+
"run.js"
|
|
2895
3668
|
],
|
|
2896
3669
|
"aliasPermutations": [],
|
|
2897
3670
|
"permutations": [
|
|
2898
|
-
"agent:
|
|
2899
|
-
"
|
|
2900
|
-
"
|
|
2901
|
-
"agent:
|
|
2902
|
-
"
|
|
2903
|
-
"
|
|
3671
|
+
"agent:test:run",
|
|
3672
|
+
"test:agent:run",
|
|
3673
|
+
"test:run:agent",
|
|
3674
|
+
"agent:run:test",
|
|
3675
|
+
"run:agent:test",
|
|
3676
|
+
"run:test:agent"
|
|
2904
3677
|
]
|
|
2905
3678
|
},
|
|
2906
|
-
"agent:
|
|
3679
|
+
"agent:trace:delete": {
|
|
2907
3680
|
"aliases": [],
|
|
2908
3681
|
"args": {},
|
|
2909
|
-
"description": "
|
|
3682
|
+
"description": "When you run an agent preview conversation (either interactive or programmatic), trace files are automatically recorded and saved in your local DX project. Use this command to delete some or all of the trace files.\n\nBy default, this command shows a preview of what will be deleted and prompts for confirmation. Use --no-prompt to skip confirmation.\n\nWithout filters, this comamnd deletes all trace files for all agents and sessions. Use flags to narrow the scope: filter by agent API name (--agent), by session (--session-id), or by age (--older-than).",
|
|
2910
3683
|
"examples": [
|
|
2911
|
-
"
|
|
2912
|
-
"
|
|
2913
|
-
"
|
|
2914
|
-
"
|
|
2915
|
-
"
|
|
3684
|
+
"Delete all traces for all agents and sessions; prompt for confirmation:\n<%= config.bin %> <%= command.id %>",
|
|
3685
|
+
"Delete all traces for a specific agent:\n<%= config.bin %> <%= command.id %> --agent My_Agent",
|
|
3686
|
+
"Delete traces from a specific session:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID>",
|
|
3687
|
+
"Delete traces older than 7 days:\n<%= config.bin %> <%= command.id %> --older-than 7d",
|
|
3688
|
+
"Delete traces older than 24 hours for a specific agent; don't prompt for confirmation:\n<%= config.bin %> <%= command.id %> --agent My_Agent --older-than 24h --no-prompt",
|
|
3689
|
+
"Delete all traces for all agents and sessions; don't prompt for confirmation:\n<%= config.bin %> <%= command.id %> --no-prompt"
|
|
2916
3690
|
],
|
|
2917
3691
|
"flags": {
|
|
2918
3692
|
"json": {
|
|
@@ -2930,117 +3704,51 @@
|
|
|
2930
3704
|
"multiple": false,
|
|
2931
3705
|
"type": "option"
|
|
2932
3706
|
},
|
|
2933
|
-
"
|
|
2934
|
-
"char": "
|
|
2935
|
-
"name": "
|
|
2936
|
-
"
|
|
2937
|
-
"required": true,
|
|
2938
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
2939
|
-
"hasDynamicHelp": true,
|
|
2940
|
-
"multiple": false,
|
|
2941
|
-
"type": "option"
|
|
2942
|
-
},
|
|
2943
|
-
"api-version": {
|
|
2944
|
-
"description": "Override the api version used for api requests made by this command",
|
|
2945
|
-
"name": "api-version",
|
|
3707
|
+
"agent": {
|
|
3708
|
+
"char": "a",
|
|
3709
|
+
"name": "agent",
|
|
3710
|
+
"summary": "API name of the agent used to filter the list of trace files you want to delete. Matches against the API name used when starting the session, either an authoring bundle or a published agent API name.",
|
|
2946
3711
|
"hasDynamicHelp": false,
|
|
2947
3712
|
"multiple": false,
|
|
2948
3713
|
"type": "option"
|
|
2949
3714
|
},
|
|
2950
3715
|
"session-id": {
|
|
2951
|
-
"exclusive": [
|
|
2952
|
-
"all"
|
|
2953
|
-
],
|
|
2954
3716
|
"name": "session-id",
|
|
2955
|
-
"
|
|
2956
|
-
"summary": "Session ID outputted by \"agent preview start\". Not required when the agent has exactly one active session. Run \"agent preview sessions\" to see the list of all sessions.",
|
|
2957
|
-
"hasDynamicHelp": false,
|
|
2958
|
-
"multiple": false,
|
|
2959
|
-
"type": "option"
|
|
2960
|
-
},
|
|
2961
|
-
"api-name": {
|
|
2962
|
-
"char": "n",
|
|
2963
|
-
"exclusive": [
|
|
2964
|
-
"authoring-bundle"
|
|
2965
|
-
],
|
|
2966
|
-
"name": "api-name",
|
|
2967
|
-
"summary": "API name of the activated published agent you want to preview.",
|
|
3717
|
+
"summary": "Session ID used to filter the list of trace files you want to delete. Use the \"agent preview sessions\" CLI command to list all known agent preview sessions along with their session IDs.",
|
|
2968
3718
|
"hasDynamicHelp": false,
|
|
2969
3719
|
"multiple": false,
|
|
2970
3720
|
"type": "option"
|
|
2971
3721
|
},
|
|
2972
|
-
"
|
|
2973
|
-
"
|
|
2974
|
-
|
|
2975
|
-
],
|
|
2976
|
-
"name": "authoring-bundle",
|
|
2977
|
-
"summary": "API name of the authoring bundle metadata component that contains the agent's Agent Script file.",
|
|
3722
|
+
"older-than": {
|
|
3723
|
+
"name": "older-than",
|
|
3724
|
+
"summary": "Duration used to filter the list of trace files; only files older than the duration are deleted. Accepts a number followed by a unit: m/minutes, h/hours, d/days, w/weeks. Examples: 7d, 24h, 2w.",
|
|
2978
3725
|
"hasDynamicHelp": false,
|
|
2979
3726
|
"multiple": false,
|
|
2980
3727
|
"type": "option"
|
|
2981
3728
|
},
|
|
2982
|
-
"all": {
|
|
2983
|
-
"exclusive": [
|
|
2984
|
-
"session-id"
|
|
2985
|
-
],
|
|
2986
|
-
"name": "all",
|
|
2987
|
-
"summary": "End all active preview sessions. Combine with --api-name or --authoring-bundle to limit to a specific agent, or use with only --target-org to end sessions for all agents found in the local session cache. Requires --target-org.",
|
|
2988
|
-
"allowNo": false,
|
|
2989
|
-
"type": "boolean"
|
|
2990
|
-
},
|
|
2991
3729
|
"no-prompt": {
|
|
2992
|
-
"char": "p",
|
|
2993
3730
|
"name": "no-prompt",
|
|
2994
|
-
"summary": "
|
|
3731
|
+
"summary": "Skip the confirmation prompt and delete immediately.",
|
|
2995
3732
|
"allowNo": false,
|
|
2996
3733
|
"type": "boolean"
|
|
2997
3734
|
}
|
|
2998
3735
|
},
|
|
2999
|
-
"hasDynamicHelp":
|
|
3736
|
+
"hasDynamicHelp": false,
|
|
3000
3737
|
"hiddenAliases": [],
|
|
3001
|
-
"id": "agent:
|
|
3738
|
+
"id": "agent:trace:delete",
|
|
3002
3739
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
3003
3740
|
"pluginName": "@salesforce/plugin-agent",
|
|
3004
3741
|
"pluginType": "core",
|
|
3005
3742
|
"strict": true,
|
|
3006
|
-
"summary": "
|
|
3743
|
+
"summary": "Delete trace files from an agent preview session.",
|
|
3007
3744
|
"enableJsonFlag": true,
|
|
3008
3745
|
"requiresProject": true,
|
|
3009
|
-
"envVariablesSection": {
|
|
3010
|
-
"header": "ENVIRONMENT VARIABLES",
|
|
3011
|
-
"body": [
|
|
3012
|
-
{
|
|
3013
|
-
"name": "SF_TARGET_ORG",
|
|
3014
|
-
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
3015
|
-
}
|
|
3016
|
-
]
|
|
3017
|
-
},
|
|
3018
3746
|
"errorCodes": {
|
|
3019
3747
|
"header": "ERROR CODES",
|
|
3020
3748
|
"body": [
|
|
3021
3749
|
{
|
|
3022
3750
|
"name": "Succeeded (0)",
|
|
3023
|
-
"description": "
|
|
3024
|
-
},
|
|
3025
|
-
{
|
|
3026
|
-
"name": "ExactlyOneRequired (2)",
|
|
3027
|
-
"description": "Neither --api-name nor --authoring-bundle was provided (required when --all is not set)."
|
|
3028
|
-
},
|
|
3029
|
-
{
|
|
3030
|
-
"name": "NotFound (2)",
|
|
3031
|
-
"description": "Agent not found, or no preview session exists for this agent."
|
|
3032
|
-
},
|
|
3033
|
-
{
|
|
3034
|
-
"name": "PreviewEndFailed (4)",
|
|
3035
|
-
"description": "Failed to end the preview session."
|
|
3036
|
-
},
|
|
3037
|
-
{
|
|
3038
|
-
"name": "PreviewEndPartialFailure (68)",
|
|
3039
|
-
"description": "With --all, one or more sessions failed to end while others succeeded."
|
|
3040
|
-
},
|
|
3041
|
-
{
|
|
3042
|
-
"name": "SessionAmbiguous (5)",
|
|
3043
|
-
"description": "Multiple preview sessions found; specify --session-id to choose one."
|
|
3751
|
+
"description": "Traces deleted successfully (or no traces matched)."
|
|
3044
3752
|
}
|
|
3045
3753
|
]
|
|
3046
3754
|
},
|
|
@@ -3049,27 +3757,31 @@
|
|
|
3049
3757
|
"lib",
|
|
3050
3758
|
"commands",
|
|
3051
3759
|
"agent",
|
|
3052
|
-
"
|
|
3053
|
-
"
|
|
3760
|
+
"trace",
|
|
3761
|
+
"delete.js"
|
|
3054
3762
|
],
|
|
3055
3763
|
"aliasPermutations": [],
|
|
3056
3764
|
"permutations": [
|
|
3057
|
-
"agent:
|
|
3058
|
-
"
|
|
3059
|
-
"
|
|
3060
|
-
"agent:
|
|
3061
|
-
"
|
|
3062
|
-
"
|
|
3765
|
+
"agent:trace:delete",
|
|
3766
|
+
"trace:agent:delete",
|
|
3767
|
+
"trace:delete:agent",
|
|
3768
|
+
"agent:delete:trace",
|
|
3769
|
+
"delete:agent:trace",
|
|
3770
|
+
"delete:trace:agent"
|
|
3063
3771
|
]
|
|
3064
3772
|
},
|
|
3065
|
-
"agent:
|
|
3773
|
+
"agent:trace:list": {
|
|
3066
3774
|
"aliases": [],
|
|
3067
3775
|
"args": {},
|
|
3068
|
-
"description": "
|
|
3776
|
+
"description": "When you run an agent preview conversation (either interactive or programmatic), trace files are automatically recorded and saved in your local DX project. By default, this command lists all trace files for all agents and all of their sessions. Use flags to narrow results: filter by agent name (--agent), by session (--session-id), or by date (--since).\n\nEach row in the output corresponds to one trace file, which in turn corresponds to one agent session. The Agent column shows the authoring bundle or API name used when starting the session.",
|
|
3069
3777
|
"examples": [
|
|
3070
|
-
"
|
|
3071
|
-
"
|
|
3072
|
-
"
|
|
3778
|
+
"List all trace files for all agents and sessions:\n<%= config.bin %> <%= command.id %>",
|
|
3779
|
+
"List all trace files for a specific agent:\n<%= config.bin %> <%= command.id %> --agent My_Agent",
|
|
3780
|
+
"List trace files for a specific session:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID>",
|
|
3781
|
+
"List trace files recorded on or after April 20, 2026 (date-only, interpreted as UTC midnight):\n<%= config.bin %> <%= command.id %> --since 2026-04-20",
|
|
3782
|
+
"List trace files recorded on or after a specific UTC time:\n<%= config.bin %> <%= command.id %> --since 2026-04-20T14:00:00Z",
|
|
3783
|
+
"Filter by agent and date together:\n<%= config.bin %> <%= command.id %> --agent My_Agent --since 2026-04-20",
|
|
3784
|
+
"Return results as JSON:\n<%= config.bin %> <%= command.id %> --json"
|
|
3073
3785
|
],
|
|
3074
3786
|
"flags": {
|
|
3075
3787
|
"json": {
|
|
@@ -3087,93 +3799,46 @@
|
|
|
3087
3799
|
"multiple": false,
|
|
3088
3800
|
"type": "option"
|
|
3089
3801
|
},
|
|
3090
|
-
"target-org": {
|
|
3091
|
-
"char": "o",
|
|
3092
|
-
"name": "target-org",
|
|
3093
|
-
"noCacheDefault": true,
|
|
3094
|
-
"required": true,
|
|
3095
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
3096
|
-
"hasDynamicHelp": true,
|
|
3097
|
-
"multiple": false,
|
|
3098
|
-
"type": "option"
|
|
3099
|
-
},
|
|
3100
|
-
"api-version": {
|
|
3101
|
-
"description": "Override the api version used for api requests made by this command",
|
|
3102
|
-
"name": "api-version",
|
|
3103
|
-
"hasDynamicHelp": false,
|
|
3104
|
-
"multiple": false,
|
|
3105
|
-
"type": "option"
|
|
3106
|
-
},
|
|
3107
3802
|
"session-id": {
|
|
3108
3803
|
"name": "session-id",
|
|
3109
|
-
"
|
|
3110
|
-
"summary": "Session ID outputted by \"agent preview start\". Not required when the agent has exactly one active session. Run \"agent preview sessions\" to see list of all sessions.",
|
|
3111
|
-
"hasDynamicHelp": false,
|
|
3112
|
-
"multiple": false,
|
|
3113
|
-
"type": "option"
|
|
3114
|
-
},
|
|
3115
|
-
"utterance": {
|
|
3116
|
-
"char": "u",
|
|
3117
|
-
"name": "utterance",
|
|
3118
|
-
"required": true,
|
|
3119
|
-
"summary": "Utterance to send to the agent, enclosed in double quotes.",
|
|
3804
|
+
"summary": "Session ID used to filter the list of trace files. Use the \"agent preview sessions\" CLI command to list all known agent preview sessions along with their session IDs.",
|
|
3120
3805
|
"hasDynamicHelp": false,
|
|
3121
3806
|
"multiple": false,
|
|
3122
3807
|
"type": "option"
|
|
3123
3808
|
},
|
|
3124
|
-
"
|
|
3125
|
-
"char": "
|
|
3126
|
-
"name": "
|
|
3127
|
-
"summary": "API name of the
|
|
3809
|
+
"agent": {
|
|
3810
|
+
"char": "a",
|
|
3811
|
+
"name": "agent",
|
|
3812
|
+
"summary": "API name of the agent used to filter the list of available trace files. Matches against the API name used when starting the session, either an authoring bundle or a published agent API name.",
|
|
3128
3813
|
"hasDynamicHelp": false,
|
|
3129
3814
|
"multiple": false,
|
|
3130
3815
|
"type": "option"
|
|
3131
3816
|
},
|
|
3132
|
-
"
|
|
3133
|
-
"
|
|
3134
|
-
"
|
|
3817
|
+
"since": {
|
|
3818
|
+
"description": "Accepts ISO 8601 format: date-only (2026-04-20), date-time (2026-04-20T14:00:00Z), or date-time with milliseconds (2026-04-20T14:00:00.000Z). The \"Recorded At\" values shown in the table output are valid inputs.",
|
|
3819
|
+
"name": "since",
|
|
3820
|
+
"summary": "Date used to filter the list of trace files; only those recorded on or after the date are listed.",
|
|
3135
3821
|
"hasDynamicHelp": false,
|
|
3136
3822
|
"multiple": false,
|
|
3137
3823
|
"type": "option"
|
|
3138
3824
|
}
|
|
3139
3825
|
},
|
|
3140
|
-
"hasDynamicHelp":
|
|
3826
|
+
"hasDynamicHelp": false,
|
|
3141
3827
|
"hiddenAliases": [],
|
|
3142
|
-
"id": "agent:
|
|
3828
|
+
"id": "agent:trace:list",
|
|
3143
3829
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
3144
3830
|
"pluginName": "@salesforce/plugin-agent",
|
|
3145
3831
|
"pluginType": "core",
|
|
3146
3832
|
"strict": true,
|
|
3147
|
-
"summary": "
|
|
3833
|
+
"summary": "List the available trace files that were recorded during all agent preview sessions.",
|
|
3148
3834
|
"enableJsonFlag": true,
|
|
3149
3835
|
"requiresProject": true,
|
|
3150
|
-
"envVariablesSection": {
|
|
3151
|
-
"header": "ENVIRONMENT VARIABLES",
|
|
3152
|
-
"body": [
|
|
3153
|
-
{
|
|
3154
|
-
"name": "SF_TARGET_ORG",
|
|
3155
|
-
"description": "Username or alias of your default org. Overrides the target-org configuration variable."
|
|
3156
|
-
}
|
|
3157
|
-
]
|
|
3158
|
-
},
|
|
3159
3836
|
"errorCodes": {
|
|
3160
3837
|
"header": "ERROR CODES",
|
|
3161
3838
|
"body": [
|
|
3162
3839
|
{
|
|
3163
3840
|
"name": "Succeeded (0)",
|
|
3164
|
-
"description": "
|
|
3165
|
-
},
|
|
3166
|
-
{
|
|
3167
|
-
"name": "NotFound (2)",
|
|
3168
|
-
"description": "Agent not found, or no preview session exists for this agent."
|
|
3169
|
-
},
|
|
3170
|
-
{
|
|
3171
|
-
"name": "PreviewSendFailed (4)",
|
|
3172
|
-
"description": "Failed to send message or receive response from the preview session."
|
|
3173
|
-
},
|
|
3174
|
-
{
|
|
3175
|
-
"name": "SessionAmbiguous (5)",
|
|
3176
|
-
"description": "Multiple preview sessions found; specify --session-id to choose one."
|
|
3841
|
+
"description": "Trace files listed successfully (or empty list if none found)."
|
|
3177
3842
|
}
|
|
3178
3843
|
]
|
|
3179
3844
|
},
|
|
@@ -3182,25 +3847,31 @@
|
|
|
3182
3847
|
"lib",
|
|
3183
3848
|
"commands",
|
|
3184
3849
|
"agent",
|
|
3185
|
-
"
|
|
3186
|
-
"
|
|
3850
|
+
"trace",
|
|
3851
|
+
"list.js"
|
|
3187
3852
|
],
|
|
3188
3853
|
"aliasPermutations": [],
|
|
3189
3854
|
"permutations": [
|
|
3190
|
-
"agent:
|
|
3191
|
-
"
|
|
3192
|
-
"
|
|
3193
|
-
"agent:
|
|
3194
|
-
"
|
|
3195
|
-
"
|
|
3855
|
+
"agent:trace:list",
|
|
3856
|
+
"trace:agent:list",
|
|
3857
|
+
"trace:list:agent",
|
|
3858
|
+
"agent:list:trace",
|
|
3859
|
+
"list:agent:trace",
|
|
3860
|
+
"list:trace:agent"
|
|
3196
3861
|
]
|
|
3197
3862
|
},
|
|
3198
|
-
"agent:
|
|
3863
|
+
"agent:trace:read": {
|
|
3199
3864
|
"aliases": [],
|
|
3200
3865
|
"args": {},
|
|
3201
|
-
"description": "
|
|
3866
|
+
"description": "When you run an agent preview conversation (either interactive or programmatic), trace files are automatically recorded and saved in your local DX project. Each turn (utterance or response) of a conversation creates trace data. Use this command to view trace data for a specific preview session, so you can then analyze the trace data to observe, monitor, investigate, and troubleshoot agent events and behavior.\n\nUse the --format flag to specify one of these formats of the outputted trace data:\n\n- summary (Default): A per-turn narrative showing topic routing, actions executed, and the agent's response. Use this to quickly understand what happened in a preview session.\n- detail: Diagnostic drill-down into a specific dimension. Filters output to only the trace steps relevant to that dimension, minimizing noise.\n- raw: Unprocessed trace JSON. Use this as a fallback when the trace schema has changed or you need to perform custom analysis.\n\nIf you specify \"--format detail\", you must also specify a dimension with the --dimension flag. Dimensions are a way to slice and analyze the agent execution trace from a specific angle or concern. Instead of looking at the raw sequence of everything that happened, each dimension filters and organizes the trace data to answer a specific type of question. These are the available dimensions and the information they provide:\n\n- actions: The actions the agent executed. Includes action name, input parameters, output, and latency. Use this dimension to understand what the agent actually did when answering an utterance in the preview session.\n- grounding: The reasoning steps used by the LLM. Use this dimension to see how the agent \"thought\" about the problem - the AI reasoning that determined which actions to take.\n- routing: How the agent navigated between subagents. Use this dimension to understand conversation flow - when and why the agent switched between different subagents or contexts during the conversation.\n- errors: Aggregates all errors during the session. Use this dimension to quickly identify and debug issues across all steps.",
|
|
3202
3867
|
"examples": [
|
|
3203
|
-
"
|
|
3868
|
+
"Show a session trace summary for all turns in the session with the specified ID:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID>",
|
|
3869
|
+
"Show a trace summary for the second turn (utterance or response) of the conversation:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --turn 2",
|
|
3870
|
+
"Drill into action execution across all turns:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension actions",
|
|
3871
|
+
"Drill into routing decisions for the first turn of the conversation:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension routing --turn 1",
|
|
3872
|
+
"Show all errors across the session:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension errors",
|
|
3873
|
+
"Output raw trace JSON for custom parsing:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format raw",
|
|
3874
|
+
"Return results as JSON:\n<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --json"
|
|
3204
3875
|
],
|
|
3205
3876
|
"flags": {
|
|
3206
3877
|
"json": {
|
|
@@ -3217,53 +3888,88 @@
|
|
|
3217
3888
|
"hasDynamicHelp": false,
|
|
3218
3889
|
"multiple": false,
|
|
3219
3890
|
"type": "option"
|
|
3891
|
+
},
|
|
3892
|
+
"session-id": {
|
|
3893
|
+
"char": "s",
|
|
3894
|
+
"name": "session-id",
|
|
3895
|
+
"required": true,
|
|
3896
|
+
"summary": "Session ID to read traces for. Use the \"agent preview sessions\" CLI command to list all known agent preview sessions along with their session IDs",
|
|
3897
|
+
"hasDynamicHelp": false,
|
|
3898
|
+
"multiple": false,
|
|
3899
|
+
"type": "option"
|
|
3900
|
+
},
|
|
3901
|
+
"format": {
|
|
3902
|
+
"char": "f",
|
|
3903
|
+
"name": "format",
|
|
3904
|
+
"summary": "Output format of the trace data; specifies the level of detail you want in the trace files.",
|
|
3905
|
+
"default": "summary",
|
|
3906
|
+
"hasDynamicHelp": false,
|
|
3907
|
+
"multiple": false,
|
|
3908
|
+
"options": [
|
|
3909
|
+
"summary",
|
|
3910
|
+
"detail",
|
|
3911
|
+
"raw"
|
|
3912
|
+
],
|
|
3913
|
+
"type": "option"
|
|
3914
|
+
},
|
|
3915
|
+
"dimension": {
|
|
3916
|
+
"char": "d",
|
|
3917
|
+
"name": "dimension",
|
|
3918
|
+
"summary": "Dimension to drill into when using \"--format detail\"; used to filter and organize the trace data to answer a specific type of question.",
|
|
3919
|
+
"hasDynamicHelp": false,
|
|
3920
|
+
"multiple": false,
|
|
3921
|
+
"options": [
|
|
3922
|
+
"actions",
|
|
3923
|
+
"grounding",
|
|
3924
|
+
"routing",
|
|
3925
|
+
"errors"
|
|
3926
|
+
],
|
|
3927
|
+
"type": "option"
|
|
3928
|
+
},
|
|
3929
|
+
"turn": {
|
|
3930
|
+
"char": "t",
|
|
3931
|
+
"name": "turn",
|
|
3932
|
+
"summary": "Turn number for which you want trace data. A turn is a single utterance or response in a conversation, starting with 1.",
|
|
3933
|
+
"hasDynamicHelp": false,
|
|
3934
|
+
"multiple": false,
|
|
3935
|
+
"type": "option"
|
|
3220
3936
|
}
|
|
3221
3937
|
},
|
|
3222
3938
|
"hasDynamicHelp": false,
|
|
3223
3939
|
"hiddenAliases": [],
|
|
3224
|
-
"id": "agent:
|
|
3940
|
+
"id": "agent:trace:read",
|
|
3225
3941
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
3226
3942
|
"pluginName": "@salesforce/plugin-agent",
|
|
3227
3943
|
"pluginType": "core",
|
|
3228
3944
|
"strict": true,
|
|
3229
|
-
"summary": "
|
|
3945
|
+
"summary": "Read trace files from an agent preview session.",
|
|
3230
3946
|
"enableJsonFlag": true,
|
|
3231
3947
|
"requiresProject": true,
|
|
3232
|
-
"errorCodes": {
|
|
3233
|
-
"header": "ERROR CODES",
|
|
3234
|
-
"body": [
|
|
3235
|
-
{
|
|
3236
|
-
"name": "Succeeded (0)",
|
|
3237
|
-
"description": "Sessions listed successfully (or empty list if no active sessions)."
|
|
3238
|
-
}
|
|
3239
|
-
]
|
|
3240
|
-
},
|
|
3241
3948
|
"isESM": true,
|
|
3242
3949
|
"relativePath": [
|
|
3243
3950
|
"lib",
|
|
3244
3951
|
"commands",
|
|
3245
3952
|
"agent",
|
|
3246
|
-
"
|
|
3247
|
-
"
|
|
3953
|
+
"trace",
|
|
3954
|
+
"read.js"
|
|
3248
3955
|
],
|
|
3249
3956
|
"aliasPermutations": [],
|
|
3250
3957
|
"permutations": [
|
|
3251
|
-
"agent:
|
|
3252
|
-
"
|
|
3253
|
-
"
|
|
3254
|
-
"agent:
|
|
3255
|
-
"
|
|
3256
|
-
"
|
|
3958
|
+
"agent:trace:read",
|
|
3959
|
+
"trace:agent:read",
|
|
3960
|
+
"trace:read:agent",
|
|
3961
|
+
"agent:read:trace",
|
|
3962
|
+
"read:agent:trace",
|
|
3963
|
+
"read:trace:agent"
|
|
3257
3964
|
]
|
|
3258
3965
|
},
|
|
3259
|
-
"agent:
|
|
3966
|
+
"agent:validate:authoring-bundle": {
|
|
3260
3967
|
"aliases": [],
|
|
3261
3968
|
"args": {},
|
|
3262
|
-
"description": "
|
|
3969
|
+
"description": "An authoring bundle is a metadata type (named aiAuthoringBundle) that provides the blueprint for an agent. The metadata type contains two files: the standard metatada XML file and an Agent Script file (extension \".agent\") that fully describes the agent using the Agent Script language.\n\nThis command validates that the Agent Script file in the authoring bundle compiles without errors so that you can later publish the bundle to your org. Use this command while you code the Agent Script file to ensure that it's valid. If the validation fails, the command outputs the list of syntax errors, a brief description of the error, and the location in the Agent Script file where the error occurred.\n\nThis command uses the API name of the authoring bundle. If you don't provide an API name with the --api-name flag, the command searches the current DX project and outputs a list of authoring bundles that it found for you to choose from.",
|
|
3263
3970
|
"examples": [
|
|
3264
|
-
"
|
|
3265
|
-
"
|
|
3266
|
-
"Start a preview session with an activated published agent (always uses live actions):\n<%= config.bin %> <%= command.id %> --api-name My_Published_Agent"
|
|
3971
|
+
"Validate an authoring bundle by being prompted for its API name; use your default org:\n<%= config.bin %> <%= command.id %>",
|
|
3972
|
+
"Validate an authoring bundle with API name MyAuthoringBundle; use the org with alias \"my-dev-org\":\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringBundle --target-org my-dev-org"
|
|
3267
3973
|
],
|
|
3268
3974
|
"flags": {
|
|
3269
3975
|
"json": {
|
|
@@ -3301,43 +4007,7 @@
|
|
|
3301
4007
|
"api-name": {
|
|
3302
4008
|
"char": "n",
|
|
3303
4009
|
"name": "api-name",
|
|
3304
|
-
"summary": "API name of the
|
|
3305
|
-
"hasDynamicHelp": false,
|
|
3306
|
-
"multiple": false,
|
|
3307
|
-
"type": "option"
|
|
3308
|
-
},
|
|
3309
|
-
"authoring-bundle": {
|
|
3310
|
-
"name": "authoring-bundle",
|
|
3311
|
-
"summary": "API name of the authoring bundle metadata component that contains the agent's Agent Script file.",
|
|
3312
|
-
"hasDynamicHelp": false,
|
|
3313
|
-
"multiple": false,
|
|
3314
|
-
"type": "option"
|
|
3315
|
-
},
|
|
3316
|
-
"use-live-actions": {
|
|
3317
|
-
"exclusive": [
|
|
3318
|
-
"simulate-actions"
|
|
3319
|
-
],
|
|
3320
|
-
"name": "use-live-actions",
|
|
3321
|
-
"summary": "Execute real actions in the org (Apex classes, flows, etc.). Required with --authoring-bundle.",
|
|
3322
|
-
"allowNo": false,
|
|
3323
|
-
"type": "boolean"
|
|
3324
|
-
},
|
|
3325
|
-
"simulate-actions": {
|
|
3326
|
-
"exclusive": [
|
|
3327
|
-
"use-live-actions"
|
|
3328
|
-
],
|
|
3329
|
-
"name": "simulate-actions",
|
|
3330
|
-
"summary": "Use AI to simulate action execution instead of calling real actions. Required with --authoring-bundle.",
|
|
3331
|
-
"allowNo": false,
|
|
3332
|
-
"type": "boolean"
|
|
3333
|
-
},
|
|
3334
|
-
"agent-json": {
|
|
3335
|
-
"dependsOn": [
|
|
3336
|
-
"authoring-bundle"
|
|
3337
|
-
],
|
|
3338
|
-
"hidden": true,
|
|
3339
|
-
"name": "agent-json",
|
|
3340
|
-
"summary": "Path to a pre-compiled AgentJSON file to use instead of compiling the Agent Script file. Intended for internal use and testing.",
|
|
4010
|
+
"summary": "API name of the authoring bundle you want to validate; if not specified, the command provides a list that you can choose from.",
|
|
3341
4011
|
"hasDynamicHelp": false,
|
|
3342
4012
|
"multiple": false,
|
|
3343
4013
|
"type": "option"
|
|
@@ -3345,12 +4015,12 @@
|
|
|
3345
4015
|
},
|
|
3346
4016
|
"hasDynamicHelp": true,
|
|
3347
4017
|
"hiddenAliases": [],
|
|
3348
|
-
"id": "agent:
|
|
4018
|
+
"id": "agent:validate:authoring-bundle",
|
|
3349
4019
|
"pluginAlias": "@salesforce/plugin-agent",
|
|
3350
4020
|
"pluginName": "@salesforce/plugin-agent",
|
|
3351
4021
|
"pluginType": "core",
|
|
3352
4022
|
"strict": true,
|
|
3353
|
-
"summary": "
|
|
4023
|
+
"summary": "Validate an authoring bundle to ensure its Agent Script file compiles successfully and can be used to publish an agent.",
|
|
3354
4024
|
"enableJsonFlag": true,
|
|
3355
4025
|
"requiresProject": true,
|
|
3356
4026
|
"envVariablesSection": {
|
|
@@ -3367,42 +4037,44 @@
|
|
|
3367
4037
|
"body": [
|
|
3368
4038
|
{
|
|
3369
4039
|
"name": "Succeeded (0)",
|
|
3370
|
-
"description": "
|
|
4040
|
+
"description": "Agent Script file compiled successfully without errors."
|
|
3371
4041
|
},
|
|
3372
4042
|
{
|
|
3373
4043
|
"name": "Failed (1)",
|
|
3374
|
-
"description": "
|
|
4044
|
+
"description": "Compilation errors found in the Agent Script file."
|
|
3375
4045
|
},
|
|
3376
4046
|
{
|
|
3377
4047
|
"name": "NotFound (2)",
|
|
3378
|
-
"description": "
|
|
4048
|
+
"description": "Validation/compilation API returned HTTP 404. The API endpoint may not be available in your org or region."
|
|
3379
4049
|
},
|
|
3380
4050
|
{
|
|
3381
4051
|
"name": "ServerError (3)",
|
|
3382
|
-
"description": "
|
|
3383
|
-
},
|
|
3384
|
-
{
|
|
3385
|
-
"name": "PreviewStartFailed (4)",
|
|
3386
|
-
"description": "Preview session failed to start due to API or network errors."
|
|
4052
|
+
"description": "Validation/compilation API returned HTTP 500. A server error occurred during compilation."
|
|
3387
4053
|
}
|
|
3388
4054
|
]
|
|
3389
4055
|
},
|
|
4056
|
+
"FLAGGABLE_PROMPTS": {
|
|
4057
|
+
"api-name": {
|
|
4058
|
+
"message": "API name of the authoring bundle you want to validate; if not specified, the command provides a list that you can choose from.",
|
|
4059
|
+
"promptMessage": "API name of the authoring bundle to validate"
|
|
4060
|
+
}
|
|
4061
|
+
},
|
|
3390
4062
|
"isESM": true,
|
|
3391
4063
|
"relativePath": [
|
|
3392
4064
|
"lib",
|
|
3393
4065
|
"commands",
|
|
3394
4066
|
"agent",
|
|
3395
|
-
"
|
|
3396
|
-
"
|
|
4067
|
+
"validate",
|
|
4068
|
+
"authoring-bundle.js"
|
|
3397
4069
|
],
|
|
3398
4070
|
"aliasPermutations": [],
|
|
3399
4071
|
"permutations": [
|
|
3400
|
-
"agent:
|
|
3401
|
-
"
|
|
3402
|
-
"
|
|
3403
|
-
"agent:
|
|
3404
|
-
"
|
|
3405
|
-
"
|
|
4072
|
+
"agent:validate:authoring-bundle",
|
|
4073
|
+
"validate:agent:authoring-bundle",
|
|
4074
|
+
"validate:authoring-bundle:agent",
|
|
4075
|
+
"agent:authoring-bundle:validate",
|
|
4076
|
+
"authoring-bundle:agent:validate",
|
|
4077
|
+
"authoring-bundle:validate:agent"
|
|
3406
4078
|
]
|
|
3407
4079
|
},
|
|
3408
4080
|
"agent:adl:file:add": {
|
|
@@ -3410,7 +4082,8 @@
|
|
|
3410
4082
|
"args": {},
|
|
3411
4083
|
"description": "Adds one or more files to an existing SFDRIVE data library and triggers SearchIndex re-hydration. This is the day-2 operation for adding files to an already-provisioned library.\n\nConstraints: at least 1 file required, no duplicate file names in a batch, maximum 1000 files per library.",
|
|
3412
4084
|
"examples": [
|
|
3413
|
-
"Add a file to an existing library:\n<%= config.bin %> <%= command.id %>
|
|
4085
|
+
"Add a file to an existing library:\n<%= config.bin %> <%= command.id %> -i 1JDSG000007IbWX4A0 --path ./docs/new-guide.pdf --target-org myOrg",
|
|
4086
|
+
"Add multiple files:\n<%= config.bin %> <%= command.id %> -i 1JDSG000007IbWX4A0 --path ./docs/guide.pdf --path ./docs/faq.txt --target-org myOrg"
|
|
3414
4087
|
],
|
|
3415
4088
|
"flags": {
|
|
3416
4089
|
"json": {
|
|
@@ -3454,13 +4127,13 @@
|
|
|
3454
4127
|
"multiple": false,
|
|
3455
4128
|
"type": "option"
|
|
3456
4129
|
},
|
|
3457
|
-
"
|
|
4130
|
+
"path": {
|
|
3458
4131
|
"char": "f",
|
|
3459
|
-
"name": "
|
|
4132
|
+
"name": "path",
|
|
3460
4133
|
"required": true,
|
|
3461
|
-
"summary": "Path to
|
|
4134
|
+
"summary": "Path to file(s) to add. Specify multiple times for batch upload.",
|
|
3462
4135
|
"hasDynamicHelp": false,
|
|
3463
|
-
"multiple":
|
|
4136
|
+
"multiple": true,
|
|
3464
4137
|
"type": "option"
|
|
3465
4138
|
}
|
|
3466
4139
|
},
|
|
@@ -3713,7 +4386,224 @@
|
|
|
3713
4386
|
"list:file:agent:adl",
|
|
3714
4387
|
"list:file:adl:agent"
|
|
3715
4388
|
]
|
|
4389
|
+
},
|
|
4390
|
+
"agent:mcp:asset:list": {
|
|
4391
|
+
"aliases": [],
|
|
4392
|
+
"args": {},
|
|
4393
|
+
"description": "Returns the assets discovered for the specified MCP server, including each asset's kind (MCP_TOOL, MCP_PROMPT, or MCP_RESOURCE), whether it is active, and whether it is available as an agent action.",
|
|
4394
|
+
"examples": [
|
|
4395
|
+
"List the assets for an MCP server in the default target org:\n<%= config.bin %> <%= command.id %> --target-org myOrg --mcp-server-id 0XSxx0000000001",
|
|
4396
|
+
"List the assets for an MCP server and output as JSON:\n<%= config.bin %> <%= command.id %> --target-org myOrg --mcp-server-id 0XSxx0000000001 --json"
|
|
4397
|
+
],
|
|
4398
|
+
"flags": {
|
|
4399
|
+
"json": {
|
|
4400
|
+
"description": "Format output as json.",
|
|
4401
|
+
"helpGroup": "GLOBAL",
|
|
4402
|
+
"name": "json",
|
|
4403
|
+
"allowNo": false,
|
|
4404
|
+
"type": "boolean"
|
|
4405
|
+
},
|
|
4406
|
+
"flags-dir": {
|
|
4407
|
+
"helpGroup": "GLOBAL",
|
|
4408
|
+
"name": "flags-dir",
|
|
4409
|
+
"summary": "Import flag values from a directory.",
|
|
4410
|
+
"hasDynamicHelp": false,
|
|
4411
|
+
"multiple": false,
|
|
4412
|
+
"type": "option"
|
|
4413
|
+
},
|
|
4414
|
+
"target-org": {
|
|
4415
|
+
"char": "o",
|
|
4416
|
+
"name": "target-org",
|
|
4417
|
+
"noCacheDefault": true,
|
|
4418
|
+
"required": true,
|
|
4419
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
4420
|
+
"hasDynamicHelp": true,
|
|
4421
|
+
"multiple": false,
|
|
4422
|
+
"type": "option"
|
|
4423
|
+
},
|
|
4424
|
+
"api-version": {
|
|
4425
|
+
"description": "Override the api version used for api requests made by this command",
|
|
4426
|
+
"name": "api-version",
|
|
4427
|
+
"hasDynamicHelp": false,
|
|
4428
|
+
"multiple": false,
|
|
4429
|
+
"type": "option"
|
|
4430
|
+
},
|
|
4431
|
+
"mcp-server-id": {
|
|
4432
|
+
"char": "i",
|
|
4433
|
+
"name": "mcp-server-id",
|
|
4434
|
+
"required": true,
|
|
4435
|
+
"summary": "The ID of the MCP server whose assets you want to list.",
|
|
4436
|
+
"hasDynamicHelp": false,
|
|
4437
|
+
"multiple": false,
|
|
4438
|
+
"type": "option"
|
|
4439
|
+
}
|
|
4440
|
+
},
|
|
4441
|
+
"hasDynamicHelp": true,
|
|
4442
|
+
"hiddenAliases": [],
|
|
4443
|
+
"id": "agent:mcp:asset:list",
|
|
4444
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
4445
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
4446
|
+
"pluginType": "core",
|
|
4447
|
+
"state": "preview",
|
|
4448
|
+
"strict": true,
|
|
4449
|
+
"summary": "List the assets (tools, prompts, and resources) for an MCP server in the catalog.",
|
|
4450
|
+
"enableJsonFlag": true,
|
|
4451
|
+
"isESM": true,
|
|
4452
|
+
"relativePath": [
|
|
4453
|
+
"lib",
|
|
4454
|
+
"commands",
|
|
4455
|
+
"agent",
|
|
4456
|
+
"mcp",
|
|
4457
|
+
"asset",
|
|
4458
|
+
"list.js"
|
|
4459
|
+
],
|
|
4460
|
+
"aliasPermutations": [],
|
|
4461
|
+
"permutations": [
|
|
4462
|
+
"agent:mcp:asset:list",
|
|
4463
|
+
"mcp:agent:asset:list",
|
|
4464
|
+
"mcp:asset:agent:list",
|
|
4465
|
+
"mcp:asset:list:agent",
|
|
4466
|
+
"agent:asset:mcp:list",
|
|
4467
|
+
"asset:agent:mcp:list",
|
|
4468
|
+
"asset:mcp:agent:list",
|
|
4469
|
+
"asset:mcp:list:agent",
|
|
4470
|
+
"agent:asset:list:mcp",
|
|
4471
|
+
"asset:agent:list:mcp",
|
|
4472
|
+
"asset:list:agent:mcp",
|
|
4473
|
+
"asset:list:mcp:agent",
|
|
4474
|
+
"agent:mcp:list:asset",
|
|
4475
|
+
"mcp:agent:list:asset",
|
|
4476
|
+
"mcp:list:agent:asset",
|
|
4477
|
+
"mcp:list:asset:agent",
|
|
4478
|
+
"agent:list:mcp:asset",
|
|
4479
|
+
"list:agent:mcp:asset",
|
|
4480
|
+
"list:mcp:agent:asset",
|
|
4481
|
+
"list:mcp:asset:agent",
|
|
4482
|
+
"agent:list:asset:mcp",
|
|
4483
|
+
"list:agent:asset:mcp",
|
|
4484
|
+
"list:asset:agent:mcp",
|
|
4485
|
+
"list:asset:mcp:agent"
|
|
4486
|
+
]
|
|
4487
|
+
},
|
|
4488
|
+
"agent:mcp:asset:replace": {
|
|
4489
|
+
"aliases": [],
|
|
4490
|
+
"args": {},
|
|
4491
|
+
"description": "Replaces the full set of assets (tools, prompts, resources) for an MCP server with the asset items you supply. Provide the assets either inline with `--assets` (a JSON string, or `-` to read from stdin) or from a file with `--assets-file`. The JSON must be either an array of asset items or an object of the form `{ \"assets\": [...] }`. Each asset item may include `id`, `name`, `label`, `description`, `active`, and `kind`. This is a full replacement: existing assets not present in the supplied set are removed, so provide the complete desired asset set (read the current set first with `agent mcp asset list` or `agent mcp fetch`).",
|
|
4492
|
+
"examples": [
|
|
4493
|
+
"Replace the assets inline with a JSON string:\n<%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --assets '{\"assets\":[{\"name\":\"McpTool__add\",\"active\":true}]}' --target-org myOrg",
|
|
4494
|
+
"Replace the assets from a JSON file:\n<%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --assets-file ./assets.json --target-org myOrg",
|
|
4495
|
+
"Pipe the assets from stdin:\ncat assets.json | <%= config.bin %> <%= command.id %> --mcp-server-id 0XSxx0000000001 --assets - --target-org myOrg"
|
|
4496
|
+
],
|
|
4497
|
+
"flags": {
|
|
4498
|
+
"json": {
|
|
4499
|
+
"description": "Format output as json.",
|
|
4500
|
+
"helpGroup": "GLOBAL",
|
|
4501
|
+
"name": "json",
|
|
4502
|
+
"allowNo": false,
|
|
4503
|
+
"type": "boolean"
|
|
4504
|
+
},
|
|
4505
|
+
"flags-dir": {
|
|
4506
|
+
"helpGroup": "GLOBAL",
|
|
4507
|
+
"name": "flags-dir",
|
|
4508
|
+
"summary": "Import flag values from a directory.",
|
|
4509
|
+
"hasDynamicHelp": false,
|
|
4510
|
+
"multiple": false,
|
|
4511
|
+
"type": "option"
|
|
4512
|
+
},
|
|
4513
|
+
"target-org": {
|
|
4514
|
+
"char": "o",
|
|
4515
|
+
"name": "target-org",
|
|
4516
|
+
"noCacheDefault": true,
|
|
4517
|
+
"required": true,
|
|
4518
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
4519
|
+
"hasDynamicHelp": true,
|
|
4520
|
+
"multiple": false,
|
|
4521
|
+
"type": "option"
|
|
4522
|
+
},
|
|
4523
|
+
"api-version": {
|
|
4524
|
+
"description": "Override the api version used for api requests made by this command",
|
|
4525
|
+
"name": "api-version",
|
|
4526
|
+
"hasDynamicHelp": false,
|
|
4527
|
+
"multiple": false,
|
|
4528
|
+
"type": "option"
|
|
4529
|
+
},
|
|
4530
|
+
"mcp-server-id": {
|
|
4531
|
+
"char": "i",
|
|
4532
|
+
"name": "mcp-server-id",
|
|
4533
|
+
"required": true,
|
|
4534
|
+
"summary": "ID of the MCP server whose assets you want to replace.",
|
|
4535
|
+
"hasDynamicHelp": false,
|
|
4536
|
+
"multiple": false,
|
|
4537
|
+
"type": "option"
|
|
4538
|
+
},
|
|
4539
|
+
"assets": {
|
|
4540
|
+
"exclusive": [
|
|
4541
|
+
"assets-file"
|
|
4542
|
+
],
|
|
4543
|
+
"name": "assets",
|
|
4544
|
+
"summary": "The desired asset allowlist as a JSON string (or \"-\" to read from stdin). Mutually exclusive with --assets-file.",
|
|
4545
|
+
"hasDynamicHelp": false,
|
|
4546
|
+
"multiple": false,
|
|
4547
|
+
"type": "option"
|
|
4548
|
+
},
|
|
4549
|
+
"assets-file": {
|
|
4550
|
+
"exclusive": [
|
|
4551
|
+
"assets"
|
|
4552
|
+
],
|
|
4553
|
+
"name": "assets-file",
|
|
4554
|
+
"summary": "Path to a JSON file containing the desired asset allowlist. Mutually exclusive with --assets.",
|
|
4555
|
+
"hasDynamicHelp": false,
|
|
4556
|
+
"multiple": false,
|
|
4557
|
+
"type": "option"
|
|
4558
|
+
}
|
|
4559
|
+
},
|
|
4560
|
+
"hasDynamicHelp": true,
|
|
4561
|
+
"hiddenAliases": [],
|
|
4562
|
+
"id": "agent:mcp:asset:replace",
|
|
4563
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
4564
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
4565
|
+
"pluginType": "core",
|
|
4566
|
+
"state": "preview",
|
|
4567
|
+
"strict": true,
|
|
4568
|
+
"summary": "Replace the asset set of an MCP server in the API Catalog.",
|
|
4569
|
+
"enableJsonFlag": true,
|
|
4570
|
+
"isESM": true,
|
|
4571
|
+
"relativePath": [
|
|
4572
|
+
"lib",
|
|
4573
|
+
"commands",
|
|
4574
|
+
"agent",
|
|
4575
|
+
"mcp",
|
|
4576
|
+
"asset",
|
|
4577
|
+
"replace.js"
|
|
4578
|
+
],
|
|
4579
|
+
"aliasPermutations": [],
|
|
4580
|
+
"permutations": [
|
|
4581
|
+
"agent:mcp:asset:replace",
|
|
4582
|
+
"mcp:agent:asset:replace",
|
|
4583
|
+
"mcp:asset:agent:replace",
|
|
4584
|
+
"mcp:asset:replace:agent",
|
|
4585
|
+
"agent:asset:mcp:replace",
|
|
4586
|
+
"asset:agent:mcp:replace",
|
|
4587
|
+
"asset:mcp:agent:replace",
|
|
4588
|
+
"asset:mcp:replace:agent",
|
|
4589
|
+
"agent:asset:replace:mcp",
|
|
4590
|
+
"asset:agent:replace:mcp",
|
|
4591
|
+
"asset:replace:agent:mcp",
|
|
4592
|
+
"asset:replace:mcp:agent",
|
|
4593
|
+
"agent:mcp:replace:asset",
|
|
4594
|
+
"mcp:agent:replace:asset",
|
|
4595
|
+
"mcp:replace:agent:asset",
|
|
4596
|
+
"mcp:replace:asset:agent",
|
|
4597
|
+
"agent:replace:mcp:asset",
|
|
4598
|
+
"replace:agent:mcp:asset",
|
|
4599
|
+
"replace:mcp:agent:asset",
|
|
4600
|
+
"replace:mcp:asset:agent",
|
|
4601
|
+
"agent:replace:asset:mcp",
|
|
4602
|
+
"replace:agent:asset:mcp",
|
|
4603
|
+
"replace:asset:agent:mcp",
|
|
4604
|
+
"replace:asset:mcp:agent"
|
|
4605
|
+
]
|
|
3716
4606
|
}
|
|
3717
4607
|
},
|
|
3718
|
-
"version": "1.
|
|
4608
|
+
"version": "1.43.0"
|
|
3719
4609
|
}
|