@thinkingai/ae-cli 6.0.24 → 6.0.28

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.
Files changed (185) hide show
  1. package/dist/{auth-A2XXG5K4.js → auth-7TQRGLBC.js} +10 -8
  2. package/dist/{auth-IDPKDFSY.js → auth-MEJ642P4.js} +2 -2
  3. package/dist/chunk-2NDGFQHW.js +190 -0
  4. package/dist/{chunk-NGJDCOYA.js → chunk-7QQ4233A.js} +3 -3
  5. package/dist/{chunk-PFJFZVCK.js → chunk-AJTH7LT3.js} +3 -2
  6. package/dist/{chunk-V5R5UIRM.js → chunk-BXMXMUD7.js} +65 -6
  7. package/dist/{chunk-AKORWVHJ.js → chunk-C4DH76LX.js} +1 -1
  8. package/dist/{chunk-NXJP4CES.js → chunk-GWZ5MYWE.js} +3 -3
  9. package/dist/{chunk-F3ZDMC2W.js → chunk-KCA6BA5D.js} +2 -2
  10. package/dist/{chunk-WXBCP6SD.js → chunk-KGJQCYVC.js} +1 -1
  11. package/dist/{chunk-FIT4CFIN.js → chunk-LG5YT7P7.js} +1 -1
  12. package/dist/{chunk-IDXW6MEJ.js → chunk-MDJGDI6K.js} +2 -2
  13. package/dist/{chunk-4FQ36OGO.js → chunk-R77JT7XD.js} +53 -6
  14. package/dist/{chunk-65DKFJZB.js → chunk-YCLVYFK7.js} +49 -6
  15. package/dist/{chunk-2OW2RENH.js → chunk-YNQFYBDB.js} +64 -6
  16. package/dist/{chunk-ONOA6DYB.js → chunk-ZAOL36CG.js} +1 -1
  17. package/dist/cli-token-TVQRSE46.js +18 -0
  18. package/dist/{client-7L735LVY.js → client-2643Z5AG.js} +3 -3
  19. package/dist/{config-SXD2JKSL.js → config-ZVPARN4R.js} +4 -9
  20. package/dist/index.js +24 -24
  21. package/dist/{metadata-QWUAX625.js → metadata-IPSPQBX3.js} +5 -5
  22. package/dist/{metadata-XWTEGEN2.js → metadata-N5REJ7R7.js} +5 -5
  23. package/dist/{model-3OVX42DA.js → model-T3KZJWLW.js} +2 -2
  24. package/dist/{raw-IANB4AV5.js → raw-OHSUK42D.js} +4 -4
  25. package/dist/{sync-4HQ3CXSK.js → sync-ULT5SECP.js} +3 -3
  26. package/dist/{te-agent-OYNNTJDU.js → te-agent-QLIVKRUN.js} +1146 -61
  27. package/dist/{te-analysis-JX3V76OI.js → te-analysis-5WZKVFHI.js} +1332 -338
  28. package/dist/{te-analysis-CRPFK3LX.js → te-analysis-KAEZXLNS.js} +1332 -338
  29. package/dist/{te-audience-RO2IZOUC.js → te-audience-PVMKQAFH.js} +5 -5
  30. package/dist/{te-audience-77FGNG5E.js → te-audience-XMRMVD2V.js} +5 -5
  31. package/dist/{te-common-4TRJPRC5.js → te-common-CFGQXTFV.js} +5 -5
  32. package/dist/{te-common-PUXBUPOL.js → te-common-SDB3O2QG.js} +5 -5
  33. package/dist/{te-community-XKE526DS.js → te-community-6A7LKYUH.js} +5 -5
  34. package/dist/{te-community-NPDZQKMY.js → te-community-GMWFGILT.js} +5 -5
  35. package/dist/{te-dataops-PW74WP76.js → te-dataops-6LIPYNGH.js} +90 -68
  36. package/dist/{te-dataops-6KWLFNV4.js → te-dataops-Z53CTG2U.js} +90 -68
  37. package/dist/{te-engage-HTLMUN7G.js → te-engage-AGREUOW7.js} +30 -15
  38. package/dist/{te-engage-YPQIVF5H.js → te-engage-MIIUKY6M.js} +30 -15
  39. package/dist/{te-kb-DOGDQIU4.js → te-kb-KQJ53M3A.js} +4 -4
  40. package/dist/{te-meta-5ESSQ5B3.js → te-meta-QLANJ4B4.js} +5 -5
  41. package/dist/{te-meta-Z47X4VT3.js → te-meta-TOA6FWDE.js} +5 -5
  42. package/dist/{te-team-SOVKZIDD.js → te-team-TQGMNHQQ.js} +5 -5
  43. package/package.json +3 -1
  44. package/skills/ae-agent/SKILL.md +158 -189
  45. package/skills/ae-agent/references/accept-skill-share.md +39 -0
  46. package/skills/ae-agent/references/add-attachment.md +57 -0
  47. package/skills/ae-agent/references/add-mcp.md +75 -0
  48. package/skills/ae-agent/references/add-model.md +70 -0
  49. package/skills/ae-agent/references/add-skill.md +71 -0
  50. package/skills/ae-agent/references/approve-skill.md +41 -0
  51. package/skills/ae-agent/references/attachment-stats.md +50 -0
  52. package/skills/ae-agent/references/auto-provision-mcp-credentials.md +57 -0
  53. package/skills/ae-agent/references/cancel-skill-submission.md +39 -0
  54. package/skills/ae-agent/references/copy-skill.md +53 -0
  55. package/skills/ae-agent/references/create-agent.md +71 -0
  56. package/skills/ae-agent/references/create-automation.md +99 -0
  57. package/skills/ae-agent/references/del-agent.md +38 -0
  58. package/skills/ae-agent/references/del-attachment.md +35 -0
  59. package/skills/ae-agent/references/del-mcp.md +35 -0
  60. package/skills/ae-agent/references/del-model.md +37 -0
  61. package/skills/ae-agent/references/del-skill-asset.md +41 -0
  62. package/skills/ae-agent/references/del-skill-reference.md +41 -0
  63. package/skills/ae-agent/references/del-skill-script.md +41 -0
  64. package/skills/ae-agent/references/del-skill.md +36 -0
  65. package/skills/ae-agent/references/edit-skill.md +64 -0
  66. package/skills/ae-agent/references/get-agent.md +37 -0
  67. package/skills/ae-agent/references/get-skill-content.md +36 -0
  68. package/skills/ae-agent/references/list-agents.md +40 -0
  69. package/skills/ae-agent/references/list-attachments.md +42 -0
  70. package/skills/ae-agent/references/list-automations.md +41 -0
  71. package/skills/ae-agent/references/list-mcp-credentials.md +65 -0
  72. package/skills/ae-agent/references/list-mcp-market.md +58 -0
  73. package/skills/ae-agent/references/list-mcps.md +37 -0
  74. package/skills/ae-agent/references/list-models.md +38 -0
  75. package/skills/ae-agent/references/list-skill-assets.md +35 -0
  76. package/skills/ae-agent/references/list-skill-market.md +59 -0
  77. package/skills/ae-agent/references/list-skill-references.md +36 -0
  78. package/skills/ae-agent/references/list-skill-scripts.md +35 -0
  79. package/skills/ae-agent/references/list-skill-shares.md +49 -0
  80. package/skills/ae-agent/references/list-skill-submissions.md +45 -0
  81. package/skills/ae-agent/references/list-skills.md +37 -0
  82. package/skills/ae-agent/references/mcp-auth-disconnect.md +50 -0
  83. package/skills/ae-agent/references/mcp-auth-start.md +61 -0
  84. package/skills/ae-agent/references/mcp-auth-status.md +56 -0
  85. package/skills/ae-agent/references/mcp-stats.md +68 -0
  86. package/skills/ae-agent/references/mcp-token.md +63 -0
  87. package/skills/ae-agent/references/mcp-tools.md +55 -0
  88. package/skills/ae-agent/references/read-skill-asset.md +51 -0
  89. package/skills/ae-agent/references/read-skill-reference.md +50 -0
  90. package/skills/ae-agent/references/read-skill-script.md +51 -0
  91. package/skills/ae-agent/references/reject-skill-share.md +37 -0
  92. package/skills/ae-agent/references/reject-skill.md +42 -0
  93. package/skills/ae-agent/references/rescan-skills.md +44 -0
  94. package/skills/ae-agent/references/set-mcp-credential.md +67 -0
  95. package/skills/ae-agent/references/set-mcp-meta.md +52 -0
  96. package/skills/ae-agent/references/set-skill-meta.md +51 -0
  97. package/skills/ae-agent/references/share-skill.md +50 -0
  98. package/skills/ae-agent/references/submit-skill.md +51 -0
  99. package/skills/ae-agent/references/test-model.md +61 -0
  100. package/skills/ae-agent/references/toggle-mcp.md +39 -0
  101. package/skills/ae-agent/references/toggle-model.md +37 -0
  102. package/skills/ae-agent/references/toggle-skill.md +37 -0
  103. package/skills/ae-agent/references/update-agent.md +71 -0
  104. package/skills/ae-agent/references/update-automation.md +83 -0
  105. package/skills/ae-agent/references/update-mcp.md +79 -0
  106. package/skills/ae-agent/references/update-model.md +77 -0
  107. package/skills/ae-agent/references/upload-skill-asset.md +49 -0
  108. package/skills/ae-agent/references/upload-skill-reference.md +51 -0
  109. package/skills/ae-agent/references/upload-skill-script.md +49 -0
  110. package/skills/ae-agent/references/upload-skill.md +89 -0
  111. package/skills/ae-analysis/SKILL.md +60 -6
  112. package/skills/ae-analysis/references/analysis_gateway_assets.md +27 -10
  113. package/skills/ae-analysis/references/artifact_download.md +17 -0
  114. package/skills/ae-analysis/references/asset_abnormal_get.md +27 -0
  115. package/skills/ae-analysis/references/asset_abnormal_list.md +24 -0
  116. package/skills/ae-analysis/references/asset_authentication_list.md +23 -0
  117. package/skills/ae-analysis/references/asset_authentication_update.md +24 -0
  118. package/skills/ae-analysis/references/asset_recent_list.md +24 -0
  119. package/skills/ae-analysis/references/asset_search.md +24 -0
  120. package/skills/ae-analysis/references/bi_panel_get.md +5 -0
  121. package/skills/ae-analysis/references/bi_panel_page_data_export.md +11 -1
  122. package/skills/ae-analysis/references/bi_panel_share.md +6 -0
  123. package/skills/ae-analysis/references/bi_panel_update.md +4 -1
  124. package/skills/ae-analysis/references/bi_panel_version_get.md +23 -0
  125. package/skills/ae-analysis/references/bi_panel_version_publish.md +20 -0
  126. package/skills/ae-analysis/references/dashboard_copy.md +3 -1
  127. package/skills/ae-analysis/references/dashboard_daily_report_send.md +9 -2
  128. package/skills/ae-analysis/references/dashboard_daily_report_update.md +3 -1
  129. package/skills/ae-analysis/references/dashboard_definition_export.md +21 -3
  130. package/skills/ae-analysis/references/dashboard_report_data_export.md +17 -1
  131. package/skills/ae-analysis/references/dashboard_report_data_run.md +6 -0
  132. package/skills/ae-analysis/references/datatable_columns_get.md +24 -0
  133. package/skills/ae-analysis/references/datatable_influence_list.md +24 -0
  134. package/skills/ae-analysis/references/datatable_version_get.md +24 -0
  135. package/skills/ae-analysis/references/datatable_version_list.md +24 -0
  136. package/skills/ae-analysis/references/event_changelog_list.md +24 -0
  137. package/skills/ae-analysis/references/event_create.md +24 -0
  138. package/skills/ae-analysis/references/event_delete.md +24 -0
  139. package/skills/ae-analysis/references/event_get.md +24 -0
  140. package/skills/ae-analysis/references/event_hide_update.md +25 -0
  141. package/skills/ae-analysis/references/event_influence_list.md +24 -0
  142. package/skills/ae-analysis/references/event_list.md +23 -0
  143. package/skills/ae-analysis/references/event_relation_update.md +24 -0
  144. package/skills/ae-analysis/references/event_update.md +26 -0
  145. package/skills/ae-analysis/references/exchange_config_update.md +24 -0
  146. package/skills/ae-analysis/references/exchange_rate_refresh.md +23 -0
  147. package/skills/ae-analysis/references/exchange_rule_list.md +23 -0
  148. package/skills/ae-analysis/references/exchange_rule_update.md +24 -0
  149. package/skills/ae-analysis/references/exchange_rule_validate.md +24 -0
  150. package/skills/ae-analysis/references/metric_create.md +24 -0
  151. package/skills/ae-analysis/references/metric_delete.md +24 -0
  152. package/skills/ae-analysis/references/metric_get.md +24 -0
  153. package/skills/ae-analysis/references/metric_list.md +24 -0
  154. package/skills/ae-analysis/references/metric_update.md +24 -0
  155. package/skills/ae-analysis/references/project_space_create.md +1 -1
  156. package/skills/ae-analysis/references/property_changelog_list.md +25 -0
  157. package/skills/ae-analysis/references/property_create.md +25 -0
  158. package/skills/ae-analysis/references/property_delete.md +25 -0
  159. package/skills/ae-analysis/references/property_get.md +25 -0
  160. package/skills/ae-analysis/references/property_hide_update.md +26 -0
  161. package/skills/ae-analysis/references/property_influence_list.md +25 -0
  162. package/skills/ae-analysis/references/property_list.md +24 -0
  163. package/skills/ae-analysis/references/property_related_events.md +24 -0
  164. package/skills/ae-analysis/references/property_relation_update.md +25 -0
  165. package/skills/ae-analysis/references/property_update.md +27 -0
  166. package/skills/ae-analysis/references/run_inspect.md +22 -0
  167. package/skills/ae-analysis/references/super_metadata_export.md +36 -0
  168. package/skills/ae-analysis/references/super_metadata_import.md +24 -0
  169. package/skills/ae-analysis/references/virtual_event_create.md +25 -0
  170. package/skills/ae-analysis/references/virtual_event_delete.md +24 -0
  171. package/skills/ae-analysis/references/virtual_event_get.md +24 -0
  172. package/skills/ae-analysis/references/virtual_property_create.md +24 -0
  173. package/skills/ae-analysis/references/virtual_property_sql_rule_delete.md +25 -0
  174. package/skills/ae-analysis/references/virtual_property_sql_rule_update.md +24 -0
  175. package/skills/ae-dataops/references/dataops-flow-create.md +2 -2
  176. package/skills/ae-dataops/references/dataops-flow-monitor.md +3 -3
  177. package/skills/ae-dataops/references/dataops-integration.md +1 -0
  178. package/skills/ae-engage/references/flow-node-config-schema.md +32 -8
  179. package/skills/ae-engage/references/save-flow.md +65 -29
  180. package/skills/ae-engage/references/validate-flow-node-config.md +28 -10
  181. package/skills/ae-generate-tracking-code/SKILL.md +16 -1
  182. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +17 -1
  183. package/skills/ae-generate-tracking-plan/SKILL.md +36 -12
  184. package/dist/chunk-OCQPQYHZ.js +0 -105
  185. package/dist/cli-token-OZXHC3U2.js +0 -14
@@ -1,20 +1,24 @@
1
1
  import {
2
2
  createCapabilityCommand,
3
3
  registerCapabilityGatewayRoute
4
- } from "./chunk-AKORWVHJ.js";
5
- import "./chunk-V5R5UIRM.js";
4
+ } from "./chunk-C4DH76LX.js";
5
+ import {
6
+ buildCapabilityGatewayUrl,
7
+ callCapabilityApi,
8
+ downloadCapabilityArtifact
9
+ } from "./chunk-BXMXMUD7.js";
6
10
  import {
7
11
  callMcpTool,
8
12
  parseMcpResult,
9
13
  resolveMcpUrl
10
- } from "./chunk-NXJP4CES.js";
14
+ } from "./chunk-GWZ5MYWE.js";
11
15
  import {
12
16
  isGlobalQueryModeEnabled
13
- } from "./chunk-WXBCP6SD.js";
17
+ } from "./chunk-KGJQCYVC.js";
14
18
  import "./chunk-NOO24N7W.js";
15
- import "./chunk-OCQPQYHZ.js";
16
- import "./chunk-PFJFZVCK.js";
17
- import "./chunk-65DKFJZB.js";
19
+ import "./chunk-2NDGFQHW.js";
20
+ import "./chunk-AJTH7LT3.js";
21
+ import "./chunk-YCLVYFK7.js";
18
22
 
19
23
  // src/commands/te-analysis/shared.ts
20
24
  function createMcpCommand(config) {
@@ -171,77 +175,1003 @@ var getAlert = createMcpCommand({
171
175
  command: "+get_alert",
172
176
  description: "Get detailed information about a specific alert by alertId.",
173
177
  flags: [
174
- { name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
175
- { name: "alert_id", type: "number", required: true, alias: "a", desc: "Alert ID" }
178
+ { name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
179
+ { name: "alert_id", type: "number", required: true, alias: "a", desc: "Alert ID" }
180
+ ],
181
+ risk: "read",
182
+ mcpService: "te_analysis_extend",
183
+ buildArgs: (ctx) => ({
184
+ projectId: ctx.num("project_id"),
185
+ alertId: ctx.num("alert_id")
186
+ })
187
+ });
188
+
189
+ // src/commands/te-analysis/meta/create-alert.ts
190
+ var createAlert = createMcpCommand({
191
+ command: "+create_alert",
192
+ description: "Create a new alert. After creation, use list_alerts or get_alert to retrieve the created alert.",
193
+ flags: [
194
+ { name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
195
+ { name: "definition", type: "json", required: true, desc: "Alert definition JSON. See +get_alert_definition_schema for the complete structure." }
196
+ ],
197
+ risk: "write",
198
+ mcpService: "te_analysis_extend",
199
+ buildArgs: (ctx) => ({
200
+ projectId: ctx.num("project_id"),
201
+ definition: requiredJsonString(ctx, "definition")
202
+ })
203
+ });
204
+
205
+ // src/commands/te-analysis/meta/update-alert.ts
206
+ var updateAlert = createMcpCommand({
207
+ command: "+update_alert",
208
+ description: "Update an existing alert. All fields in the definition will replace existing values.",
209
+ flags: [
210
+ { name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
211
+ { name: "alert_id", type: "number", required: true, alias: "a", desc: "Alert ID" },
212
+ { name: "definition", type: "json", required: true, desc: "Alert definition JSON with updated fields. See +get_alert_definition_schema for the complete structure." }
213
+ ],
214
+ risk: "write",
215
+ mcpService: "te_analysis_extend",
216
+ buildArgs: (ctx) => ({
217
+ projectId: ctx.num("project_id"),
218
+ alertId: ctx.num("alert_id"),
219
+ definition: requiredJsonString(ctx, "definition")
220
+ })
221
+ });
222
+
223
+ // src/commands/te-analysis/meta/delete-alert.ts
224
+ var deleteAlert = createMcpCommand({
225
+ command: "+delete_alert",
226
+ description: "Delete an alert by alertId",
227
+ flags: [
228
+ { name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
229
+ { name: "alert_id", type: "number", required: true, desc: "Alert ID to delete" }
230
+ ],
231
+ risk: "write",
232
+ mcpService: "te_analysis_extend",
233
+ buildArgs: (ctx) => ({
234
+ projectId: ctx.num("project_id"),
235
+ alertId: ctx.num("alert_id")
236
+ })
237
+ });
238
+
239
+ // src/commands/te-analysis/capability-shared.ts
240
+ function createAnalysisCapabilityCommand(config) {
241
+ return createCapabilityCommand({
242
+ ...config,
243
+ cliService: "analysis"
244
+ });
245
+ }
246
+ var projectIdFlag = {
247
+ name: "project-id",
248
+ type: "number",
249
+ required: true,
250
+ desc: "Numeric project ID.",
251
+ alias: "p"
252
+ };
253
+ var queryFlag = {
254
+ name: "query",
255
+ type: "string",
256
+ required: false,
257
+ desc: "Optional keyword filter.",
258
+ alias: "q"
259
+ };
260
+ var fieldsFlag = {
261
+ name: "fields",
262
+ type: "json",
263
+ required: false,
264
+ desc: "Optional result field projection JSON array.",
265
+ alias: "f"
266
+ };
267
+ var limitFlag = {
268
+ name: "limit",
269
+ type: "number",
270
+ required: false,
271
+ desc: "Optional inline result limit.",
272
+ alias: "l"
273
+ };
274
+ var offsetFlag = {
275
+ name: "offset",
276
+ type: "number",
277
+ required: false,
278
+ desc: "Optional zero-based result offset.",
279
+ alias: "o"
280
+ };
281
+ var payloadFlag = {
282
+ name: "payload",
283
+ type: "json",
284
+ required: false,
285
+ desc: "Optional snake_case object for complex capability payload fields."
286
+ };
287
+ function projectInput(ctx) {
288
+ return { project_id: ctx.num("project-id") };
289
+ }
290
+ function listInput(ctx) {
291
+ return compactInput({
292
+ ...projectInput(ctx),
293
+ query: optionalString2(ctx, "query"),
294
+ fields: optionalJson2(ctx, "fields"),
295
+ limit: optionalNumber2(ctx, "limit"),
296
+ offset: optionalNumber2(ctx, "offset")
297
+ });
298
+ }
299
+ function dashboardReportDataInput(ctx) {
300
+ return compactInput({
301
+ ...projectInput(ctx),
302
+ dashboard_id: ctx.num("dashboard-id"),
303
+ report_ids: optionalJsonArray(ctx, "report-ids"),
304
+ filters: optionalJson2(ctx, "filters"),
305
+ start_time: optionalString2(ctx, "start-time"),
306
+ end_time: optionalString2(ctx, "end-time"),
307
+ use_cache: optionalBoolean2(ctx, "use-cache"),
308
+ request_id: optionalString2(ctx, "request-id"),
309
+ timeout_seconds: optionalNumber2(ctx, "timeout-seconds"),
310
+ limit: optionalNumber2(ctx, "limit"),
311
+ format: optionalString2(ctx, "artifact-format")
312
+ });
313
+ }
314
+ function biPanelPageDataInput(ctx) {
315
+ return compactInput({
316
+ ...projectInput(ctx),
317
+ panel_id: ctx.num("panel-id"),
318
+ page_key: ctx.str("page-key"),
319
+ result_type: ctx.str("result-type"),
320
+ chart_ids: optionalJsonArray(ctx, "chart-ids"),
321
+ parameter_controls: optionalJson2(ctx, "parameter-controls"),
322
+ permission_controls: optionalJson2(ctx, "permission-controls"),
323
+ chart_filter_controls: optionalJson2(ctx, "chart-filter-controls"),
324
+ columns: optionalJson2(ctx, "columns"),
325
+ row_limit: optionalNumber2(ctx, "row-limit"),
326
+ row_offset: optionalNumber2(ctx, "row-offset"),
327
+ block_limit: optionalNumber2(ctx, "block-limit"),
328
+ block_offset: optionalNumber2(ctx, "block-offset"),
329
+ use_cache: optionalBoolean2(ctx, "use-cache"),
330
+ request_id: optionalString2(ctx, "request-id"),
331
+ timeout_seconds: optionalNumber2(ctx, "timeout-seconds"),
332
+ limit: optionalNumber2(ctx, "limit"),
333
+ format: optionalString2(ctx, "artifact-format")
334
+ });
335
+ }
336
+ function optionalString2(ctx, name) {
337
+ const value = ctx.str(name);
338
+ return value === "" ? void 0 : value;
339
+ }
340
+ function optionalNumber2(ctx, name) {
341
+ const value = ctx.str(name);
342
+ return value === "" ? void 0 : Number(value);
343
+ }
344
+ function optionalBoolean2(ctx, name) {
345
+ const value = ctx.str(name);
346
+ return value === "" ? void 0 : ctx.bool(name);
347
+ }
348
+ function stringWithDefault(ctx, name, defaultValue) {
349
+ const value = ctx.str(name);
350
+ return value === "" ? defaultValue : value;
351
+ }
352
+ function numberWithDefault(ctx, name, defaultValue) {
353
+ const value = ctx.str(name);
354
+ return value === "" ? defaultValue : Number(value);
355
+ }
356
+ function booleanWithDefault(ctx, name, defaultValue) {
357
+ const value = ctx.str(name);
358
+ return value === "" ? defaultValue : ctx.bool(name);
359
+ }
360
+ function optionalJson2(ctx, name) {
361
+ const value = ctx.str(name);
362
+ return value === "" ? void 0 : ctx.json(name);
363
+ }
364
+ function jsonArray(ctx, name) {
365
+ const value = ctx.json(name);
366
+ return Array.isArray(value) ? value : [value];
367
+ }
368
+ function optionalJsonArray(ctx, name) {
369
+ const value = ctx.str(name);
370
+ if (value === "") {
371
+ return void 0;
372
+ }
373
+ const parsed = ctx.json(name);
374
+ return Array.isArray(parsed) ? parsed : [parsed];
375
+ }
376
+ function compactInput(input) {
377
+ const result = {};
378
+ for (const [key, value] of Object.entries(input)) {
379
+ if (value !== void 0) {
380
+ result[key] = value;
381
+ }
382
+ }
383
+ return result;
384
+ }
385
+
386
+ // src/commands/te-analysis/meta/event/list.ts
387
+ var metadataEventList = createAnalysisCapabilityCommand({
388
+ resource: "event",
389
+ command: "list",
390
+ capabilityId: "metadata.event.list",
391
+ description: "List project super events.",
392
+ flags: [
393
+ projectIdFlag
394
+ ],
395
+ risk: "read",
396
+ buildInput: projectInput
397
+ });
398
+
399
+ // src/commands/te-analysis/meta/event/get.ts
400
+ var metadataEventGet = createAnalysisCapabilityCommand({
401
+ resource: "event",
402
+ command: "get",
403
+ capabilityId: "metadata.event.get",
404
+ description: "Get one super event metadata detail.",
405
+ flags: [
406
+ projectIdFlag,
407
+ { name: "event-name", type: "string", required: true, desc: "Event name." }
408
+ ],
409
+ risk: "read",
410
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_name: ctx.str("event-name") })
411
+ });
412
+
413
+ // src/commands/te-analysis/meta/event/create.ts
414
+ var metadataEventCreate = createAnalysisCapabilityCommand({
415
+ resource: "event",
416
+ command: "create",
417
+ capabilityId: "metadata.event.create",
418
+ description: "Create super events and optionally associate event properties.",
419
+ flags: [
420
+ projectIdFlag,
421
+ payloadFlag
422
+ ],
423
+ risk: "write",
424
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
425
+ });
426
+
427
+ // src/commands/te-analysis/meta/event/update.ts
428
+ var metadataEventUpdate = createAnalysisCapabilityCommand({
429
+ resource: "event",
430
+ command: "update",
431
+ capabilityId: "metadata.event.update",
432
+ description: "Update event display names and remarks.",
433
+ flags: [
434
+ projectIdFlag,
435
+ { name: "event-name", type: "string", required: true, desc: "Event name." },
436
+ { name: "event-desc", type: "string", required: false, desc: "Event display name." },
437
+ { name: "remark", type: "string", required: false, desc: "Event remark." }
438
+ ],
439
+ risk: "write",
440
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), event_name: ctx.str("event-name"), event_desc: optionalString2(ctx, "event-desc"), remark: optionalString2(ctx, "remark") })
441
+ });
442
+
443
+ // src/commands/te-analysis/meta/event/relation-update.ts
444
+ var metadataEventRelationUpdate = createAnalysisCapabilityCommand({
445
+ resource: "event",
446
+ command: "relation-update",
447
+ capabilityId: "metadata.event.relation_update",
448
+ description: "Update event-property connection or source relations.",
449
+ flags: [
450
+ projectIdFlag,
451
+ payloadFlag
452
+ ],
453
+ risk: "write",
454
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
455
+ });
456
+
457
+ // src/commands/te-analysis/meta/event/hide-update.ts
458
+ var metadataEventHideUpdate = createAnalysisCapabilityCommand({
459
+ resource: "event",
460
+ command: "hide-update",
461
+ capabilityId: "metadata.event.hide_update",
462
+ description: "Batch hide or show events.",
463
+ flags: [
464
+ projectIdFlag,
465
+ { name: "event-names", type: "json", required: true, desc: "Event names JSON array, or a JSON string accepted by common-service." },
466
+ { name: "is-hide", type: "boolean", required: true, desc: "Whether to hide the events." }
467
+ ],
468
+ risk: "write",
469
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_names: ctx.json("event-names"), is_hide: ctx.bool("is-hide") })
470
+ });
471
+
472
+ // src/commands/te-analysis/meta/event/delete.ts
473
+ var metadataEventDelete = createAnalysisCapabilityCommand({
474
+ resource: "event",
475
+ command: "delete",
476
+ capabilityId: "metadata.event.delete",
477
+ description: "Batch delete events or virtual events.",
478
+ flags: [
479
+ projectIdFlag,
480
+ { name: "event-names", type: "json", required: true, desc: "Event names JSON array, or a JSON string accepted by common-service." }
481
+ ],
482
+ risk: "write",
483
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_names: ctx.json("event-names") })
484
+ });
485
+
486
+ // src/commands/te-analysis/meta/event/influence-list.ts
487
+ var metadataEventInfluenceList = createAnalysisCapabilityCommand({
488
+ resource: "event",
489
+ command: "influence-list",
490
+ capabilityId: "metadata.event.influence_list",
491
+ description: "List assets affected by event delete, hide, or update.",
492
+ flags: [
493
+ projectIdFlag,
494
+ { name: "event-name", type: "string", required: true, desc: "Event name." }
495
+ ],
496
+ risk: "read",
497
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_name: ctx.str("event-name") })
498
+ });
499
+
500
+ // src/commands/te-analysis/meta/event/changelog-list.ts
501
+ var metadataEventChangelogList = createAnalysisCapabilityCommand({
502
+ resource: "event",
503
+ command: "changelog-list",
504
+ capabilityId: "metadata.event.changelog_list",
505
+ description: "List event metadata change logs.",
506
+ flags: [
507
+ projectIdFlag,
508
+ { name: "event-name", type: "string", required: true, desc: "Event name." }
509
+ ],
510
+ risk: "read",
511
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_name: ctx.str("event-name") })
512
+ });
513
+
514
+ // src/commands/te-analysis/meta/event/index.ts
515
+ var commands = [
516
+ metadataEventList,
517
+ metadataEventGet,
518
+ metadataEventCreate,
519
+ metadataEventUpdate,
520
+ metadataEventRelationUpdate,
521
+ metadataEventHideUpdate,
522
+ metadataEventDelete,
523
+ metadataEventInfluenceList,
524
+ metadataEventChangelogList
525
+ ];
526
+ var event_default = commands;
527
+
528
+ // src/commands/te-analysis/meta/property/list.ts
529
+ var metadataPropertyList = createAnalysisCapabilityCommand({
530
+ resource: "property",
531
+ command: "list",
532
+ capabilityId: "metadata.property.list",
533
+ description: "List event or user properties.",
534
+ flags: [
535
+ projectIdFlag,
536
+ { name: "table-type", type: "string", required: true, desc: "Property table type." }
537
+ ],
538
+ risk: "read",
539
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type") })
540
+ });
541
+
542
+ // src/commands/te-analysis/meta/property/get.ts
543
+ var metadataPropertyGet = createAnalysisCapabilityCommand({
544
+ resource: "property",
545
+ command: "get",
546
+ capabilityId: "metadata.property.get",
547
+ description: "Get one event or user property metadata detail.",
548
+ flags: [
549
+ projectIdFlag,
550
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
551
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." }
552
+ ],
553
+ risk: "read",
554
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name") })
555
+ });
556
+
557
+ // src/commands/te-analysis/meta/property/create.ts
558
+ var metadataPropertyCreate = createAnalysisCapabilityCommand({
559
+ resource: "property",
560
+ command: "create",
561
+ capabilityId: "metadata.property.create",
562
+ description: "Create event or user properties and optionally associate events.",
563
+ flags: [
564
+ projectIdFlag,
565
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
566
+ payloadFlag
567
+ ],
568
+ risk: "write",
569
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), payload: ctx.json("payload") })
570
+ });
571
+
572
+ // src/commands/te-analysis/meta/property/update.ts
573
+ var metadataPropertyUpdate = createAnalysisCapabilityCommand({
574
+ resource: "property",
575
+ command: "update",
576
+ capabilityId: "metadata.property.update",
577
+ description: "Update property display names and remarks.",
578
+ flags: [
579
+ projectIdFlag,
580
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
581
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." },
582
+ { name: "prop-desc", type: "string", required: false, desc: "Property display name." },
583
+ { name: "prop-remark", type: "string", required: false, desc: "Property remark." }
584
+ ],
585
+ risk: "write",
586
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name"), prop_desc: optionalString2(ctx, "prop-desc"), prop_remark: optionalString2(ctx, "prop-remark") })
587
+ });
588
+
589
+ // src/commands/te-analysis/meta/property/relation-update.ts
590
+ var metadataPropertyRelationUpdate = createAnalysisCapabilityCommand({
591
+ resource: "property",
592
+ command: "relation-update",
593
+ capabilityId: "metadata.property.relation_update",
594
+ description: "Update property type, connection relation, or event mapping.",
595
+ flags: [
596
+ projectIdFlag,
597
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
598
+ payloadFlag
599
+ ],
600
+ risk: "write",
601
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), payload: ctx.json("payload") })
602
+ });
603
+
604
+ // src/commands/te-analysis/meta/property/hide-update.ts
605
+ var metadataPropertyHideUpdate = createAnalysisCapabilityCommand({
606
+ resource: "property",
607
+ command: "hide-update",
608
+ capabilityId: "metadata.property.hide_update",
609
+ description: "Batch hide or show properties.",
610
+ flags: [
611
+ projectIdFlag,
612
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
613
+ { name: "prop-names", type: "json", required: true, desc: "Property names JSON array, or a JSON string accepted by common-service." },
614
+ { name: "is-hide", type: "boolean", required: true, desc: "Whether to hide the properties." }
615
+ ],
616
+ risk: "write",
617
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_names: ctx.json("prop-names"), is_hide: ctx.bool("is-hide") })
618
+ });
619
+
620
+ // src/commands/te-analysis/meta/property/delete.ts
621
+ var metadataPropertyDelete = createAnalysisCapabilityCommand({
622
+ resource: "property",
623
+ command: "delete",
624
+ capabilityId: "metadata.property.delete",
625
+ description: "Batch delete properties or virtual properties.",
626
+ flags: [
627
+ projectIdFlag,
628
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
629
+ { name: "prop-names", type: "json", required: true, desc: "Property names JSON array, or a JSON string accepted by common-service." }
630
+ ],
631
+ risk: "write",
632
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_names: ctx.json("prop-names") })
633
+ });
634
+
635
+ // src/commands/te-analysis/meta/property/influence-list.ts
636
+ var metadataPropertyInfluenceList = createAnalysisCapabilityCommand({
637
+ resource: "property",
638
+ command: "influence-list",
639
+ capabilityId: "metadata.property.influence_list",
640
+ description: "List assets affected by property changes.",
641
+ flags: [
642
+ projectIdFlag,
643
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
644
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." }
645
+ ],
646
+ risk: "read",
647
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name") })
648
+ });
649
+
650
+ // src/commands/te-analysis/meta/property/changelog-list.ts
651
+ var metadataPropertyChangelogList = createAnalysisCapabilityCommand({
652
+ resource: "property",
653
+ command: "changelog-list",
654
+ capabilityId: "metadata.property.changelog_list",
655
+ description: "List property metadata change logs.",
656
+ flags: [
657
+ projectIdFlag,
658
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
659
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." }
660
+ ],
661
+ risk: "read",
662
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name") })
663
+ });
664
+
665
+ // src/commands/te-analysis/meta/property/related-events.ts
666
+ var metadataPropertyRelatedEvents = createAnalysisCapabilityCommand({
667
+ resource: "property",
668
+ command: "related-events",
669
+ capabilityId: "metadata.property.related_events",
670
+ description: "List events related to one event property.",
671
+ flags: [
672
+ projectIdFlag,
673
+ { name: "prop-name", type: "string", required: true, desc: "Event property column name." }
674
+ ],
675
+ risk: "read",
676
+ buildInput: (ctx) => ({ ...projectInput(ctx), prop_name: ctx.str("prop-name") })
677
+ });
678
+
679
+ // src/commands/te-analysis/meta/property/index.ts
680
+ var commands2 = [
681
+ metadataPropertyList,
682
+ metadataPropertyGet,
683
+ metadataPropertyCreate,
684
+ metadataPropertyUpdate,
685
+ metadataPropertyRelationUpdate,
686
+ metadataPropertyHideUpdate,
687
+ metadataPropertyDelete,
688
+ metadataPropertyInfluenceList,
689
+ metadataPropertyChangelogList,
690
+ metadataPropertyRelatedEvents
691
+ ];
692
+ var property_default = commands2;
693
+
694
+ // src/commands/te-analysis/meta/virtual-event/create.ts
695
+ var metadataVirtualEventCreate = createAnalysisCapabilityCommand({
696
+ resource: "virtual-event",
697
+ command: "create",
698
+ capabilityId: "metadata.virtual_event.create",
699
+ description: "Create a virtual event from events and filters.",
700
+ flags: [
701
+ projectIdFlag,
702
+ payloadFlag,
703
+ { name: "override", type: "boolean", required: false, desc: "Whether to override an existing virtual event rule." }
704
+ ],
705
+ risk: "write",
706
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), payload: ctx.json("payload"), override: optionalBoolean2(ctx, "override") })
707
+ });
708
+
709
+ // src/commands/te-analysis/meta/virtual-event/get.ts
710
+ var metadataVirtualEventGet = createAnalysisCapabilityCommand({
711
+ resource: "virtual-event",
712
+ command: "get",
713
+ capabilityId: "metadata.virtual_event.get",
714
+ description: "Get virtual event rule.",
715
+ flags: [
716
+ projectIdFlag,
717
+ { name: "v-event-id", type: "number", required: true, desc: "Virtual event ID." }
718
+ ],
719
+ risk: "read",
720
+ buildInput: (ctx) => ({ ...projectInput(ctx), v_event_id: ctx.num("v-event-id") })
721
+ });
722
+
723
+ // src/commands/te-analysis/meta/virtual-event/delete.ts
724
+ var metadataVirtualEventDelete = createAnalysisCapabilityCommand({
725
+ resource: "virtual-event",
726
+ command: "delete",
727
+ capabilityId: "metadata.virtual_event.delete",
728
+ description: "Delete a virtual event rule.",
729
+ flags: [
730
+ projectIdFlag,
731
+ { name: "v-event-id", type: "number", required: true, desc: "Virtual event ID." }
732
+ ],
733
+ risk: "write",
734
+ buildInput: (ctx) => ({ ...projectInput(ctx), v_event_id: ctx.num("v-event-id") })
735
+ });
736
+
737
+ // src/commands/te-analysis/meta/virtual-event/index.ts
738
+ var commands3 = [
739
+ metadataVirtualEventCreate,
740
+ metadataVirtualEventGet,
741
+ metadataVirtualEventDelete
742
+ ];
743
+ var virtual_event_default = commands3;
744
+
745
+ // src/commands/te-analysis/meta/virtual-property/create.ts
746
+ var metadataVirtualPropertyCreate = createAnalysisCapabilityCommand({
747
+ resource: "virtual-property",
748
+ command: "create",
749
+ capabilityId: "metadata.virtual_property.create",
750
+ description: "Create a SQL virtual event or user property.",
751
+ flags: [
752
+ projectIdFlag,
753
+ payloadFlag
754
+ ],
755
+ risk: "write",
756
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
757
+ });
758
+
759
+ // src/commands/te-analysis/meta/virtual-property/sql-rule-update.ts
760
+ var metadataVirtualPropertySqlRuleUpdate = createAnalysisCapabilityCommand({
761
+ resource: "virtual-property",
762
+ command: "sql-rule-update",
763
+ capabilityId: "metadata.virtual_property.sql_rule_update",
764
+ description: "Update SQL virtual property rule.",
765
+ flags: [
766
+ projectIdFlag,
767
+ payloadFlag
768
+ ],
769
+ risk: "write",
770
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
771
+ });
772
+
773
+ // src/commands/te-analysis/meta/virtual-property/sql-rule-delete.ts
774
+ var metadataVirtualPropertySqlRuleDelete = createAnalysisCapabilityCommand({
775
+ resource: "virtual-property",
776
+ command: "sql-rule-delete",
777
+ capabilityId: "metadata.virtual_property.sql_rule_delete",
778
+ description: "Delete or revoke SQL virtual property rule.",
779
+ flags: [
780
+ projectIdFlag,
781
+ { name: "v-prop-id", type: "number", required: true, desc: "Virtual property ID." },
782
+ { name: "operation", type: "string", required: false, desc: "Delete operation. Use revoke to revoke instead of delete." }
783
+ ],
784
+ risk: "write",
785
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), v_prop_id: ctx.num("v-prop-id"), operation: optionalString2(ctx, "operation") })
786
+ });
787
+
788
+ // src/commands/te-analysis/meta/virtual-property/index.ts
789
+ var commands4 = [
790
+ metadataVirtualPropertyCreate,
791
+ metadataVirtualPropertySqlRuleUpdate,
792
+ metadataVirtualPropertySqlRuleDelete
793
+ ];
794
+ var virtual_property_default = commands4;
795
+
796
+ // src/commands/te-analysis/meta/metric/list.ts
797
+ var metadataMetricList = createAnalysisCapabilityCommand({
798
+ resource: "metric",
799
+ command: "list",
800
+ capabilityId: "metadata.metric.list",
801
+ description: "List project metrics.",
802
+ flags: [
803
+ projectIdFlag,
804
+ { name: "ignore-authentication", type: "boolean", required: false, desc: "Whether to skip asset authentication status decoration." }
805
+ ],
806
+ risk: "read",
807
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), ignore_authentication: optionalBoolean2(ctx, "ignore-authentication") })
808
+ });
809
+
810
+ // src/commands/te-analysis/meta/metric/get.ts
811
+ var metadataMetricGet = createAnalysisCapabilityCommand({
812
+ resource: "metric",
813
+ command: "get",
814
+ capabilityId: "metadata.metric.get",
815
+ description: "Get metric definition, events, and params.",
816
+ flags: [
817
+ projectIdFlag,
818
+ { name: "metric-id", type: "number", required: true, desc: "Metric ID." }
819
+ ],
820
+ risk: "read",
821
+ buildInput: (ctx) => ({ ...projectInput(ctx), metric_id: ctx.num("metric-id") })
822
+ });
823
+
824
+ // src/commands/te-analysis/meta/metric/create.ts
825
+ var metadataMetricCreate = createAnalysisCapabilityCommand({
826
+ resource: "metric",
827
+ command: "create",
828
+ capabilityId: "metadata.metric.create",
829
+ description: "Create a metric from event or retention analysis configuration.",
830
+ flags: [
831
+ projectIdFlag,
832
+ payloadFlag
833
+ ],
834
+ risk: "write",
835
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
836
+ });
837
+
838
+ // src/commands/te-analysis/meta/metric/update.ts
839
+ var metadataMetricUpdate = createAnalysisCapabilityCommand({
840
+ resource: "metric",
841
+ command: "update",
842
+ capabilityId: "metadata.metric.update",
843
+ description: "Update metric definition, name, and remark.",
844
+ flags: [
845
+ projectIdFlag,
846
+ payloadFlag
847
+ ],
848
+ risk: "write",
849
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
850
+ });
851
+
852
+ // src/commands/te-analysis/meta/metric/delete.ts
853
+ var metadataMetricDelete = createAnalysisCapabilityCommand({
854
+ resource: "metric",
855
+ command: "delete",
856
+ capabilityId: "metadata.metric.delete",
857
+ description: "Delete a metric.",
858
+ flags: [
859
+ projectIdFlag,
860
+ { name: "metric-id", type: "number", required: true, desc: "Metric ID." }
861
+ ],
862
+ risk: "write",
863
+ buildInput: (ctx) => ({ ...projectInput(ctx), metric_id: ctx.num("metric-id") })
864
+ });
865
+
866
+ // src/commands/te-analysis/meta/metric/index.ts
867
+ var commands5 = [
868
+ metadataMetricList,
869
+ metadataMetricGet,
870
+ metadataMetricCreate,
871
+ metadataMetricUpdate,
872
+ metadataMetricDelete
873
+ ];
874
+ var metric_default = commands5;
875
+
876
+ // src/commands/te-analysis/meta/asset/search.ts
877
+ var metadataAssetSearch = createAnalysisCapabilityCommand({
878
+ resource: "asset",
879
+ command: "search",
880
+ capabilityId: "metadata.asset.search",
881
+ description: "Search project assets by keyword.",
882
+ flags: [
883
+ projectIdFlag,
884
+ payloadFlag
885
+ ],
886
+ risk: "read",
887
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
888
+ });
889
+
890
+ // src/commands/te-analysis/meta/asset/recent-list.ts
891
+ var metadataAssetRecentList = createAnalysisCapabilityCommand({
892
+ resource: "asset",
893
+ command: "recent-list",
894
+ capabilityId: "metadata.asset.recent_list",
895
+ description: "List recently visited assets for the current user.",
896
+ flags: [
897
+ projectIdFlag,
898
+ payloadFlag
899
+ ],
900
+ risk: "read",
901
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
902
+ });
903
+
904
+ // src/commands/te-analysis/meta/asset/authentication-list.ts
905
+ var metadataAssetAuthenticationList = createAnalysisCapabilityCommand({
906
+ resource: "asset",
907
+ command: "authentication-list",
908
+ capabilityId: "metadata.asset_authentication.list",
909
+ description: "List authenticatable project assets and authentication status.",
910
+ flags: [
911
+ projectIdFlag
912
+ ],
913
+ risk: "read",
914
+ buildInput: projectInput
915
+ });
916
+
917
+ // src/commands/te-analysis/meta/asset/authentication-update.ts
918
+ var metadataAssetAuthenticationUpdate = createAnalysisCapabilityCommand({
919
+ resource: "asset",
920
+ command: "authentication-update",
921
+ capabilityId: "metadata.asset_authentication.update",
922
+ description: "Batch authenticate or unauthenticate assets.",
923
+ flags: [
924
+ projectIdFlag,
925
+ payloadFlag
926
+ ],
927
+ risk: "write",
928
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
929
+ });
930
+
931
+ // src/commands/te-analysis/meta/asset/abnormal-list.ts
932
+ var metadataAssetAbnormalList = createAnalysisCapabilityCommand({
933
+ resource: "asset",
934
+ command: "abnormal-list",
935
+ capabilityId: "metadata.asset_abnormal.list",
936
+ description: "List abnormal assets by resource type.",
937
+ flags: [
938
+ projectIdFlag,
939
+ { name: "resource-types", type: "string", required: true, desc: "Resource types to query." }
940
+ ],
941
+ risk: "read",
942
+ buildInput: (ctx) => ({ ...projectInput(ctx), resource_types: ctx.str("resource-types") })
943
+ });
944
+
945
+ // src/commands/te-analysis/meta/asset/abnormal-get.ts
946
+ var metadataAssetAbnormalGet = createAnalysisCapabilityCommand({
947
+ resource: "asset",
948
+ command: "abnormal-get",
949
+ capabilityId: "metadata.asset_abnormal.get",
950
+ description: "Get abnormal reason for one asset.",
951
+ flags: [
952
+ projectIdFlag,
953
+ { name: "resource-type", type: "string", required: true, desc: "Resource type." },
954
+ { name: "resource-id", type: "string", required: false, desc: "Resource ID." },
955
+ { name: "resource-name", type: "string", required: false, desc: "Resource name." },
956
+ { name: "table-type", type: "number", required: false, desc: "Property table type when the resource is a property." }
957
+ ],
958
+ risk: "read",
959
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), resource_type: ctx.str("resource-type"), resource_id: optionalString2(ctx, "resource-id"), resource_name: optionalString2(ctx, "resource-name"), table_type: optionalNumber2(ctx, "table-type") })
960
+ });
961
+
962
+ // src/commands/te-analysis/meta/asset/index.ts
963
+ var commands6 = [
964
+ metadataAssetSearch,
965
+ metadataAssetRecentList,
966
+ metadataAssetAuthenticationList,
967
+ metadataAssetAuthenticationUpdate,
968
+ metadataAssetAbnormalList,
969
+ metadataAssetAbnormalGet
970
+ ];
971
+ var asset_default = commands6;
972
+
973
+ // src/commands/te-analysis/meta/exchange/config-update.ts
974
+ var metadataExchangeConfigUpdate = createAnalysisCapabilityCommand({
975
+ resource: "exchange",
976
+ command: "config-update",
977
+ capabilityId: "metadata.exchange_config.update",
978
+ description: "Update exchange-rate configuration switch or value.",
979
+ flags: [
980
+ projectIdFlag,
981
+ { name: "config-val", type: "string", required: true, desc: "Exchange-rate configuration value." }
982
+ ],
983
+ risk: "write",
984
+ buildInput: (ctx) => ({ ...projectInput(ctx), config_val: ctx.str("config-val") })
985
+ });
986
+
987
+ // src/commands/te-analysis/meta/exchange/rule-list.ts
988
+ var metadataExchangeRuleList = createAnalysisCapabilityCommand({
989
+ resource: "exchange",
990
+ command: "rule-list",
991
+ capabilityId: "metadata.exchange_rule.list",
992
+ description: "List exchange-rate conversion rules.",
993
+ flags: [
994
+ projectIdFlag
995
+ ],
996
+ risk: "read",
997
+ buildInput: projectInput
998
+ });
999
+
1000
+ // src/commands/te-analysis/meta/exchange/rule-validate.ts
1001
+ var metadataExchangeRuleValidate = createAnalysisCapabilityCommand({
1002
+ resource: "exchange",
1003
+ command: "rule-validate",
1004
+ capabilityId: "metadata.exchange_rule.validate",
1005
+ description: "Validate affected range before saving exchange-rate rules.",
1006
+ flags: [
1007
+ projectIdFlag,
1008
+ payloadFlag
1009
+ ],
1010
+ risk: "read",
1011
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
1012
+ });
1013
+
1014
+ // src/commands/te-analysis/meta/exchange/rule-update.ts
1015
+ var metadataExchangeRuleUpdate = createAnalysisCapabilityCommand({
1016
+ resource: "exchange",
1017
+ command: "rule-update",
1018
+ capabilityId: "metadata.exchange_rule.update",
1019
+ description: "Save currency field, amount field, and target currency rules.",
1020
+ flags: [
1021
+ projectIdFlag,
1022
+ payloadFlag
1023
+ ],
1024
+ risk: "write",
1025
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
1026
+ });
1027
+
1028
+ // src/commands/te-analysis/meta/exchange/rate-refresh.ts
1029
+ var metadataExchangeRateRefresh = createAnalysisCapabilityCommand({
1030
+ resource: "exchange",
1031
+ command: "rate-refresh",
1032
+ capabilityId: "metadata.exchange_rate.refresh",
1033
+ description: "Refresh exchange-rate data manually.",
1034
+ flags: [
1035
+ projectIdFlag
1036
+ ],
1037
+ risk: "write",
1038
+ buildInput: projectInput
1039
+ });
1040
+
1041
+ // src/commands/te-analysis/meta/exchange/index.ts
1042
+ var commands7 = [
1043
+ metadataExchangeConfigUpdate,
1044
+ metadataExchangeRuleList,
1045
+ metadataExchangeRuleValidate,
1046
+ metadataExchangeRuleUpdate,
1047
+ metadataExchangeRateRefresh
1048
+ ];
1049
+ var exchange_default = commands7;
1050
+
1051
+ // src/commands/te-analysis/meta/super-metadata/export.ts
1052
+ var metadataSuperMetadataExport = createAnalysisCapabilityCommand({
1053
+ resource: "super-metadata",
1054
+ command: "export",
1055
+ capabilityId: "metadata.super_metadata.export",
1056
+ description: "Export super event and super property configuration as an asynchronous XLSX artifact.",
1057
+ flags: [
1058
+ projectIdFlag,
1059
+ { name: "request-id", type: "string", required: false, desc: "Optional cli_<32 lowercase hex> request ID. Generated when omitted." },
1060
+ { name: "timeout-seconds", type: "number", required: false, desc: "Export timeout seconds. Default: 3600, max: 7200." }
1061
+ ],
1062
+ risk: "read",
1063
+ buildInput: (ctx) => compactInput({
1064
+ ...projectInput(ctx),
1065
+ request_id: optionalString2(ctx, "request-id"),
1066
+ timeout_seconds: optionalNumber2(ctx, "timeout-seconds")
1067
+ })
1068
+ });
1069
+
1070
+ // src/commands/te-analysis/meta/super-metadata/import.ts
1071
+ var metadataSuperMetadataImport = createAnalysisCapabilityCommand({
1072
+ resource: "super-metadata",
1073
+ command: "import",
1074
+ capabilityId: "metadata.super_metadata.import",
1075
+ description: "Pre-import and confirm-import super event and super property configuration.",
1076
+ flags: [
1077
+ projectIdFlag,
1078
+ { name: "payload", type: "json", required: false, desc: "Optional capability payload JSON." }
1079
+ ],
1080
+ risk: "write",
1081
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), payload: optionalJson2(ctx, "payload") })
1082
+ });
1083
+
1084
+ // src/commands/te-analysis/meta/super-metadata/index.ts
1085
+ var commands8 = [
1086
+ metadataSuperMetadataExport,
1087
+ metadataSuperMetadataImport
1088
+ ];
1089
+ var super_metadata_default = commands8;
1090
+
1091
+ // src/commands/te-analysis/meta/datatable/columns-get.ts
1092
+ var metadataDataTableColumnsGet = createAnalysisCapabilityCommand({
1093
+ resource: "datatable",
1094
+ command: "columns-get",
1095
+ capabilityId: "metadata.data_table.columns_get",
1096
+ description: "Get columns for a project table reference.",
1097
+ flags: [
1098
+ projectIdFlag,
1099
+ { name: "table-ref", type: "string", required: true, desc: "Project table reference." }
176
1100
  ],
177
1101
  risk: "read",
178
- mcpService: "te_analysis_extend",
179
- buildArgs: (ctx) => ({
180
- projectId: ctx.num("project_id"),
181
- alertId: ctx.num("alert_id")
182
- })
1102
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_ref: ctx.str("table-ref") })
183
1103
  });
184
1104
 
185
- // src/commands/te-analysis/meta/create-alert.ts
186
- var createAlert = createMcpCommand({
187
- command: "+create_alert",
188
- description: "Create a new alert. After creation, use list_alerts or get_alert to retrieve the created alert.",
1105
+ // src/commands/te-analysis/meta/datatable/influence-list.ts
1106
+ var metadataDataTableInfluenceList = createAnalysisCapabilityCommand({
1107
+ resource: "datatable",
1108
+ command: "influence-list",
1109
+ capabilityId: "metadata.data_table.influence_list",
1110
+ description: "List metadata and assets affected by data table deletion or column changes.",
189
1111
  flags: [
190
- { name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
191
- { name: "definition", type: "json", required: true, desc: "Alert definition JSON. See +get_alert_definition_schema for the complete structure." }
1112
+ projectIdFlag,
1113
+ { name: "datatable-id", type: "number", required: true, desc: "Data table ID." }
192
1114
  ],
193
- risk: "write",
194
- mcpService: "te_analysis_extend",
195
- buildArgs: (ctx) => ({
196
- projectId: ctx.num("project_id"),
197
- definition: requiredJsonString(ctx, "definition")
198
- })
1115
+ risk: "read",
1116
+ buildInput: (ctx) => ({ ...projectInput(ctx), datatable_id: ctx.num("datatable-id") })
199
1117
  });
200
1118
 
201
- // src/commands/te-analysis/meta/update-alert.ts
202
- var updateAlert = createMcpCommand({
203
- command: "+update_alert",
204
- description: "Update an existing alert. All fields in the definition will replace existing values.",
1119
+ // src/commands/te-analysis/meta/datatable/version-list.ts
1120
+ var metadataDataTableVersionList = createAnalysisCapabilityCommand({
1121
+ resource: "datatable",
1122
+ command: "version-list",
1123
+ capabilityId: "metadata.data_table_version.list",
1124
+ description: "List data table historical versions.",
205
1125
  flags: [
206
- { name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
207
- { name: "alert_id", type: "number", required: true, alias: "a", desc: "Alert ID" },
208
- { name: "definition", type: "json", required: true, desc: "Alert definition JSON with updated fields. See +get_alert_definition_schema for the complete structure." }
1126
+ projectIdFlag,
1127
+ { name: "datatable-id", type: "number", required: true, desc: "Data table ID." }
209
1128
  ],
210
- risk: "write",
211
- mcpService: "te_analysis_extend",
212
- buildArgs: (ctx) => ({
213
- projectId: ctx.num("project_id"),
214
- alertId: ctx.num("alert_id"),
215
- definition: requiredJsonString(ctx, "definition")
216
- })
1129
+ risk: "read",
1130
+ buildInput: (ctx) => ({ ...projectInput(ctx), datatable_id: ctx.num("datatable-id") })
217
1131
  });
218
1132
 
219
- // src/commands/te-analysis/meta/delete-alert.ts
220
- var deleteAlert = createMcpCommand({
221
- command: "+delete_alert",
222
- description: "Delete an alert by alertId",
1133
+ // src/commands/te-analysis/meta/datatable/version-get.ts
1134
+ var metadataDataTableVersionGet = createAnalysisCapabilityCommand({
1135
+ resource: "datatable",
1136
+ command: "version-get",
1137
+ capabilityId: "metadata.data_table_version.get",
1138
+ description: "Get data table version detail.",
223
1139
  flags: [
224
- { name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
225
- { name: "alert_id", type: "number", required: true, desc: "Alert ID to delete" }
1140
+ projectIdFlag,
1141
+ { name: "version-id", type: "number", required: true, desc: "Data table version ID." }
226
1142
  ],
227
- risk: "write",
228
- mcpService: "te_analysis_extend",
229
- buildArgs: (ctx) => ({
230
- projectId: ctx.num("project_id"),
231
- alertId: ctx.num("alert_id")
232
- })
1143
+ risk: "read",
1144
+ buildInput: (ctx) => ({ ...projectInput(ctx), version_id: ctx.num("version-id") })
233
1145
  });
234
1146
 
1147
+ // src/commands/te-analysis/meta/datatable/index.ts
1148
+ var commands9 = [
1149
+ metadataDataTableColumnsGet,
1150
+ metadataDataTableInfluenceList,
1151
+ metadataDataTableVersionList,
1152
+ metadataDataTableVersionGet
1153
+ ];
1154
+ var datatable_default = commands9;
1155
+
235
1156
  // src/commands/te-analysis/meta/index.ts
236
- var commands = [
1157
+ var commands10 = [
237
1158
  getAlertDefinitionSchema,
238
1159
  listAlerts,
239
1160
  getAlert,
240
1161
  createAlert,
241
1162
  updateAlert,
242
- deleteAlert
1163
+ deleteAlert,
1164
+ ...event_default,
1165
+ ...property_default,
1166
+ ...virtual_event_default,
1167
+ ...virtual_property_default,
1168
+ ...metric_default,
1169
+ ...asset_default,
1170
+ ...exchange_default,
1171
+ ...super_metadata_default,
1172
+ ...datatable_default
243
1173
  ];
244
- var meta_default = commands;
1174
+ var meta_default = commands10;
245
1175
 
246
1176
  // src/commands/te-analysis/report/list-reports.ts
247
1177
  var listReports = createMcpCommand({
@@ -383,7 +1313,7 @@ var updateReport = createMcpCommand({
383
1313
  });
384
1314
 
385
1315
  // src/commands/te-analysis/report/index.ts
386
- var commands2 = [
1316
+ var commands11 = [
387
1317
  listReports,
388
1318
  getReportDefinition,
389
1319
  queryReportData,
@@ -391,142 +1321,7 @@ var commands2 = [
391
1321
  deleteReport,
392
1322
  updateReport
393
1323
  ];
394
- var report_default = commands2;
395
-
396
- // src/commands/te-analysis/capability-shared.ts
397
- function createAnalysisCapabilityCommand(config) {
398
- return createCapabilityCommand({
399
- ...config,
400
- cliService: "analysis"
401
- });
402
- }
403
- var projectIdFlag = {
404
- name: "project-id",
405
- type: "number",
406
- required: true,
407
- desc: "Numeric project ID.",
408
- alias: "p"
409
- };
410
- var queryFlag = {
411
- name: "query",
412
- type: "string",
413
- required: false,
414
- desc: "Optional keyword filter.",
415
- alias: "q"
416
- };
417
- var fieldsFlag = {
418
- name: "fields",
419
- type: "json",
420
- required: false,
421
- desc: "Optional result field projection JSON array.",
422
- alias: "f"
423
- };
424
- var limitFlag = {
425
- name: "limit",
426
- type: "number",
427
- required: false,
428
- desc: "Optional inline result limit.",
429
- alias: "l"
430
- };
431
- var offsetFlag = {
432
- name: "offset",
433
- type: "number",
434
- required: false,
435
- desc: "Optional zero-based result offset.",
436
- alias: "o"
437
- };
438
- var payloadFlag = {
439
- name: "payload",
440
- type: "json",
441
- required: false,
442
- desc: "Optional snake_case object for complex capability payload fields."
443
- };
444
- function projectInput(ctx) {
445
- return { project_id: ctx.num("project-id") };
446
- }
447
- function listInput(ctx) {
448
- return compactInput({
449
- ...projectInput(ctx),
450
- query: optionalString3(ctx, "query"),
451
- fields: optionalJson4(ctx, "fields"),
452
- limit: optionalNumber3(ctx, "limit"),
453
- offset: optionalNumber3(ctx, "offset")
454
- });
455
- }
456
- function dashboardReportDataInput(ctx) {
457
- return compactInput({
458
- ...projectInput(ctx),
459
- dashboard_id: ctx.num("dashboard-id"),
460
- report_ids: optionalJsonArray(ctx, "report-ids"),
461
- filters: optionalJson4(ctx, "filters"),
462
- start_time: optionalString3(ctx, "start-time"),
463
- end_time: optionalString3(ctx, "end-time"),
464
- use_cache: optionalBoolean5(ctx, "use-cache"),
465
- request_id: optionalString3(ctx, "request-id"),
466
- timeout_seconds: optionalNumber3(ctx, "timeout-seconds"),
467
- limit: optionalNumber3(ctx, "limit"),
468
- format: optionalString3(ctx, "artifact-format")
469
- });
470
- }
471
- function biPanelPageDataInput(ctx) {
472
- return compactInput({
473
- ...projectInput(ctx),
474
- panel_id: ctx.num("panel-id"),
475
- page_key: ctx.str("page-key"),
476
- result_type: ctx.str("result-type"),
477
- chart_ids: optionalJsonArray(ctx, "chart-ids"),
478
- parameter_controls: optionalJson4(ctx, "parameter-controls"),
479
- permission_controls: optionalJson4(ctx, "permission-controls"),
480
- chart_filter_controls: optionalJson4(ctx, "chart-filter-controls"),
481
- columns: optionalJson4(ctx, "columns"),
482
- row_limit: optionalNumber3(ctx, "row-limit"),
483
- row_offset: optionalNumber3(ctx, "row-offset"),
484
- block_limit: optionalNumber3(ctx, "block-limit"),
485
- block_offset: optionalNumber3(ctx, "block-offset"),
486
- use_cache: optionalBoolean5(ctx, "use-cache"),
487
- request_id: optionalString3(ctx, "request-id"),
488
- timeout_seconds: optionalNumber3(ctx, "timeout-seconds"),
489
- limit: optionalNumber3(ctx, "limit"),
490
- format: optionalString3(ctx, "artifact-format")
491
- });
492
- }
493
- function optionalString3(ctx, name) {
494
- const value = ctx.str(name);
495
- return value === "" ? void 0 : value;
496
- }
497
- function optionalNumber3(ctx, name) {
498
- const value = ctx.str(name);
499
- return value === "" ? void 0 : Number(value);
500
- }
501
- function optionalBoolean5(ctx, name) {
502
- const value = ctx.str(name);
503
- return value === "" ? void 0 : ctx.bool(name);
504
- }
505
- function optionalJson4(ctx, name) {
506
- const value = ctx.str(name);
507
- return value === "" ? void 0 : ctx.json(name);
508
- }
509
- function jsonArray(ctx, name) {
510
- const value = ctx.json(name);
511
- return Array.isArray(value) ? value : [value];
512
- }
513
- function optionalJsonArray(ctx, name) {
514
- const value = ctx.str(name);
515
- if (value === "") {
516
- return void 0;
517
- }
518
- const parsed = ctx.json(name);
519
- return Array.isArray(parsed) ? parsed : [parsed];
520
- }
521
- function compactInput(input) {
522
- const result = {};
523
- for (const [key, value] of Object.entries(input)) {
524
- if (value !== void 0) {
525
- result[key] = value;
526
- }
527
- }
528
- return result;
529
- }
1324
+ var report_default = commands11;
530
1325
 
531
1326
  // src/commands/te-analysis/dashboard/list.ts
532
1327
  var dashboardList = createAnalysisCapabilityCommand({
@@ -557,10 +1352,10 @@ var dashboardCreate = createAnalysisCapabilityCommand({
557
1352
  buildInput: (ctx) => compactInput({
558
1353
  ...projectInput(ctx),
559
1354
  dashboard_name: ctx.str("dashboard-name"),
560
- space_id: optionalNumber3(ctx, "space-id"),
561
- folder_id: optionalNumber3(ctx, "folder-id"),
562
- initial_report_id: optionalNumber3(ctx, "initial-report-id"),
563
- payload: optionalJson4(ctx, "payload")
1355
+ space_id: optionalNumber2(ctx, "space-id"),
1356
+ folder_id: optionalNumber2(ctx, "folder-id"),
1357
+ initial_report_id: optionalNumber2(ctx, "initial-report-id"),
1358
+ payload: optionalJson2(ctx, "payload")
564
1359
  })
565
1360
  });
566
1361
 
@@ -579,7 +1374,7 @@ var dashboardGet = createAnalysisCapabilityCommand({
579
1374
  buildInput: (ctx) => compactInput({
580
1375
  ...projectInput(ctx),
581
1376
  dashboard_id: ctx.num("dashboard-id"),
582
- use_cache: optionalBoolean5(ctx, "use-cache")
1377
+ use_cache: optionalBoolean2(ctx, "use-cache")
583
1378
  })
584
1379
  });
585
1380
 
@@ -608,17 +1403,17 @@ var dashboardUpdate = createAnalysisCapabilityCommand({
608
1403
  buildInput: (ctx) => compactInput({
609
1404
  ...projectInput(ctx),
610
1405
  operation: ctx.str("operation"),
611
- dashboard_id: optionalNumber3(ctx, "dashboard-id"),
1406
+ dashboard_id: optionalNumber2(ctx, "dashboard-id"),
612
1407
  dashboard_ids: optionalJsonArray(ctx, "dashboard-ids"),
613
- dashboard_name: optionalString3(ctx, "dashboard-name"),
614
- zone_offset: optionalNumber3(ctx, "zone-offset"),
615
- refresh_type: optionalNumber3(ctx, "refresh-type"),
616
- dashboard_status: optionalNumber3(ctx, "dashboard-status"),
617
- note_id: optionalNumber3(ctx, "note-id"),
618
- note_title: optionalString3(ctx, "note-title"),
619
- description: optionalString3(ctx, "description"),
620
- ui_config: optionalString3(ctx, "ui-config"),
621
- payload: optionalJson4(ctx, "payload")
1408
+ dashboard_name: optionalString2(ctx, "dashboard-name"),
1409
+ zone_offset: optionalNumber2(ctx, "zone-offset"),
1410
+ refresh_type: optionalNumber2(ctx, "refresh-type"),
1411
+ dashboard_status: optionalNumber2(ctx, "dashboard-status"),
1412
+ note_id: optionalNumber2(ctx, "note-id"),
1413
+ note_title: optionalString2(ctx, "note-title"),
1414
+ description: optionalString2(ctx, "description"),
1415
+ ui_config: optionalString2(ctx, "ui-config"),
1416
+ payload: optionalJson2(ctx, "payload")
622
1417
  })
623
1418
  });
624
1419
 
@@ -652,8 +1447,8 @@ var dashboardShare = createAnalysisCapabilityCommand({
652
1447
  buildInput: (ctx) => compactInput({
653
1448
  ...projectInput(ctx),
654
1449
  dashboard_id: ctx.num("dashboard-id"),
655
- member_authorities: optionalJson4(ctx, "member-authorities"),
656
- payload: optionalJson4(ctx, "payload")
1450
+ member_authorities: optionalJson2(ctx, "member-authorities"),
1451
+ payload: optionalJson2(ctx, "payload")
657
1452
  })
658
1453
  });
659
1454
 
@@ -701,17 +1496,17 @@ var dashboardCopy = createAnalysisCapabilityCommand({
701
1496
  { name: "dashboard-id", type: "number", required: true, desc: "Source dashboard ID." },
702
1497
  { name: "dashboard-name", type: "string", required: true, desc: "New dashboard name." },
703
1498
  { name: "report-copy", type: "boolean", required: false, desc: "Whether to copy reports. Default: false." },
704
- { name: "to-space-id", type: "number", required: false, desc: "Target project space ID." },
705
- { name: "to-folder-id", type: "number", required: false, desc: "Target folder ID." }
1499
+ { name: "to-space-id", type: "number", required: false, desc: "Target project space ID. If both target IDs are omitted, copy to the source dashboard location." },
1500
+ { name: "to-folder-id", type: "number", required: false, desc: "Target folder ID. If both target IDs are omitted, copy to the source dashboard location." }
706
1501
  ],
707
1502
  risk: "write",
708
1503
  buildInput: (ctx) => compactInput({
709
1504
  ...projectInput(ctx),
710
1505
  dashboard_id: ctx.num("dashboard-id"),
711
1506
  dashboard_name: ctx.str("dashboard-name"),
712
- report_copy: optionalBoolean5(ctx, "report-copy"),
713
- to_space_id: optionalNumber3(ctx, "to-space-id"),
714
- to_folder_id: optionalNumber3(ctx, "to-folder-id")
1507
+ report_copy: booleanWithDefault(ctx, "report-copy", false),
1508
+ to_space_id: optionalNumber2(ctx, "to-space-id"),
1509
+ to_folder_id: optionalNumber2(ctx, "to-folder-id")
715
1510
  })
716
1511
  });
717
1512
 
@@ -730,7 +1525,7 @@ var dashboardFreeze = createAnalysisCapabilityCommand({
730
1525
  buildInput: (ctx) => compactInput({
731
1526
  ...projectInput(ctx),
732
1527
  dashboard_ids: jsonArray(ctx, "dashboard-ids"),
733
- freeze: optionalBoolean5(ctx, "freeze")
1528
+ freeze: optionalBoolean2(ctx, "freeze")
734
1529
  })
735
1530
  });
736
1531
 
@@ -763,7 +1558,7 @@ var dashboardTaskStatus = createAnalysisCapabilityCommand({
763
1558
  });
764
1559
 
765
1560
  // src/commands/te-analysis/dashboard/index.ts
766
- var commands3 = [
1561
+ var commands12 = [
767
1562
  dashboardList,
768
1563
  dashboardCreate,
769
1564
  dashboardGet,
@@ -777,7 +1572,7 @@ var commands3 = [
777
1572
  dashboardAbnormalGet,
778
1573
  dashboardTaskStatus
779
1574
  ];
780
- var dashboard_default = commands3;
1575
+ var dashboard_default = commands12;
781
1576
 
782
1577
  // src/commands/te-analysis/dashboard-report-data/run.ts
783
1578
  var dashboardReportDataRun = createAnalysisCapabilityCommand({
@@ -789,7 +1584,7 @@ var dashboardReportDataRun = createAnalysisCapabilityCommand({
789
1584
  projectIdFlag,
790
1585
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
791
1586
  { name: "report-ids", type: "json", required: false, desc: "Optional report ID array. Omit to query all dashboard reports." },
792
- { name: "filters", type: "json", required: false, desc: "Optional dashboard filter JSON." },
1587
+ { name: "filters", type: "json", required: false, desc: 'Optional analysis Filter JSON injected as commonFilter.aiFilter. Use analysis +get_filter_schema for schema, e.g. {"relation":"and","filts":[...]}.' },
793
1588
  { name: "start-time", type: "string", required: false, desc: "Optional start date/time." },
794
1589
  { name: "end-time", type: "string", required: false, desc: "Optional end date/time." },
795
1590
  { name: "use-cache", type: "boolean", required: false, desc: "Whether to use cache. Default: true." },
@@ -811,7 +1606,7 @@ var dashboardReportDataExport = createAnalysisCapabilityCommand({
811
1606
  projectIdFlag,
812
1607
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
813
1608
  { name: "report-ids", type: "json", required: false, desc: "Optional report ID array. Omit to query all dashboard reports." },
814
- { name: "filters", type: "json", required: false, desc: "Optional dashboard filter JSON." },
1609
+ { name: "filters", type: "json", required: false, desc: 'Optional analysis Filter JSON injected as commonFilter.aiFilter. Use analysis +get_filter_schema for schema, e.g. {"relation":"and","filts":[...]}.' },
815
1610
  { name: "start-time", type: "string", required: false, desc: "Optional start date/time." },
816
1611
  { name: "end-time", type: "string", required: false, desc: "Optional end date/time." },
817
1612
  { name: "use-cache", type: "boolean", required: false, desc: "Whether to use cache. Default: true." },
@@ -824,11 +1619,11 @@ var dashboardReportDataExport = createAnalysisCapabilityCommand({
824
1619
  });
825
1620
 
826
1621
  // src/commands/te-analysis/dashboard-report-data/index.ts
827
- var commands4 = [
1622
+ var commands13 = [
828
1623
  dashboardReportDataRun,
829
1624
  dashboardReportDataExport
830
1625
  ];
831
- var dashboard_report_data_default = commands4;
1626
+ var dashboard_report_data_default = commands13;
832
1627
 
833
1628
  // src/commands/te-analysis/query/cancel.ts
834
1629
  var queryCancel = createAnalysisCapabilityCommand({
@@ -843,15 +1638,99 @@ var queryCancel = createAnalysisCapabilityCommand({
843
1638
  risk: "write",
844
1639
  buildInput: (ctx) => compactInput({
845
1640
  run_id: ctx.str("run-id"),
846
- reason: optionalString3(ctx, "reason")
1641
+ reason: optionalString2(ctx, "reason")
847
1642
  })
848
1643
  });
849
1644
 
850
1645
  // src/commands/te-analysis/query/index.ts
851
- var commands5 = [
1646
+ var commands14 = [
852
1647
  queryCancel
853
1648
  ];
854
- var query_default = commands5;
1649
+ var query_default = commands14;
1650
+
1651
+ // src/commands/te-analysis/run/inspect.ts
1652
+ var runInspect = {
1653
+ service: "analysis",
1654
+ resource: "run",
1655
+ command: "inspect",
1656
+ description: "Inspect an analysis capability-gateway async run by run_id.",
1657
+ flags: [
1658
+ { name: "run-id", type: "string", required: true, desc: "Async run ID returned by an export capability." }
1659
+ ],
1660
+ risk: "read",
1661
+ dryRun: (ctx) => ({
1662
+ method: "GET",
1663
+ url: buildCapabilityGatewayUrl(
1664
+ ctx.host(),
1665
+ "analysis",
1666
+ `runs/${encodeURIComponent(ctx.str("run-id"))}`
1667
+ )
1668
+ }),
1669
+ execute: async (ctx) => callCapabilityApi(
1670
+ ctx.host(),
1671
+ "analysis",
1672
+ `runs/${encodeURIComponent(ctx.str("run-id"))}`,
1673
+ "GET"
1674
+ )
1675
+ };
1676
+
1677
+ // src/commands/te-analysis/run/index.ts
1678
+ var commands15 = [
1679
+ runInspect
1680
+ ];
1681
+ var run_default = commands15;
1682
+
1683
+ // src/commands/te-analysis/artifact/download.ts
1684
+ import { mkdir, writeFile } from "fs/promises";
1685
+ import { dirname, resolve } from "path";
1686
+ var artifactDownload = {
1687
+ service: "analysis",
1688
+ resource: "artifact",
1689
+ command: "download",
1690
+ description: "Download a run-scoped analysis capability-gateway artifact to a local file.",
1691
+ flags: [
1692
+ { name: "run-id", type: "string", required: true, desc: "Async run ID returned by an export capability." },
1693
+ { name: "artifact-id", type: "string", required: true, desc: "Artifact ID returned by an export capability." },
1694
+ { name: "output", type: "string", required: true, desc: "Local output file path. Use a file path, not a directory." }
1695
+ ],
1696
+ risk: "read",
1697
+ dryRun: (ctx) => ({
1698
+ method: "GET",
1699
+ url: buildCapabilityGatewayUrl(
1700
+ ctx.host(),
1701
+ "analysis",
1702
+ `runs/${encodeURIComponent(ctx.str("run-id"))}/artifacts/${encodeURIComponent(ctx.str("artifact-id"))}/download`
1703
+ ),
1704
+ body: {
1705
+ output_path: resolve(ctx.str("output"))
1706
+ }
1707
+ }),
1708
+ execute: async (ctx) => {
1709
+ const outputPath = resolve(ctx.str("output"));
1710
+ const artifact = await downloadCapabilityArtifact(
1711
+ ctx.host(),
1712
+ "analysis",
1713
+ ctx.str("run-id"),
1714
+ ctx.str("artifact-id")
1715
+ );
1716
+ await mkdir(dirname(outputPath), { recursive: true });
1717
+ await writeFile(outputPath, artifact.bytes);
1718
+ return {
1719
+ run_id: ctx.str("run-id"),
1720
+ artifact_id: ctx.str("artifact-id"),
1721
+ output_path: outputPath,
1722
+ bytes: artifact.bytes.byteLength,
1723
+ content_type: artifact.contentType,
1724
+ content_disposition: artifact.contentDisposition
1725
+ };
1726
+ }
1727
+ };
1728
+
1729
+ // src/commands/te-analysis/artifact/index.ts
1730
+ var commands16 = [
1731
+ artifactDownload
1732
+ ];
1733
+ var artifact_default = commands16;
855
1734
 
856
1735
  // src/commands/te-analysis/dashboard-definition/export.ts
857
1736
  var dashboardDefinitionExport = createAnalysisCapabilityCommand({
@@ -861,7 +1740,9 @@ var dashboardDefinitionExport = createAnalysisCapabilityCommand({
861
1740
  description: "Export dashboard definition JSON.",
862
1741
  flags: [
863
1742
  projectIdFlag,
864
- { name: "dashboard-folder-ids", type: "json", required: false, desc: "Dashboard folder IDs to export." },
1743
+ { name: "dashboard-id", type: "number", required: false, desc: "Single dashboard ID to export. The gateway resolves folder or project-space context." },
1744
+ { name: "dashboard-ids", type: "json", required: false, desc: "Dashboard ID array to export. The gateway resolves folder or project-space context." },
1745
+ { name: "dashboard-folder-ids", type: "json", required: false, desc: 'Private folder ID array, or advanced descriptor array: [{"dashboard_folder_id":1,"dashboard_ids":[2]}].' },
865
1746
  { name: "shared-spaces", type: "json", required: false, desc: "Shared space export descriptor array." },
866
1747
  { name: "export-file-name", type: "string", required: false, desc: "Optional export file name." },
867
1748
  payloadFlag
@@ -869,10 +1750,12 @@ var dashboardDefinitionExport = createAnalysisCapabilityCommand({
869
1750
  risk: "read",
870
1751
  buildInput: (ctx) => compactInput({
871
1752
  ...projectInput(ctx),
1753
+ dashboard_id: optionalNumber2(ctx, "dashboard-id"),
1754
+ dashboard_ids: optionalJsonArray(ctx, "dashboard-ids"),
872
1755
  dashboard_folder_ids: optionalJsonArray(ctx, "dashboard-folder-ids"),
873
- shared_spaces: optionalJson4(ctx, "shared-spaces"),
874
- export_file_name: optionalString3(ctx, "export-file-name"),
875
- payload: optionalJson4(ctx, "payload")
1756
+ shared_spaces: optionalJson2(ctx, "shared-spaces"),
1757
+ export_file_name: optionalString2(ctx, "export-file-name"),
1758
+ payload: optionalJson2(ctx, "payload")
876
1759
  })
877
1760
  });
878
1761
 
@@ -894,19 +1777,91 @@ var dashboardDefinitionImport = createAnalysisCapabilityCommand({
894
1777
  buildInput: (ctx) => compactInput({
895
1778
  ...projectInput(ctx),
896
1779
  definition: ctx.json("definition"),
897
- validate_only: optionalBoolean5(ctx, "validate-only"),
898
- dashboard_name_conflict_policy: optionalString3(ctx, "dashboard-name-conflict-policy"),
899
- space_dashboard_policy: optionalString3(ctx, "space-dashboard-policy"),
900
- payload: optionalJson4(ctx, "payload")
1780
+ validate_only: optionalBoolean2(ctx, "validate-only"),
1781
+ dashboard_name_conflict_policy: optionalString2(ctx, "dashboard-name-conflict-policy"),
1782
+ space_dashboard_policy: optionalString2(ctx, "space-dashboard-policy"),
1783
+ payload: optionalJson2(ctx, "payload")
901
1784
  })
902
1785
  });
903
1786
 
904
1787
  // src/commands/te-analysis/dashboard-definition/index.ts
905
- var commands6 = [
1788
+ var commands17 = [
906
1789
  dashboardDefinitionExport,
907
1790
  dashboardDefinitionImport
908
1791
  ];
909
- var dashboard_definition_default = commands6;
1792
+ var dashboard_definition_default = commands17;
1793
+
1794
+ // src/commands/te-analysis/dashboard-daily-report/shared.ts
1795
+ function dailyReportFlags(update) {
1796
+ const falseDefault = update ? " Default: false." : "";
1797
+ const emptyDefault = update ? " Default: empty." : "";
1798
+ const weekdayDefault = update ? " Default: 1,2,3,4,5,6,7." : "";
1799
+ const timeDefault = update ? " Default: 09:00." : "";
1800
+ const langDefault = update ? " Default: zh-CN." : "";
1801
+ const screenDefault = update ? " Default: normal." : "";
1802
+ const zoneDefault = update ? " Default: 0." : "";
1803
+ return [
1804
+ { name: "need-csv", type: "boolean", required: false, desc: `Whether to include CSV attachment.${falseDefault}` },
1805
+ { name: "host-url", type: "string", required: false, desc: `Public host URL used in report links.${emptyDefault}` },
1806
+ { name: "enable-smtp", type: "boolean", required: false, desc: `Whether to use configured SMTP for email.${falseDefault}` },
1807
+ { name: "enable-email", type: "boolean", required: false, desc: `Whether to send by email.${falseDefault}` },
1808
+ { name: "enable-dd", type: "boolean", required: false, desc: `Whether to send by DingTalk webhook.${falseDefault}` },
1809
+ { name: "dd-url", type: "json", required: false, desc: 'DingTalk webhook URL array, e.g. ["https://..."].' },
1810
+ { name: "enable-wx", type: "boolean", required: false, desc: `Whether to send by WeCom webhook.${falseDefault}` },
1811
+ { name: "wx-url", type: "json", required: false, desc: 'WeCom webhook URL array, e.g. ["https://..."].' },
1812
+ { name: "enable-feishu", type: "boolean", required: false, desc: `Whether to send by Feishu webhook.${falseDefault}` },
1813
+ { name: "feishu-info", type: "json", required: false, desc: 'Feishu config object, e.g. {"webhook":["https://..."]}.' },
1814
+ { name: "enable-kim", type: "boolean", required: false, desc: `Whether to send by KIM/custom webhook.${falseDefault}` },
1815
+ { name: "kim-url", type: "json", required: false, desc: 'KIM/custom webhook URL array, e.g. ["https://..."].' },
1816
+ { name: "enable-slack", type: "boolean", required: false, desc: `Whether to send by Slack webhook.${falseDefault}` },
1817
+ { name: "slack-url", type: "json", required: false, desc: 'Slack webhook URL array, e.g. ["https://..."].' },
1818
+ { name: "email-login-users", type: "string", required: false, desc: "Comma-separated login users for email channel." },
1819
+ { name: "email-new", type: "string", required: false, desc: "Comma-separated external emails when SMTP is enabled." },
1820
+ { name: "send-title", type: "string", required: false, desc: "Daily report title." },
1821
+ { name: "send-content", type: "string", required: false, desc: "Daily report content." },
1822
+ { name: "send-date", type: "string", required: false, desc: `Scheduled weekdays, comma-separated 1..7.${weekdayDefault}` },
1823
+ { name: "send-time", type: "string", required: false, desc: `Scheduled send time, HH:mm.${timeDefault}` },
1824
+ { name: "lang", type: "string", required: false, desc: `Report language.${langDefault}` },
1825
+ { name: "screen-type", type: "string", required: false, desc: `Screenshot screen type.${screenDefault}` },
1826
+ { name: "zone-offset", type: "number", required: false, desc: `Time zone offset.${zoneDefault}` },
1827
+ ...update ? [
1828
+ { name: "enable-send", type: "boolean", required: false, desc: "Whether to enable scheduled sending. Default: false." }
1829
+ ] : []
1830
+ ];
1831
+ }
1832
+ function dailyReportInput(ctx, update) {
1833
+ const payload = optionalJson2(ctx, "payload");
1834
+ const useDefaults = update && payload === void 0;
1835
+ return compactInput({
1836
+ ...projectInput(ctx),
1837
+ dashboard_id: ctx.num("dashboard-id"),
1838
+ need_csv: useDefaults ? booleanWithDefault(ctx, "need-csv", false) : optionalBoolean2(ctx, "need-csv"),
1839
+ host_url: useDefaults ? stringWithDefault(ctx, "host-url", "") : optionalString2(ctx, "host-url"),
1840
+ enable_smtp: useDefaults ? booleanWithDefault(ctx, "enable-smtp", false) : optionalBoolean2(ctx, "enable-smtp"),
1841
+ enable_email: useDefaults ? booleanWithDefault(ctx, "enable-email", false) : optionalBoolean2(ctx, "enable-email"),
1842
+ enable_dd: useDefaults ? booleanWithDefault(ctx, "enable-dd", false) : optionalBoolean2(ctx, "enable-dd"),
1843
+ dd_url: optionalJson2(ctx, "dd-url"),
1844
+ enable_wx: useDefaults ? booleanWithDefault(ctx, "enable-wx", false) : optionalBoolean2(ctx, "enable-wx"),
1845
+ wx_url: optionalJson2(ctx, "wx-url"),
1846
+ enable_feishu: useDefaults ? booleanWithDefault(ctx, "enable-feishu", false) : optionalBoolean2(ctx, "enable-feishu"),
1847
+ feishu_info: optionalJson2(ctx, "feishu-info"),
1848
+ enable_kim: useDefaults ? booleanWithDefault(ctx, "enable-kim", false) : optionalBoolean2(ctx, "enable-kim"),
1849
+ kim_url: optionalJson2(ctx, "kim-url"),
1850
+ enable_slack: useDefaults ? booleanWithDefault(ctx, "enable-slack", false) : optionalBoolean2(ctx, "enable-slack"),
1851
+ slack_url: optionalJson2(ctx, "slack-url"),
1852
+ email_login_users: optionalString2(ctx, "email-login-users"),
1853
+ email_new: optionalString2(ctx, "email-new"),
1854
+ send_title: optionalString2(ctx, "send-title"),
1855
+ send_content: optionalString2(ctx, "send-content"),
1856
+ send_date: useDefaults ? stringWithDefault(ctx, "send-date", "1,2,3,4,5,6,7") : optionalString2(ctx, "send-date"),
1857
+ send_time: useDefaults ? stringWithDefault(ctx, "send-time", "09:00") : optionalString2(ctx, "send-time"),
1858
+ lang: useDefaults ? stringWithDefault(ctx, "lang", "zh-CN") : optionalString2(ctx, "lang"),
1859
+ screen_type: useDefaults ? stringWithDefault(ctx, "screen-type", "normal") : optionalString2(ctx, "screen-type"),
1860
+ zone_offset: useDefaults ? numberWithDefault(ctx, "zone-offset", 0) : optionalNumber2(ctx, "zone-offset"),
1861
+ enable_send: update ? useDefaults ? booleanWithDefault(ctx, "enable-send", false) : optionalBoolean2(ctx, "enable-send") : void 0,
1862
+ payload
1863
+ });
1864
+ }
910
1865
 
911
1866
  // src/commands/te-analysis/dashboard-daily-report/update.ts
912
1867
  var dashboardDailyReportUpdate = createAnalysisCapabilityCommand({
@@ -917,22 +1872,11 @@ var dashboardDailyReportUpdate = createAnalysisCapabilityCommand({
917
1872
  flags: [
918
1873
  projectIdFlag,
919
1874
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
920
- { name: "enable-send", type: "number", required: false, desc: "Enable send flag." },
921
- { name: "send-time", type: "string", required: false, desc: "Daily report send time." },
922
- { name: "send-title", type: "string", required: false, desc: "Daily report title." },
923
- { name: "send-content", type: "string", required: false, desc: "Daily report content." },
1875
+ ...dailyReportFlags(true),
924
1876
  payloadFlag
925
1877
  ],
926
1878
  risk: "write",
927
- buildInput: (ctx) => compactInput({
928
- ...projectInput(ctx),
929
- dashboard_id: ctx.num("dashboard-id"),
930
- enable_send: optionalNumber3(ctx, "enable-send"),
931
- send_time: optionalString3(ctx, "send-time"),
932
- send_title: optionalString3(ctx, "send-title"),
933
- send_content: optionalString3(ctx, "send-content"),
934
- payload: optionalJson4(ctx, "payload")
935
- })
1879
+ buildInput: (ctx) => dailyReportInput(ctx, true)
936
1880
  });
937
1881
 
938
1882
  // src/commands/te-analysis/dashboard-daily-report/send.ts
@@ -940,30 +1884,23 @@ var dashboardDailyReportSend = createAnalysisCapabilityCommand({
940
1884
  resource: "dashboard-daily-report",
941
1885
  command: "send",
942
1886
  capabilityId: "analysis.dashboard_daily_report.send",
943
- description: "Send dashboard daily report immediately.",
1887
+ description: "Send dashboard daily report immediately. Omit config to use saved config; pass channel flags for an ad hoc send.",
944
1888
  flags: [
945
1889
  projectIdFlag,
946
1890
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
947
- { name: "need-csv", type: "number", required: false, desc: "Whether CSV attachment is needed." },
948
- { name: "host-url", type: "string", required: false, desc: "Host URL used in report links." },
1891
+ ...dailyReportFlags(false),
949
1892
  payloadFlag
950
1893
  ],
951
1894
  risk: "write",
952
- buildInput: (ctx) => compactInput({
953
- ...projectInput(ctx),
954
- dashboard_id: ctx.num("dashboard-id"),
955
- need_csv: optionalNumber3(ctx, "need-csv"),
956
- host_url: optionalString3(ctx, "host-url"),
957
- payload: optionalJson4(ctx, "payload")
958
- })
1895
+ buildInput: (ctx) => dailyReportInput(ctx, false)
959
1896
  });
960
1897
 
961
1898
  // src/commands/te-analysis/dashboard-daily-report/index.ts
962
- var commands7 = [
1899
+ var commands18 = [
963
1900
  dashboardDailyReportUpdate,
964
1901
  dashboardDailyReportSend
965
1902
  ];
966
- var dashboard_daily_report_default = commands7;
1903
+ var dashboard_daily_report_default = commands18;
967
1904
 
968
1905
  // src/commands/te-analysis/bi-panel/list.ts
969
1906
  var biPanelList = createAnalysisCapabilityCommand({
@@ -981,7 +1918,7 @@ var biPanelGet = createAnalysisCapabilityCommand({
981
1918
  resource: "bi-panel",
982
1919
  command: "get",
983
1920
  capabilityId: "analysis.bi_panel.get",
984
- description: "Get a BI panel released page structure.",
1921
+ description: "Get a BI panel released page structure. Use bi-panel-version get --version-type draft for unpublished edits.",
985
1922
  flags: [
986
1923
  projectIdFlag,
987
1924
  { name: "panel-id", type: "number", required: true, desc: "BI panel ID." },
@@ -991,7 +1928,7 @@ var biPanelGet = createAnalysisCapabilityCommand({
991
1928
  buildInput: (ctx) => compactInput({
992
1929
  ...projectInput(ctx),
993
1930
  panel_id: ctx.num("panel-id"),
994
- fields: optionalJson4(ctx, "fields")
1931
+ fields: optionalJson2(ctx, "fields")
995
1932
  })
996
1933
  });
997
1934
 
@@ -1012,11 +1949,11 @@ var biPanelCreate = createAnalysisCapabilityCommand({
1012
1949
  risk: "write",
1013
1950
  buildInput: (ctx) => compactInput({
1014
1951
  ...projectInput(ctx),
1015
- panel_name: optionalString3(ctx, "panel-name"),
1016
- panel_uuid: optionalString3(ctx, "panel-uuid"),
1017
- space_id: optionalNumber3(ctx, "space-id"),
1018
- folder_id: optionalNumber3(ctx, "folder-id"),
1019
- payload: optionalJson4(ctx, "payload")
1952
+ panel_name: optionalString2(ctx, "panel-name"),
1953
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
1954
+ space_id: optionalNumber2(ctx, "space-id"),
1955
+ folder_id: optionalNumber2(ctx, "folder-id"),
1956
+ payload: optionalJson2(ctx, "payload")
1020
1957
  })
1021
1958
  });
1022
1959
 
@@ -1035,9 +1972,9 @@ var biPanelUpdate = createAnalysisCapabilityCommand({
1035
1972
  risk: "write",
1036
1973
  buildInput: (ctx) => compactInput({
1037
1974
  ...projectInput(ctx),
1038
- panel_name: optionalString3(ctx, "panel-name"),
1039
- panel_uuid: optionalString3(ctx, "panel-uuid"),
1040
- payload: optionalJson4(ctx, "payload")
1975
+ panel_name: optionalString2(ctx, "panel-name"),
1976
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
1977
+ payload: optionalJson2(ctx, "payload")
1041
1978
  })
1042
1979
  });
1043
1980
 
@@ -1066,7 +2003,7 @@ var biPanelShare = createAnalysisCapabilityCommand({
1066
2003
  buildInput: (ctx) => compactInput({
1067
2004
  ...projectInput(ctx),
1068
2005
  panel_id: ctx.num("panel-id"),
1069
- payload: optionalJson4(ctx, "payload")
2006
+ payload: optionalJson2(ctx, "payload")
1070
2007
  })
1071
2008
  });
1072
2009
 
@@ -1087,16 +2024,16 @@ var biPanelCopy = createAnalysisCapabilityCommand({
1087
2024
  risk: "write",
1088
2025
  buildInput: (ctx) => compactInput({
1089
2026
  ...projectInput(ctx),
1090
- panel_name: optionalString3(ctx, "panel-name"),
1091
- panel_uuid: optionalString3(ctx, "panel-uuid"),
1092
- space_id: optionalNumber3(ctx, "space-id"),
1093
- folder_id: optionalNumber3(ctx, "folder-id"),
1094
- payload: optionalJson4(ctx, "payload")
2027
+ panel_name: optionalString2(ctx, "panel-name"),
2028
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2029
+ space_id: optionalNumber2(ctx, "space-id"),
2030
+ folder_id: optionalNumber2(ctx, "folder-id"),
2031
+ payload: optionalJson2(ctx, "payload")
1095
2032
  })
1096
2033
  });
1097
2034
 
1098
2035
  // src/commands/te-analysis/bi-panel/index.ts
1099
- var commands8 = [
2036
+ var commands19 = [
1100
2037
  biPanelList,
1101
2038
  biPanelGet,
1102
2039
  biPanelCreate,
@@ -1105,7 +2042,58 @@ var commands8 = [
1105
2042
  biPanelShare,
1106
2043
  biPanelCopy
1107
2044
  ];
1108
- var bi_panel_default = commands8;
2045
+ var bi_panel_default = commands19;
2046
+
2047
+ // src/commands/te-analysis/bi-panel-version/get.ts
2048
+ var biPanelVersionGet = createAnalysisCapabilityCommand({
2049
+ resource: "bi-panel-version",
2050
+ command: "get",
2051
+ capabilityId: "analysis.bi_panel_version.get",
2052
+ description: "Get a BI panel release or draft version. Use draft to inspect unpublished edits.",
2053
+ flags: [
2054
+ projectIdFlag,
2055
+ { name: "panel-id", type: "number", required: false, desc: "BI panel ID. Required when --panel-uuid is omitted." },
2056
+ { name: "panel-uuid", type: "string", required: false, desc: "BI panel UUID. Required when --panel-id is omitted." },
2057
+ { name: "version-type", type: "string", required: false, desc: "Version to inspect: release or draft. Default: release." },
2058
+ fieldsFlag
2059
+ ],
2060
+ risk: "read",
2061
+ buildInput: (ctx) => compactInput({
2062
+ ...projectInput(ctx),
2063
+ panel_id: ctx.str("panel-id") === "" ? void 0 : ctx.num("panel-id"),
2064
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2065
+ version_type: optionalString2(ctx, "version-type"),
2066
+ fields: optionalJson2(ctx, "fields")
2067
+ })
2068
+ });
2069
+
2070
+ // src/commands/te-analysis/bi-panel-version/publish.ts
2071
+ var biPanelVersionPublish = createAnalysisCapabilityCommand({
2072
+ resource: "bi-panel-version",
2073
+ command: "publish",
2074
+ capabilityId: "analysis.bi_panel_version.publish",
2075
+ description: "Publish the current BI panel draft. Requires source version returned by bi-panel-version get.",
2076
+ flags: [
2077
+ projectIdFlag,
2078
+ { name: "panel-id", type: "number", required: false, desc: "BI panel ID. Required when --panel-uuid is omitted." },
2079
+ { name: "panel-uuid", type: "string", required: false, desc: "BI panel UUID. Required when --panel-id is omitted." },
2080
+ { name: "source-version", type: "string", required: true, desc: "Current draft version to publish, for example 0.1." }
2081
+ ],
2082
+ risk: "write",
2083
+ buildInput: (ctx) => compactInput({
2084
+ ...projectInput(ctx),
2085
+ panel_id: ctx.str("panel-id") === "" ? void 0 : ctx.num("panel-id"),
2086
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2087
+ source_version: ctx.str("source-version")
2088
+ })
2089
+ });
2090
+
2091
+ // src/commands/te-analysis/bi-panel-version/index.ts
2092
+ var commands20 = [
2093
+ biPanelVersionGet,
2094
+ biPanelVersionPublish
2095
+ ];
2096
+ var bi_panel_version_default = commands20;
1109
2097
 
1110
2098
  // src/commands/te-analysis/bi-panel-page-data/run.ts
1111
2099
  var biPanelPageDataRun = createAnalysisCapabilityCommand({
@@ -1166,11 +2154,11 @@ var biPanelPageDataExport = createAnalysisCapabilityCommand({
1166
2154
  });
1167
2155
 
1168
2156
  // src/commands/te-analysis/bi-panel-page-data/index.ts
1169
- var commands9 = [
2157
+ var commands21 = [
1170
2158
  biPanelPageDataRun,
1171
2159
  biPanelPageDataExport
1172
2160
  ];
1173
- var bi_panel_page_data_default = commands9;
2161
+ var bi_panel_page_data_default = commands21;
1174
2162
 
1175
2163
  // src/commands/te-analysis/project-space/list.ts
1176
2164
  var projectSpaceList = createAnalysisCapabilityCommand({
@@ -1194,7 +2182,7 @@ var projectSpaceGet = createAnalysisCapabilityCommand({
1194
2182
  buildInput: (ctx) => compactInput({
1195
2183
  ...projectInput(ctx),
1196
2184
  space_id: ctx.num("space-id"),
1197
- fields: optionalJson4(ctx, "fields")
2185
+ fields: optionalJson2(ctx, "fields")
1198
2186
  })
1199
2187
  });
1200
2188
 
@@ -1208,21 +2196,24 @@ var projectSpaceCreate = createAnalysisCapabilityCommand({
1208
2196
  projectIdFlag,
1209
2197
  { name: "space-name", type: "string", required: false, desc: "Project space name." },
1210
2198
  { name: "space-desc", type: "string", required: false, desc: "Project space description." },
1211
- { name: "avatar-type", type: "number", required: false, desc: "Avatar type." },
2199
+ { name: "avatar-type", type: "number", required: false, desc: "Avatar type: 1=WORD, 2=ICON, 3=IMAGE. Default: 1." },
1212
2200
  { name: "color-key", type: "string", required: false, desc: "Avatar color key." },
1213
2201
  { name: "avatar", type: "string", required: false, desc: "Avatar value." },
1214
2202
  payloadFlag
1215
2203
  ],
1216
2204
  risk: "write",
1217
- buildInput: (ctx) => compactInput({
1218
- ...projectInput(ctx),
1219
- space_name: optionalString3(ctx, "space-name"),
1220
- space_desc: optionalString3(ctx, "space-desc"),
1221
- avatar_type: optionalNumber3(ctx, "avatar-type"),
1222
- color_key: optionalString3(ctx, "color-key"),
1223
- avatar: optionalString3(ctx, "avatar"),
1224
- payload: optionalJson4(ctx, "payload")
1225
- })
2205
+ buildInput: (ctx) => {
2206
+ const payload = optionalJson2(ctx, "payload");
2207
+ return compactInput({
2208
+ ...projectInput(ctx),
2209
+ space_name: optionalString2(ctx, "space-name"),
2210
+ space_desc: optionalString2(ctx, "space-desc"),
2211
+ avatar_type: payload === void 0 ? numberWithDefault(ctx, "avatar-type", 1) : optionalNumber2(ctx, "avatar-type"),
2212
+ color_key: optionalString2(ctx, "color-key"),
2213
+ avatar: optionalString2(ctx, "avatar"),
2214
+ payload
2215
+ });
2216
+ }
1226
2217
  });
1227
2218
 
1228
2219
  // src/commands/te-analysis/project-space/delete.ts
@@ -1239,7 +2230,7 @@ var projectSpaceDelete = createAnalysisCapabilityCommand({
1239
2230
  risk: "write",
1240
2231
  buildInput: (ctx) => compactInput({
1241
2232
  ...projectInput(ctx),
1242
- space_id: optionalNumber3(ctx, "space-id"),
2233
+ space_id: optionalNumber2(ctx, "space-id"),
1243
2234
  space_ids: optionalJsonArray(ctx, "space-ids")
1244
2235
  })
1245
2236
  });
@@ -1255,7 +2246,7 @@ var projectSpaceShare = createAnalysisCapabilityCommand({
1255
2246
  buildInput: (ctx) => compactInput({
1256
2247
  ...projectInput(ctx),
1257
2248
  space_id: ctx.num("space-id"),
1258
- payload: optionalJson4(ctx, "payload")
2249
+ payload: optionalJson2(ctx, "payload")
1259
2250
  })
1260
2251
  });
1261
2252
 
@@ -1274,7 +2265,7 @@ var projectSpaceMembers = createAnalysisCapabilityCommand({
1274
2265
  });
1275
2266
 
1276
2267
  // src/commands/te-analysis/project-space/index.ts
1277
- var commands10 = [
2268
+ var commands22 = [
1278
2269
  projectSpaceList,
1279
2270
  projectSpaceGet,
1280
2271
  projectSpaceCreate,
@@ -1282,7 +2273,7 @@ var commands10 = [
1282
2273
  projectSpaceShare,
1283
2274
  projectSpaceMembers
1284
2275
  ];
1285
- var project_space_default = commands10;
2276
+ var project_space_default = commands22;
1286
2277
 
1287
2278
  // src/commands/te-analysis/folder/create.ts
1288
2279
  var folderCreate = createAnalysisCapabilityCommand({
@@ -1301,9 +2292,9 @@ var folderCreate = createAnalysisCapabilityCommand({
1301
2292
  buildInput: (ctx) => compactInput({
1302
2293
  ...projectInput(ctx),
1303
2294
  folder_name: ctx.str("folder-name"),
1304
- space_id: optionalNumber3(ctx, "space-id"),
1305
- parent_folder_id: optionalNumber3(ctx, "parent-folder-id"),
1306
- payload: optionalJson4(ctx, "payload")
2295
+ space_id: optionalNumber2(ctx, "space-id"),
2296
+ parent_folder_id: optionalNumber2(ctx, "parent-folder-id"),
2297
+ payload: optionalJson2(ctx, "payload")
1307
2298
  })
1308
2299
  });
1309
2300
 
@@ -1322,9 +2313,9 @@ var folderDelete = createAnalysisCapabilityCommand({
1322
2313
  risk: "write",
1323
2314
  buildInput: (ctx) => compactInput({
1324
2315
  ...projectInput(ctx),
1325
- folder_id: optionalNumber3(ctx, "folder-id"),
2316
+ folder_id: optionalNumber2(ctx, "folder-id"),
1326
2317
  folder_ids: optionalJsonArray(ctx, "folder-ids"),
1327
- space_id: optionalNumber3(ctx, "space-id")
2318
+ space_id: optionalNumber2(ctx, "space-id")
1328
2319
  })
1329
2320
  });
1330
2321
 
@@ -1339,7 +2330,7 @@ var folderShare = createAnalysisCapabilityCommand({
1339
2330
  buildInput: (ctx) => compactInput({
1340
2331
  ...projectInput(ctx),
1341
2332
  folder_id: ctx.num("folder-id"),
1342
- payload: optionalJson4(ctx, "payload")
2333
+ payload: optionalJson2(ctx, "payload")
1343
2334
  })
1344
2335
  });
1345
2336
 
@@ -1358,13 +2349,13 @@ var folderMembers = createAnalysisCapabilityCommand({
1358
2349
  });
1359
2350
 
1360
2351
  // src/commands/te-analysis/folder/index.ts
1361
- var commands11 = [
2352
+ var commands23 = [
1362
2353
  folderCreate,
1363
2354
  folderDelete,
1364
2355
  folderShare,
1365
2356
  folderMembers
1366
2357
  ];
1367
- var folder_default = commands11;
2358
+ var folder_default = commands23;
1368
2359
 
1369
2360
  // src/commands/te-analysis/favorite/add.ts
1370
2361
  var favoriteAdd = createAnalysisCapabilityCommand({
@@ -1383,11 +2374,11 @@ var favoriteAdd = createAnalysisCapabilityCommand({
1383
2374
  risk: "write",
1384
2375
  buildInput: (ctx) => compactInput({
1385
2376
  ...projectInput(ctx),
1386
- asset_id: optionalNumber3(ctx, "asset-id"),
1387
- asset_type: optionalString3(ctx, "asset-type"),
1388
- space_id: optionalNumber3(ctx, "space-id"),
1389
- id: optionalNumber3(ctx, "id"),
1390
- payload: optionalJson4(ctx, "payload")
2377
+ asset_id: optionalNumber2(ctx, "asset-id"),
2378
+ asset_type: optionalString2(ctx, "asset-type"),
2379
+ space_id: optionalNumber2(ctx, "space-id"),
2380
+ id: optionalNumber2(ctx, "id"),
2381
+ payload: optionalJson2(ctx, "payload")
1391
2382
  })
1392
2383
  });
1393
2384
 
@@ -1408,20 +2399,20 @@ var favoriteRemove = createAnalysisCapabilityCommand({
1408
2399
  risk: "write",
1409
2400
  buildInput: (ctx) => compactInput({
1410
2401
  ...projectInput(ctx),
1411
- asset_id: optionalNumber3(ctx, "asset-id"),
1412
- asset_type: optionalString3(ctx, "asset-type"),
1413
- space_id: optionalNumber3(ctx, "space-id"),
1414
- id: optionalNumber3(ctx, "id"),
1415
- payload: optionalJson4(ctx, "payload")
2402
+ asset_id: optionalNumber2(ctx, "asset-id"),
2403
+ asset_type: optionalString2(ctx, "asset-type"),
2404
+ space_id: optionalNumber2(ctx, "space-id"),
2405
+ id: optionalNumber2(ctx, "id"),
2406
+ payload: optionalJson2(ctx, "payload")
1416
2407
  })
1417
2408
  });
1418
2409
 
1419
2410
  // src/commands/te-analysis/favorite/index.ts
1420
- var commands12 = [
2411
+ var commands24 = [
1421
2412
  favoriteAdd,
1422
2413
  favoriteRemove
1423
2414
  ];
1424
- var favorite_default = commands12;
2415
+ var favorite_default = commands24;
1425
2416
 
1426
2417
  // src/commands/te-analysis/public-link/create.ts
1427
2418
  var publicLinkCreate = createAnalysisCapabilityCommand({
@@ -1443,14 +2434,14 @@ var publicLinkCreate = createAnalysisCapabilityCommand({
1443
2434
  risk: "write",
1444
2435
  buildInput: (ctx) => compactInput({
1445
2436
  ...projectInput(ctx),
1446
- company_id: optionalNumber3(ctx, "company-id"),
2437
+ company_id: optionalNumber2(ctx, "company-id"),
1447
2438
  resource_type: ctx.str("resource-type"),
1448
2439
  resource_id: ctx.num("resource-id"),
1449
- access_controls: optionalJson4(ctx, "access-controls"),
1450
- remark: optionalString3(ctx, "remark"),
2440
+ access_controls: optionalJson2(ctx, "access-controls"),
2441
+ remark: optionalString2(ctx, "remark"),
1451
2442
  effective_at: ctx.str("effective-at"),
1452
2443
  expires_at: ctx.str("expires-at"),
1453
- payload: optionalJson4(ctx, "payload")
2444
+ payload: optionalJson2(ctx, "payload")
1454
2445
  })
1455
2446
  });
1456
2447
 
@@ -1484,13 +2475,13 @@ var publicLinkUpdate = createAnalysisCapabilityCommand({
1484
2475
  risk: "write",
1485
2476
  buildInput: (ctx) => compactInput({
1486
2477
  ...projectInput(ctx),
1487
- company_id: optionalNumber3(ctx, "company-id"),
2478
+ company_id: optionalNumber2(ctx, "company-id"),
1488
2479
  link_id: ctx.num("link-id"),
1489
- access_controls: optionalJson4(ctx, "access-controls"),
1490
- remark: optionalString3(ctx, "remark"),
2480
+ access_controls: optionalJson2(ctx, "access-controls"),
2481
+ remark: optionalString2(ctx, "remark"),
1491
2482
  effective_at: ctx.str("effective-at"),
1492
2483
  expires_at: ctx.str("expires-at"),
1493
- payload: optionalJson4(ctx, "payload")
2484
+ payload: optionalJson2(ctx, "payload")
1494
2485
  })
1495
2486
  });
1496
2487
 
@@ -1509,8 +2500,8 @@ var publicLinkOffline = createAnalysisCapabilityCommand({
1509
2500
  risk: "write",
1510
2501
  buildInput: (ctx) => compactInput({
1511
2502
  ...projectInput(ctx),
1512
- company_id: optionalNumber3(ctx, "company-id"),
1513
- link_id: optionalNumber3(ctx, "link-id"),
2503
+ company_id: optionalNumber2(ctx, "company-id"),
2504
+ link_id: optionalNumber2(ctx, "link-id"),
1514
2505
  link_ids: optionalJsonArray(ctx, "link-ids")
1515
2506
  })
1516
2507
  });
@@ -1530,21 +2521,21 @@ var publicLinkDelete = createAnalysisCapabilityCommand({
1530
2521
  risk: "write",
1531
2522
  buildInput: (ctx) => compactInput({
1532
2523
  ...projectInput(ctx),
1533
- company_id: optionalNumber3(ctx, "company-id"),
1534
- link_id: optionalNumber3(ctx, "link-id"),
2524
+ company_id: optionalNumber2(ctx, "company-id"),
2525
+ link_id: optionalNumber2(ctx, "link-id"),
1535
2526
  link_ids: optionalJsonArray(ctx, "link-ids")
1536
2527
  })
1537
2528
  });
1538
2529
 
1539
2530
  // src/commands/te-analysis/public-link/index.ts
1540
- var commands13 = [
2531
+ var commands25 = [
1541
2532
  publicLinkCreate,
1542
2533
  publicLinkList,
1543
2534
  publicLinkUpdate,
1544
2535
  publicLinkOffline,
1545
2536
  publicLinkDelete
1546
2537
  ];
1547
- var public_link_default = commands13;
2538
+ var public_link_default = commands25;
1548
2539
 
1549
2540
  // src/commands/te-analysis/model/query-adhoc.ts
1550
2541
  var queryAdhoc = createMcpCommand({
@@ -2027,7 +3018,7 @@ var buildDistributionAnalysisQp = createMcpCommand({
2027
3018
  });
2028
3019
 
2029
3020
  // src/commands/te-analysis/model/index.ts
2030
- var commands14 = [
3021
+ var commands26 = [
2031
3022
  buildEventAnalysisQp,
2032
3023
  buildRetentionAnalysisQp,
2033
3024
  buildFunnelAnalysisQp,
@@ -2046,7 +3037,7 @@ var commands14 = [
2046
3037
  loadFilters,
2047
3038
  getTableColumns
2048
3039
  ];
2049
- var model_default = commands14;
3040
+ var model_default = commands26;
2050
3041
 
2051
3042
  // src/commands/te-analysis/entity/query-entity-details.ts
2052
3043
  var queryEntityDetails = createMcpCommand({
@@ -2184,13 +3175,13 @@ var buildEventDetailsSql = createMcpCommand({
2184
3175
  });
2185
3176
 
2186
3177
  // src/commands/te-analysis/entity/index.ts
2187
- var commands15 = [
3178
+ var commands27 = [
2188
3179
  queryEntityDetails,
2189
3180
  queryEventDetails,
2190
3181
  buildEntityDetailsSql,
2191
3182
  buildEventDetailsSql
2192
3183
  ];
2193
- var entity_default = commands15;
3184
+ var entity_default = commands27;
2194
3185
 
2195
3186
  // src/commands/te-analysis/schema/get-analysis-query-schema.ts
2196
3187
  var getAnalysisQuerySchema = createMcpCommand({
@@ -2228,12 +3219,12 @@ var getGroupbySchema = createMcpCommand({
2228
3219
  });
2229
3220
 
2230
3221
  // src/commands/te-analysis/schema/index.ts
2231
- var commands16 = [
3222
+ var commands28 = [
2232
3223
  getAnalysisQuerySchema,
2233
3224
  getFilterSchema,
2234
3225
  getGroupbySchema
2235
3226
  ];
2236
- var schema_default = commands16;
3227
+ var schema_default = commands28;
2237
3228
 
2238
3229
  // src/commands/te-analysis/global/list-query-clusters.ts
2239
3230
  var listQueryClusters = createMcpCommand({
@@ -2249,22 +3240,25 @@ var listQueryClusters = createMcpCommand({
2249
3240
  });
2250
3241
 
2251
3242
  // src/commands/te-analysis/global/index.ts
2252
- var commands17 = [
3243
+ var commands29 = [
2253
3244
  listQueryClusters
2254
3245
  ];
2255
- var global_default = commands17;
3246
+ var global_default = commands29;
2256
3247
 
2257
3248
  // src/commands/te-analysis/index.ts
2258
3249
  registerCapabilityGatewayRoute("analysis", { gatewayDomain: "analysis" });
2259
- var commands18 = [
3250
+ var commands30 = [
2260
3251
  ...meta_default,
2261
3252
  ...report_default,
2262
3253
  ...dashboard_default,
2263
3254
  ...dashboard_report_data_default,
2264
3255
  ...query_default,
3256
+ ...run_default,
3257
+ ...artifact_default,
2265
3258
  ...dashboard_definition_default,
2266
3259
  ...dashboard_daily_report_default,
2267
3260
  ...bi_panel_default,
3261
+ ...bi_panel_version_default,
2268
3262
  ...bi_panel_page_data_default,
2269
3263
  ...project_space_default,
2270
3264
  ...folder_default,
@@ -2275,7 +3269,7 @@ var commands18 = [
2275
3269
  ...schema_default,
2276
3270
  ...isGlobalQueryModeEnabled() ? global_default : []
2277
3271
  ];
2278
- var te_analysis_default = commands18;
3272
+ var te_analysis_default = commands30;
2279
3273
  export {
2280
3274
  te_analysis_default as default
2281
3275
  };