@thinkingai/ae-cli 6.0.27 → 6.0.29

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 (111) hide show
  1. package/dist/capability-KVA55RMK.js +227 -0
  2. package/dist/capability-LKHLZQPD.js +227 -0
  3. package/dist/chunk-CWZUGF2J.js +26 -0
  4. package/dist/{chunk-YNQFYBDB.js → chunk-OJR23CIK.js} +12 -0
  5. package/dist/chunk-OO6XR6LK.js +26 -0
  6. package/dist/{chunk-C4DH76LX.js → chunk-P2JRP6HJ.js} +4 -21
  7. package/dist/{chunk-LG5YT7P7.js → chunk-S5XN6KEX.js} +4 -21
  8. package/dist/{chunk-BXMXMUD7.js → chunk-THBBNYXI.js} +12 -0
  9. package/dist/index.js +22 -11
  10. package/dist/{metadata-IPSPQBX3.js → metadata-6CCFV4K5.js} +11 -8
  11. package/dist/{metadata-N5REJ7R7.js → metadata-PDOIWH5O.js} +11 -8
  12. package/dist/{te-agent-QLIVKRUN.js → te-agent-FAIBM3SA.js} +5 -5
  13. package/dist/{te-analysis-QMZ2UH7F.js → te-analysis-DDXGM7WM.js} +1239 -470
  14. package/dist/{te-analysis-2U5EPXQC.js → te-analysis-HCDNYI7E.js} +1239 -470
  15. package/dist/{te-audience-XMRMVD2V.js → te-audience-ECFS4GF4.js} +11 -10
  16. package/dist/{te-audience-PVMKQAFH.js → te-audience-WO377T2J.js} +11 -10
  17. package/dist/{te-engage-AGREUOW7.js → te-engage-545HJL6J.js} +4 -4
  18. package/dist/{te-engage-MIIUKY6M.js → te-engage-M7JQSJDP.js} +4 -4
  19. package/dist/{te-kb-KQJ53M3A.js → te-kb-NT33UHAE.js} +1 -1
  20. package/dist/{te-meta-QLANJ4B4.js → te-meta-FADFLTDM.js} +3 -3
  21. package/dist/{te-meta-TOA6FWDE.js → te-meta-PKT27OTN.js} +3 -3
  22. package/dist/{te-team-TQGMNHQQ.js → te-team-RG75PR5D.js} +1 -1
  23. package/package.json +2 -1
  24. package/skills/ae-agent/SKILL.md +4 -3
  25. package/skills/ae-analysis/SKILL.md +88 -17
  26. package/skills/ae-analysis/references/analysis_gateway_assets.md +49 -14
  27. package/skills/ae-analysis/references/asset_abnormal_get.md +27 -0
  28. package/skills/ae-analysis/references/asset_abnormal_list.md +24 -0
  29. package/skills/ae-analysis/references/asset_authentication_list.md +23 -0
  30. package/skills/ae-analysis/references/asset_authentication_update.md +24 -0
  31. package/skills/ae-analysis/references/asset_recent_list.md +24 -0
  32. package/skills/ae-analysis/references/asset_search.md +24 -0
  33. package/skills/ae-analysis/references/bi_panel_get.md +5 -0
  34. package/skills/ae-analysis/references/bi_panel_share.md +6 -0
  35. package/skills/ae-analysis/references/bi_panel_update.md +4 -1
  36. package/skills/ae-analysis/references/bi_panel_version_get.md +23 -0
  37. package/skills/ae-analysis/references/bi_panel_version_publish.md +20 -0
  38. package/skills/ae-analysis/references/build_event_analysis_qp.md +1 -1
  39. package/skills/ae-analysis/references/build_funnel_analysis_qp.md +1 -1
  40. package/skills/ae-analysis/references/build_prop_analysis_qp.md +1 -1
  41. package/skills/ae-analysis/references/build_retention_analysis_qp.md +1 -1
  42. package/skills/ae-analysis/references/cancel_query.md +1 -1
  43. package/skills/ae-analysis/references/dashboard_daily_report_send.md +6 -1
  44. package/skills/ae-analysis/references/dashboard_report_data_export.md +6 -0
  45. package/skills/ae-analysis/references/dashboard_report_data_run.md +6 -0
  46. package/skills/ae-analysis/references/datatable_columns_get.md +24 -0
  47. package/skills/ae-analysis/references/datatable_influence_list.md +24 -0
  48. package/skills/ae-analysis/references/datatable_version_get.md +24 -0
  49. package/skills/ae-analysis/references/datatable_version_list.md +24 -0
  50. package/skills/ae-analysis/references/drilldown_user_events.md +4 -4
  51. package/skills/ae-analysis/references/event_changelog_list.md +24 -0
  52. package/skills/ae-analysis/references/event_create.md +24 -0
  53. package/skills/ae-analysis/references/event_delete.md +24 -0
  54. package/skills/ae-analysis/references/event_get.md +24 -0
  55. package/skills/ae-analysis/references/event_hide_update.md +25 -0
  56. package/skills/ae-analysis/references/event_influence_list.md +24 -0
  57. package/skills/ae-analysis/references/event_list.md +23 -0
  58. package/skills/ae-analysis/references/event_relation_update.md +24 -0
  59. package/skills/ae-analysis/references/event_update.md +26 -0
  60. package/skills/ae-analysis/references/exchange_config_update.md +24 -0
  61. package/skills/ae-analysis/references/exchange_rate_refresh.md +23 -0
  62. package/skills/ae-analysis/references/exchange_rule_list.md +23 -0
  63. package/skills/ae-analysis/references/exchange_rule_update.md +24 -0
  64. package/skills/ae-analysis/references/exchange_rule_validate.md +24 -0
  65. package/skills/ae-analysis/references/folder_create.md +18 -6
  66. package/skills/ae-analysis/references/folder_delete.md +21 -6
  67. package/skills/ae-analysis/references/folder_share.md +16 -6
  68. package/skills/ae-analysis/references/get_analysis_query_schema.md +17 -18
  69. package/skills/ae-analysis/references/get_report_definition.md +1 -1
  70. package/skills/ae-analysis/references/list_events.md +1 -1
  71. package/skills/ae-analysis/references/list_metrics.md +1 -1
  72. package/skills/ae-analysis/references/list_properties.md +1 -1
  73. package/skills/ae-analysis/references/metric_create.md +24 -0
  74. package/skills/ae-analysis/references/metric_delete.md +24 -0
  75. package/skills/ae-analysis/references/metric_get.md +24 -0
  76. package/skills/ae-analysis/references/metric_list.md +24 -0
  77. package/skills/ae-analysis/references/metric_update.md +24 -0
  78. package/skills/ae-analysis/references/project_space_create.md +19 -5
  79. package/skills/ae-analysis/references/project_space_delete.md +23 -6
  80. package/skills/ae-analysis/references/project_space_share.md +16 -6
  81. package/skills/ae-analysis/references/property_changelog_list.md +25 -0
  82. package/skills/ae-analysis/references/property_create.md +25 -0
  83. package/skills/ae-analysis/references/property_delete.md +25 -0
  84. package/skills/ae-analysis/references/property_get.md +25 -0
  85. package/skills/ae-analysis/references/property_hide_update.md +26 -0
  86. package/skills/ae-analysis/references/property_influence_list.md +25 -0
  87. package/skills/ae-analysis/references/property_list.md +24 -0
  88. package/skills/ae-analysis/references/property_related_events.md +24 -0
  89. package/skills/ae-analysis/references/property_relation_update.md +25 -0
  90. package/skills/ae-analysis/references/property_update.md +27 -0
  91. package/skills/ae-analysis/references/query_adhoc.md +34 -21
  92. package/skills/ae-analysis/references/super_metadata_export.md +36 -0
  93. package/skills/ae-analysis/references/super_metadata_import.md +24 -0
  94. package/skills/ae-analysis/references/update_report.md +3 -3
  95. package/skills/ae-analysis/references/virtual_event_create.md +25 -0
  96. package/skills/ae-analysis/references/virtual_event_delete.md +24 -0
  97. package/skills/ae-analysis/references/virtual_event_get.md +24 -0
  98. package/skills/ae-analysis/references/virtual_property_create.md +24 -0
  99. package/skills/ae-analysis/references/virtual_property_sql_rule_delete.md +25 -0
  100. package/skills/ae-analysis/references/virtual_property_sql_rule_update.md +24 -0
  101. package/skills/ae-capability/SKILL.md +103 -0
  102. package/skills/ae-community/SKILL.md +1 -1
  103. package/skills/ae-dataops/references/dataops-integration.md +3 -3
  104. package/skills/ae-engage/SKILL.md +5 -5
  105. package/skills/ae-generate-tracking-code/SKILL.md +16 -1
  106. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +17 -1
  107. package/skills/ae-generate-tracking-plan/SKILL.md +30 -8
  108. package/skills/ae-metadata/references/metadata_data_table_sql_write.md +60 -8
  109. package/skills/ae-team/SKILL.md +1 -1
  110. package/skills/ae-analysis/references/folder_members.md +0 -15
  111. package/skills/ae-analysis/references/project_space_members.md +0 -15
@@ -1,12 +1,14 @@
1
1
  import {
2
- createCapabilityCommand,
2
+ createCapabilityCommand
3
+ } from "./chunk-P2JRP6HJ.js";
4
+ import {
3
5
  registerCapabilityGatewayRoute
4
- } from "./chunk-C4DH76LX.js";
6
+ } from "./chunk-CWZUGF2J.js";
5
7
  import {
6
8
  buildCapabilityGatewayUrl,
7
9
  callCapabilityApi,
8
10
  downloadCapabilityArtifact
9
- } from "./chunk-BXMXMUD7.js";
11
+ } from "./chunk-THBBNYXI.js";
10
12
  import {
11
13
  callMcpTool,
12
14
  parseMcpResult,
@@ -228,7 +230,7 @@ var deleteAlert = createMcpCommand({
228
230
  { name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
229
231
  { name: "alert_id", type: "number", required: true, desc: "Alert ID to delete" }
230
232
  ],
231
- risk: "write",
233
+ risk: "high-risk-write",
232
234
  mcpService: "te_analysis_extend",
233
235
  buildArgs: (ctx) => ({
234
236
  projectId: ctx.num("project_id"),
@@ -236,16 +238,1018 @@ var deleteAlert = createMcpCommand({
236
238
  })
237
239
  });
238
240
 
241
+ // src/commands/te-analysis/capability-shared.ts
242
+ function createAnalysisCapabilityCommand(config) {
243
+ return createCapabilityCommand({
244
+ ...config,
245
+ cliService: "analysis"
246
+ });
247
+ }
248
+ function createAnalysisMetaCapabilityCommand(config) {
249
+ return createCapabilityCommand({
250
+ ...config,
251
+ cliService: "analysis-meta",
252
+ gatewayDomain: "analysis"
253
+ });
254
+ }
255
+ var projectIdFlag = {
256
+ name: "project-id",
257
+ type: "number",
258
+ required: true,
259
+ desc: "Numeric project ID.",
260
+ alias: "p"
261
+ };
262
+ var queryFlag = {
263
+ name: "query",
264
+ type: "string",
265
+ required: false,
266
+ desc: "Optional keyword filter.",
267
+ alias: "q"
268
+ };
269
+ var fieldsFlag = {
270
+ name: "fields",
271
+ type: "json",
272
+ required: false,
273
+ desc: "Optional result field projection JSON array.",
274
+ alias: "f"
275
+ };
276
+ var limitFlag = {
277
+ name: "limit",
278
+ type: "number",
279
+ required: false,
280
+ desc: "Optional inline result limit.",
281
+ alias: "l"
282
+ };
283
+ var offsetFlag = {
284
+ name: "offset",
285
+ type: "number",
286
+ required: false,
287
+ desc: "Optional zero-based result offset.",
288
+ alias: "o"
289
+ };
290
+ var payloadFlag = {
291
+ name: "payload",
292
+ type: "json",
293
+ required: false,
294
+ desc: "Optional snake_case object for complex capability payload fields."
295
+ };
296
+ function projectInput(ctx) {
297
+ return { project_id: ctx.num("project-id") };
298
+ }
299
+ function listInput(ctx) {
300
+ return compactInput({
301
+ ...projectInput(ctx),
302
+ query: optionalString2(ctx, "query"),
303
+ fields: optionalJson2(ctx, "fields"),
304
+ limit: optionalNumber2(ctx, "limit"),
305
+ offset: optionalNumber2(ctx, "offset")
306
+ });
307
+ }
308
+ function dashboardReportDataInput(ctx) {
309
+ return compactInput({
310
+ ...projectInput(ctx),
311
+ dashboard_id: ctx.num("dashboard-id"),
312
+ report_ids: optionalJsonArray(ctx, "report-ids"),
313
+ filters: optionalJson2(ctx, "filters"),
314
+ start_time: optionalString2(ctx, "start-time"),
315
+ end_time: optionalString2(ctx, "end-time"),
316
+ use_cache: optionalBoolean2(ctx, "use-cache"),
317
+ request_id: optionalString2(ctx, "request-id"),
318
+ timeout_seconds: optionalNumber2(ctx, "timeout-seconds"),
319
+ limit: optionalNumber2(ctx, "limit"),
320
+ format: optionalString2(ctx, "artifact-format")
321
+ });
322
+ }
323
+ function biPanelPageDataInput(ctx) {
324
+ return compactInput({
325
+ ...projectInput(ctx),
326
+ panel_id: ctx.num("panel-id"),
327
+ page_key: ctx.str("page-key"),
328
+ result_type: ctx.str("result-type"),
329
+ chart_ids: optionalJsonArray(ctx, "chart-ids"),
330
+ parameter_controls: optionalJson2(ctx, "parameter-controls"),
331
+ permission_controls: optionalJson2(ctx, "permission-controls"),
332
+ chart_filter_controls: optionalJson2(ctx, "chart-filter-controls"),
333
+ columns: optionalJson2(ctx, "columns"),
334
+ row_limit: optionalNumber2(ctx, "row-limit"),
335
+ row_offset: optionalNumber2(ctx, "row-offset"),
336
+ block_limit: optionalNumber2(ctx, "block-limit"),
337
+ block_offset: optionalNumber2(ctx, "block-offset"),
338
+ use_cache: optionalBoolean2(ctx, "use-cache"),
339
+ request_id: optionalString2(ctx, "request-id"),
340
+ timeout_seconds: optionalNumber2(ctx, "timeout-seconds"),
341
+ limit: optionalNumber2(ctx, "limit"),
342
+ format: optionalString2(ctx, "artifact-format")
343
+ });
344
+ }
345
+ function optionalString2(ctx, name) {
346
+ const value = ctx.str(name);
347
+ return value === "" ? void 0 : value;
348
+ }
349
+ function optionalNumber2(ctx, name) {
350
+ const value = ctx.str(name);
351
+ return value === "" ? void 0 : Number(value);
352
+ }
353
+ function optionalBoolean2(ctx, name) {
354
+ const value = ctx.str(name);
355
+ return value === "" ? void 0 : ctx.bool(name);
356
+ }
357
+ function stringWithDefault(ctx, name, defaultValue) {
358
+ const value = ctx.str(name);
359
+ return value === "" ? defaultValue : value;
360
+ }
361
+ function numberWithDefault(ctx, name, defaultValue) {
362
+ const value = ctx.str(name);
363
+ return value === "" ? defaultValue : Number(value);
364
+ }
365
+ function booleanWithDefault(ctx, name, defaultValue) {
366
+ const value = ctx.str(name);
367
+ return value === "" ? defaultValue : ctx.bool(name);
368
+ }
369
+ function optionalJson2(ctx, name) {
370
+ const value = ctx.str(name);
371
+ return value === "" ? void 0 : ctx.json(name);
372
+ }
373
+ function jsonArray(ctx, name) {
374
+ const value = ctx.json(name);
375
+ return Array.isArray(value) ? value : [value];
376
+ }
377
+ function optionalJsonArray(ctx, name) {
378
+ const value = ctx.str(name);
379
+ if (value === "") {
380
+ return void 0;
381
+ }
382
+ const parsed = ctx.json(name);
383
+ return Array.isArray(parsed) ? parsed : [parsed];
384
+ }
385
+ function compactInput(input) {
386
+ const result = {};
387
+ for (const [key, value] of Object.entries(input)) {
388
+ if (value !== void 0) {
389
+ result[key] = value;
390
+ }
391
+ }
392
+ return result;
393
+ }
394
+
395
+ // src/commands/te-analysis/meta/event/list.ts
396
+ var metadataEventList = createAnalysisMetaCapabilityCommand({
397
+ resource: "event",
398
+ command: "list",
399
+ capabilityId: "metadata.event.list",
400
+ description: "List project super events.",
401
+ flags: [
402
+ projectIdFlag
403
+ ],
404
+ risk: "read",
405
+ buildInput: projectInput
406
+ });
407
+
408
+ // src/commands/te-analysis/meta/event/get.ts
409
+ var metadataEventGet = createAnalysisMetaCapabilityCommand({
410
+ resource: "event",
411
+ command: "get",
412
+ capabilityId: "metadata.event.get",
413
+ description: "Get one super event metadata detail.",
414
+ flags: [
415
+ projectIdFlag,
416
+ { name: "event-name", type: "string", required: true, desc: "Event name." }
417
+ ],
418
+ risk: "read",
419
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_name: ctx.str("event-name") })
420
+ });
421
+
422
+ // src/commands/te-analysis/meta/event/create.ts
423
+ var metadataEventCreate = createAnalysisMetaCapabilityCommand({
424
+ resource: "event",
425
+ command: "create",
426
+ capabilityId: "metadata.event.create",
427
+ description: "Create super events and optionally associate event properties.",
428
+ flags: [
429
+ projectIdFlag,
430
+ payloadFlag
431
+ ],
432
+ risk: "write",
433
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
434
+ });
435
+
436
+ // src/commands/te-analysis/meta/event/update.ts
437
+ var metadataEventUpdate = createAnalysisMetaCapabilityCommand({
438
+ resource: "event",
439
+ command: "update",
440
+ capabilityId: "metadata.event.update",
441
+ description: "Update event display names and remarks.",
442
+ flags: [
443
+ projectIdFlag,
444
+ { name: "event-name", type: "string", required: true, desc: "Event name." },
445
+ { name: "event-desc", type: "string", required: false, desc: "Event display name." },
446
+ { name: "remark", type: "string", required: false, desc: "Event remark." }
447
+ ],
448
+ risk: "write",
449
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), event_name: ctx.str("event-name"), event_desc: optionalString2(ctx, "event-desc"), remark: optionalString2(ctx, "remark") })
450
+ });
451
+
452
+ // src/commands/te-analysis/meta/event/relation-update.ts
453
+ var metadataEventRelationUpdate = createAnalysisMetaCapabilityCommand({
454
+ resource: "event",
455
+ command: "relation-update",
456
+ capabilityId: "metadata.event.relation_update",
457
+ description: "Update event-property connection or source relations.",
458
+ flags: [
459
+ projectIdFlag,
460
+ payloadFlag
461
+ ],
462
+ risk: "write",
463
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
464
+ });
465
+
466
+ // src/commands/te-analysis/meta/event/hide-update.ts
467
+ var metadataEventHideUpdate = createAnalysisMetaCapabilityCommand({
468
+ resource: "event",
469
+ command: "hide-update",
470
+ capabilityId: "metadata.event.hide_update",
471
+ description: "Batch hide or show events.",
472
+ flags: [
473
+ projectIdFlag,
474
+ { name: "event-names", type: "json", required: true, desc: "Event names JSON array, or a JSON string accepted by common-service." },
475
+ { name: "is-hide", type: "boolean", required: true, desc: "Whether to hide the events." }
476
+ ],
477
+ risk: "write",
478
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_names: ctx.json("event-names"), is_hide: ctx.bool("is-hide") })
479
+ });
480
+
481
+ // src/commands/te-analysis/meta/event/delete.ts
482
+ var metadataEventDelete = createAnalysisMetaCapabilityCommand({
483
+ resource: "event",
484
+ command: "delete",
485
+ capabilityId: "metadata.event.delete",
486
+ description: "Batch delete events or virtual events.",
487
+ flags: [
488
+ projectIdFlag,
489
+ { name: "event-names", type: "json", required: true, desc: "Event names JSON array, or a JSON string accepted by common-service." }
490
+ ],
491
+ risk: "high-risk-write",
492
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_names: ctx.json("event-names") })
493
+ });
494
+
495
+ // src/commands/te-analysis/meta/event/influence-list.ts
496
+ var metadataEventInfluenceList = createAnalysisMetaCapabilityCommand({
497
+ resource: "event",
498
+ command: "influence-list",
499
+ capabilityId: "metadata.event.influence_list",
500
+ description: "List assets affected by event delete, hide, or update.",
501
+ flags: [
502
+ projectIdFlag,
503
+ { name: "event-name", type: "string", required: true, desc: "Event name." }
504
+ ],
505
+ risk: "read",
506
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_name: ctx.str("event-name") })
507
+ });
508
+
509
+ // src/commands/te-analysis/meta/event/changelog-list.ts
510
+ var metadataEventChangelogList = createAnalysisMetaCapabilityCommand({
511
+ resource: "event",
512
+ command: "changelog-list",
513
+ capabilityId: "metadata.event.changelog_list",
514
+ description: "List event metadata change logs.",
515
+ flags: [
516
+ projectIdFlag,
517
+ { name: "event-name", type: "string", required: true, desc: "Event name." }
518
+ ],
519
+ risk: "read",
520
+ buildInput: (ctx) => ({ ...projectInput(ctx), event_name: ctx.str("event-name") })
521
+ });
522
+
523
+ // src/commands/te-analysis/meta/event/index.ts
524
+ var commands = [
525
+ metadataEventList,
526
+ metadataEventGet,
527
+ metadataEventCreate,
528
+ metadataEventUpdate,
529
+ metadataEventRelationUpdate,
530
+ metadataEventHideUpdate,
531
+ metadataEventDelete,
532
+ metadataEventInfluenceList,
533
+ metadataEventChangelogList
534
+ ];
535
+ var event_default = commands;
536
+
537
+ // src/commands/te-analysis/meta/property/list.ts
538
+ var metadataPropertyList = createAnalysisMetaCapabilityCommand({
539
+ resource: "property",
540
+ command: "list",
541
+ capabilityId: "metadata.property.list",
542
+ description: "List event or user properties.",
543
+ flags: [
544
+ projectIdFlag,
545
+ { name: "table-type", type: "string", required: true, desc: "Property table type." }
546
+ ],
547
+ risk: "read",
548
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type") })
549
+ });
550
+
551
+ // src/commands/te-analysis/meta/property/get.ts
552
+ var metadataPropertyGet = createAnalysisMetaCapabilityCommand({
553
+ resource: "property",
554
+ command: "get",
555
+ capabilityId: "metadata.property.get",
556
+ description: "Get one event or user property metadata detail.",
557
+ flags: [
558
+ projectIdFlag,
559
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
560
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." }
561
+ ],
562
+ risk: "read",
563
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name") })
564
+ });
565
+
566
+ // src/commands/te-analysis/meta/property/create.ts
567
+ var metadataPropertyCreate = createAnalysisMetaCapabilityCommand({
568
+ resource: "property",
569
+ command: "create",
570
+ capabilityId: "metadata.property.create",
571
+ description: "Create event or user properties and optionally associate events.",
572
+ flags: [
573
+ projectIdFlag,
574
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
575
+ payloadFlag
576
+ ],
577
+ risk: "write",
578
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), payload: ctx.json("payload") })
579
+ });
580
+
581
+ // src/commands/te-analysis/meta/property/update.ts
582
+ var metadataPropertyUpdate = createAnalysisMetaCapabilityCommand({
583
+ resource: "property",
584
+ command: "update",
585
+ capabilityId: "metadata.property.update",
586
+ description: "Update property display names and remarks.",
587
+ flags: [
588
+ projectIdFlag,
589
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
590
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." },
591
+ { name: "prop-desc", type: "string", required: false, desc: "Property display name." },
592
+ { name: "prop-remark", type: "string", required: false, desc: "Property remark." }
593
+ ],
594
+ risk: "write",
595
+ 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") })
596
+ });
597
+
598
+ // src/commands/te-analysis/meta/property/relation-update.ts
599
+ var metadataPropertyRelationUpdate = createAnalysisMetaCapabilityCommand({
600
+ resource: "property",
601
+ command: "relation-update",
602
+ capabilityId: "metadata.property.relation_update",
603
+ description: "Update property type, connection relation, or event mapping.",
604
+ flags: [
605
+ projectIdFlag,
606
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
607
+ payloadFlag
608
+ ],
609
+ risk: "write",
610
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), payload: ctx.json("payload") })
611
+ });
612
+
613
+ // src/commands/te-analysis/meta/property/hide-update.ts
614
+ var metadataPropertyHideUpdate = createAnalysisMetaCapabilityCommand({
615
+ resource: "property",
616
+ command: "hide-update",
617
+ capabilityId: "metadata.property.hide_update",
618
+ description: "Batch hide or show properties.",
619
+ flags: [
620
+ projectIdFlag,
621
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
622
+ { name: "prop-names", type: "json", required: true, desc: "Property names JSON array, or a JSON string accepted by common-service." },
623
+ { name: "is-hide", type: "boolean", required: true, desc: "Whether to hide the properties." }
624
+ ],
625
+ risk: "write",
626
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_names: ctx.json("prop-names"), is_hide: ctx.bool("is-hide") })
627
+ });
628
+
629
+ // src/commands/te-analysis/meta/property/delete.ts
630
+ var metadataPropertyDelete = createAnalysisMetaCapabilityCommand({
631
+ resource: "property",
632
+ command: "delete",
633
+ capabilityId: "metadata.property.delete",
634
+ description: "Batch delete properties or virtual properties.",
635
+ flags: [
636
+ projectIdFlag,
637
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
638
+ { name: "prop-names", type: "json", required: true, desc: "Property names JSON array, or a JSON string accepted by common-service." }
639
+ ],
640
+ risk: "high-risk-write",
641
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_names: ctx.json("prop-names") })
642
+ });
643
+
644
+ // src/commands/te-analysis/meta/property/influence-list.ts
645
+ var metadataPropertyInfluenceList = createAnalysisMetaCapabilityCommand({
646
+ resource: "property",
647
+ command: "influence-list",
648
+ capabilityId: "metadata.property.influence_list",
649
+ description: "List assets affected by property changes.",
650
+ flags: [
651
+ projectIdFlag,
652
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
653
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." }
654
+ ],
655
+ risk: "read",
656
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name") })
657
+ });
658
+
659
+ // src/commands/te-analysis/meta/property/changelog-list.ts
660
+ var metadataPropertyChangelogList = createAnalysisMetaCapabilityCommand({
661
+ resource: "property",
662
+ command: "changelog-list",
663
+ capabilityId: "metadata.property.changelog_list",
664
+ description: "List property metadata change logs.",
665
+ flags: [
666
+ projectIdFlag,
667
+ { name: "table-type", type: "string", required: true, desc: "Property table type." },
668
+ { name: "prop-name", type: "string", required: true, desc: "Property column name." }
669
+ ],
670
+ risk: "read",
671
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_type: ctx.str("table-type"), prop_name: ctx.str("prop-name") })
672
+ });
673
+
674
+ // src/commands/te-analysis/meta/property/related-events.ts
675
+ var metadataPropertyRelatedEvents = createAnalysisMetaCapabilityCommand({
676
+ resource: "property",
677
+ command: "related-events",
678
+ capabilityId: "metadata.property.related_events",
679
+ description: "List events related to one event property.",
680
+ flags: [
681
+ projectIdFlag,
682
+ { name: "prop-name", type: "string", required: true, desc: "Event property column name." }
683
+ ],
684
+ risk: "read",
685
+ buildInput: (ctx) => ({ ...projectInput(ctx), prop_name: ctx.str("prop-name") })
686
+ });
687
+
688
+ // src/commands/te-analysis/meta/property/index.ts
689
+ var commands2 = [
690
+ metadataPropertyList,
691
+ metadataPropertyGet,
692
+ metadataPropertyCreate,
693
+ metadataPropertyUpdate,
694
+ metadataPropertyRelationUpdate,
695
+ metadataPropertyHideUpdate,
696
+ metadataPropertyDelete,
697
+ metadataPropertyInfluenceList,
698
+ metadataPropertyChangelogList,
699
+ metadataPropertyRelatedEvents
700
+ ];
701
+ var property_default = commands2;
702
+
703
+ // src/commands/te-analysis/meta/virtual-event/create.ts
704
+ var metadataVirtualEventCreate = createAnalysisMetaCapabilityCommand({
705
+ resource: "virtual-event",
706
+ command: "create",
707
+ capabilityId: "metadata.virtual_event.create",
708
+ description: "Create a virtual event from events and filters.",
709
+ flags: [
710
+ projectIdFlag,
711
+ payloadFlag,
712
+ { name: "override", type: "boolean", required: false, desc: "Whether to override an existing virtual event rule." }
713
+ ],
714
+ risk: "write",
715
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), payload: ctx.json("payload"), override: optionalBoolean2(ctx, "override") })
716
+ });
717
+
718
+ // src/commands/te-analysis/meta/virtual-event/get.ts
719
+ var metadataVirtualEventGet = createAnalysisMetaCapabilityCommand({
720
+ resource: "virtual-event",
721
+ command: "get",
722
+ capabilityId: "metadata.virtual_event.get",
723
+ description: "Get virtual event rule.",
724
+ flags: [
725
+ projectIdFlag,
726
+ { name: "v-event-id", type: "number", required: true, desc: "Virtual event ID." }
727
+ ],
728
+ risk: "read",
729
+ buildInput: (ctx) => ({ ...projectInput(ctx), v_event_id: ctx.num("v-event-id") })
730
+ });
731
+
732
+ // src/commands/te-analysis/meta/virtual-event/delete.ts
733
+ var metadataVirtualEventDelete = createAnalysisMetaCapabilityCommand({
734
+ resource: "virtual-event",
735
+ command: "delete",
736
+ capabilityId: "metadata.virtual_event.delete",
737
+ description: "Delete a virtual event rule.",
738
+ flags: [
739
+ projectIdFlag,
740
+ { name: "v-event-id", type: "number", required: true, desc: "Virtual event ID." }
741
+ ],
742
+ risk: "high-risk-write",
743
+ buildInput: (ctx) => ({ ...projectInput(ctx), v_event_id: ctx.num("v-event-id") })
744
+ });
745
+
746
+ // src/commands/te-analysis/meta/virtual-event/index.ts
747
+ var commands3 = [
748
+ metadataVirtualEventCreate,
749
+ metadataVirtualEventGet,
750
+ metadataVirtualEventDelete
751
+ ];
752
+ var virtual_event_default = commands3;
753
+
754
+ // src/commands/te-analysis/meta/virtual-property/create.ts
755
+ var metadataVirtualPropertyCreate = createAnalysisMetaCapabilityCommand({
756
+ resource: "virtual-property",
757
+ command: "create",
758
+ capabilityId: "metadata.virtual_property.create",
759
+ description: "Create a SQL virtual event or user property.",
760
+ flags: [
761
+ projectIdFlag,
762
+ { name: "sql-expression", type: "string", required: true, desc: "SQL expression used to calculate the virtual property." },
763
+ { name: "v-prop", type: "json", required: true, desc: "Virtual property JSON object with property.column_name/table_type/select_type fields." },
764
+ { name: "properties", type: "json", required: false, desc: "Dependent property JSON array." },
765
+ { name: "sql-event-relation-type", type: "string", required: false, desc: "relation_default, relation_always, or relation_by_setting." },
766
+ { name: "related-events", type: "json", required: false, desc: "Related events JSON array when using relation_by_setting." },
767
+ { name: "tag-date-policies", type: "json", required: false, desc: "Optional tag date policies JSON array." },
768
+ { name: "replace-remark", type: "string", required: false, desc: "Replacement remark." },
769
+ { name: "replace-suggestion", type: "string", required: false, desc: "Replacement suggestion." }
770
+ ],
771
+ risk: "write",
772
+ buildInput: (ctx) => compactInput({
773
+ ...projectInput(ctx),
774
+ sql_expression: ctx.str("sql-expression"),
775
+ v_prop: ctx.json("v-prop"),
776
+ properties: optionalJson2(ctx, "properties"),
777
+ sql_event_relation_type: optionalString2(ctx, "sql-event-relation-type"),
778
+ related_events: optionalJson2(ctx, "related-events"),
779
+ tag_date_policies: optionalJson2(ctx, "tag-date-policies"),
780
+ replace_remark: optionalString2(ctx, "replace-remark"),
781
+ replace_suggestion: optionalString2(ctx, "replace-suggestion")
782
+ })
783
+ });
784
+
785
+ // src/commands/te-analysis/meta/virtual-property/sql-rule-update.ts
786
+ var metadataVirtualPropertySqlRuleUpdate = createAnalysisMetaCapabilityCommand({
787
+ resource: "virtual-property",
788
+ command: "sql-rule-update",
789
+ capabilityId: "metadata.virtual_property.sql_rule_update",
790
+ description: "Update SQL virtual property rule.",
791
+ flags: [
792
+ projectIdFlag,
793
+ { name: "sql-expression", type: "string", required: true, desc: "SQL expression used to calculate the virtual property." },
794
+ { name: "v-prop", type: "json", required: true, desc: "Virtual property JSON object with prop_id/property fields." },
795
+ { name: "properties", type: "json", required: false, desc: "Dependent property JSON array." },
796
+ { name: "sql-event-relation-type", type: "string", required: false, desc: "relation_default, relation_always, or relation_by_setting." },
797
+ { name: "related-events", type: "json", required: false, desc: "Related events JSON array when using relation_by_setting." },
798
+ { name: "tag-date-policies", type: "json", required: false, desc: "Optional tag date policies JSON array." },
799
+ { name: "replace-remark", type: "string", required: false, desc: "Replacement remark." },
800
+ { name: "replace-suggestion", type: "string", required: false, desc: "Replacement suggestion." }
801
+ ],
802
+ risk: "write",
803
+ buildInput: (ctx) => compactInput({
804
+ ...projectInput(ctx),
805
+ sql_expression: ctx.str("sql-expression"),
806
+ v_prop: ctx.json("v-prop"),
807
+ properties: optionalJson2(ctx, "properties"),
808
+ sql_event_relation_type: optionalString2(ctx, "sql-event-relation-type"),
809
+ related_events: optionalJson2(ctx, "related-events"),
810
+ tag_date_policies: optionalJson2(ctx, "tag-date-policies"),
811
+ replace_remark: optionalString2(ctx, "replace-remark"),
812
+ replace_suggestion: optionalString2(ctx, "replace-suggestion")
813
+ })
814
+ });
815
+
816
+ // src/commands/te-analysis/meta/virtual-property/sql-rule-delete.ts
817
+ var metadataVirtualPropertySqlRuleDelete = createAnalysisMetaCapabilityCommand({
818
+ resource: "virtual-property",
819
+ command: "sql-rule-delete",
820
+ capabilityId: "metadata.virtual_property.sql_rule_delete",
821
+ description: "Delete or revoke SQL virtual property rule.",
822
+ flags: [
823
+ projectIdFlag,
824
+ { name: "v-prop-id", type: "number", required: true, desc: "Virtual property ID." },
825
+ { name: "operation", type: "string", required: false, desc: "Delete operation. Use revoke to revoke instead of delete." }
826
+ ],
827
+ risk: "high-risk-write",
828
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), v_prop_id: ctx.num("v-prop-id"), operation: optionalString2(ctx, "operation") })
829
+ });
830
+
831
+ // src/commands/te-analysis/meta/virtual-property/index.ts
832
+ var commands4 = [
833
+ metadataVirtualPropertyCreate,
834
+ metadataVirtualPropertySqlRuleUpdate,
835
+ metadataVirtualPropertySqlRuleDelete
836
+ ];
837
+ var virtual_property_default = commands4;
838
+
839
+ // src/commands/te-analysis/meta/metric/list.ts
840
+ var metadataMetricList = createAnalysisMetaCapabilityCommand({
841
+ resource: "metric",
842
+ command: "list",
843
+ capabilityId: "metadata.metric.list",
844
+ description: "List project metrics.",
845
+ flags: [
846
+ projectIdFlag,
847
+ { name: "ignore-authentication", type: "boolean", required: false, desc: "Whether to skip asset authentication status decoration." }
848
+ ],
849
+ risk: "read",
850
+ buildInput: (ctx) => compactInput({ ...projectInput(ctx), ignore_authentication: optionalBoolean2(ctx, "ignore-authentication") })
851
+ });
852
+
853
+ // src/commands/te-analysis/meta/metric/get.ts
854
+ var metadataMetricGet = createAnalysisMetaCapabilityCommand({
855
+ resource: "metric",
856
+ command: "get",
857
+ capabilityId: "metadata.metric.get",
858
+ description: "Get metric definition, events, and params.",
859
+ flags: [
860
+ projectIdFlag,
861
+ { name: "metric-id", type: "number", required: true, desc: "Metric ID." }
862
+ ],
863
+ risk: "read",
864
+ buildInput: (ctx) => ({ ...projectInput(ctx), metric_id: ctx.num("metric-id") })
865
+ });
866
+
867
+ // src/commands/te-analysis/meta/metric/create.ts
868
+ var metadataMetricCreate = createAnalysisMetaCapabilityCommand({
869
+ resource: "metric",
870
+ command: "create",
871
+ capabilityId: "metadata.metric.create",
872
+ description: "Create a metric from event or retention analysis configuration.",
873
+ flags: [
874
+ projectIdFlag,
875
+ { name: "metric-name", type: "string", required: true, desc: "Metric technical name, for example pay_count." },
876
+ { name: "metric-desc", type: "string", required: true, desc: "Metric display name." },
877
+ { name: "metric-remark", type: "string", required: false, desc: "Metric remark." },
878
+ { name: "metric-mode", type: "number", required: true, desc: "Metric model mode, for example 0 for event analysis." },
879
+ { name: "metric-events", type: "json", required: true, desc: "Metric event-analysis QP JSON array." },
880
+ { name: "metric-params", type: "json", required: false, desc: "Metric params JSON object. Defaults to {} in common when omitted." }
881
+ ],
882
+ risk: "write",
883
+ buildInput: (ctx) => compactInput({
884
+ ...projectInput(ctx),
885
+ metric_name: ctx.str("metric-name"),
886
+ metric_desc: ctx.str("metric-desc"),
887
+ metric_remark: optionalString2(ctx, "metric-remark"),
888
+ metric_mode: ctx.num("metric-mode"),
889
+ metric_events: ctx.json("metric-events"),
890
+ metric_params: optionalJson2(ctx, "metric-params")
891
+ })
892
+ });
893
+
894
+ // src/commands/te-analysis/meta/metric/update.ts
895
+ var metadataMetricUpdate = createAnalysisMetaCapabilityCommand({
896
+ resource: "metric",
897
+ command: "update",
898
+ capabilityId: "metadata.metric.update",
899
+ description: "Update metric definition, name, and remark.",
900
+ flags: [
901
+ projectIdFlag,
902
+ { name: "metric-id", type: "number", required: true, desc: "Metric ID." },
903
+ { name: "metric-name", type: "string", required: false, desc: "Metric technical name for full-definition update." },
904
+ { name: "metric-desc", type: "string", required: false, desc: "Metric display name." },
905
+ { name: "metric-remark", type: "string", required: false, desc: "Metric remark." },
906
+ { name: "metric-mode", type: "number", required: false, desc: "Metric model mode for full-definition update." },
907
+ { name: "metric-events", type: "json", required: false, desc: "Metric event-analysis QP JSON array for full-definition update." },
908
+ { name: "metric-params", type: "json", required: false, desc: "Metric params JSON object." }
909
+ ],
910
+ risk: "write",
911
+ buildInput: (ctx) => compactInput({
912
+ ...projectInput(ctx),
913
+ metric_id: ctx.num("metric-id"),
914
+ metric_name: optionalString2(ctx, "metric-name"),
915
+ metric_desc: optionalString2(ctx, "metric-desc"),
916
+ metric_remark: optionalString2(ctx, "metric-remark"),
917
+ metric_mode: optionalNumber2(ctx, "metric-mode"),
918
+ metric_events: optionalJson2(ctx, "metric-events"),
919
+ metric_params: optionalJson2(ctx, "metric-params")
920
+ })
921
+ });
922
+
923
+ // src/commands/te-analysis/meta/metric/delete.ts
924
+ var metadataMetricDelete = createAnalysisMetaCapabilityCommand({
925
+ resource: "metric",
926
+ command: "delete",
927
+ capabilityId: "metadata.metric.delete",
928
+ description: "Delete a metric.",
929
+ flags: [
930
+ projectIdFlag,
931
+ { name: "metric-id", type: "number", required: true, desc: "Metric ID." }
932
+ ],
933
+ risk: "high-risk-write",
934
+ buildInput: (ctx) => ({ ...projectInput(ctx), metric_id: ctx.num("metric-id") })
935
+ });
936
+
937
+ // src/commands/te-analysis/meta/metric/index.ts
938
+ var commands5 = [
939
+ metadataMetricList,
940
+ metadataMetricGet,
941
+ metadataMetricCreate,
942
+ metadataMetricUpdate,
943
+ metadataMetricDelete
944
+ ];
945
+ var metric_default = commands5;
946
+
947
+ // src/commands/te-analysis/meta/asset/search.ts
948
+ var metadataAssetSearch = createAnalysisMetaCapabilityCommand({
949
+ resource: "asset",
950
+ command: "search",
951
+ capabilityId: "metadata.asset.search",
952
+ description: "Search project assets by keyword.",
953
+ flags: [
954
+ projectIdFlag,
955
+ payloadFlag
956
+ ],
957
+ risk: "read",
958
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
959
+ });
960
+
961
+ // src/commands/te-analysis/meta/asset/recent-list.ts
962
+ var metadataAssetRecentList = createAnalysisMetaCapabilityCommand({
963
+ resource: "asset",
964
+ command: "recent-list",
965
+ capabilityId: "metadata.asset.recent_list",
966
+ description: "List recently visited assets for the current user.",
967
+ flags: [
968
+ projectIdFlag,
969
+ payloadFlag
970
+ ],
971
+ risk: "read",
972
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
973
+ });
974
+
975
+ // src/commands/te-analysis/meta/asset/authentication-list.ts
976
+ var metadataAssetAuthenticationList = createAnalysisMetaCapabilityCommand({
977
+ resource: "asset",
978
+ command: "authentication-list",
979
+ capabilityId: "metadata.asset_authentication.list",
980
+ description: "List authenticatable project assets and authentication status.",
981
+ flags: [
982
+ projectIdFlag
983
+ ],
984
+ risk: "read",
985
+ buildInput: projectInput
986
+ });
987
+
988
+ // src/commands/te-analysis/meta/asset/authentication-update.ts
989
+ var metadataAssetAuthenticationUpdate = createAnalysisMetaCapabilityCommand({
990
+ resource: "asset",
991
+ command: "authentication-update",
992
+ capabilityId: "metadata.asset_authentication.update",
993
+ description: "Batch authenticate or unauthenticate assets.",
994
+ flags: [
995
+ projectIdFlag,
996
+ payloadFlag
997
+ ],
998
+ risk: "write",
999
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
1000
+ });
1001
+
1002
+ // src/commands/te-analysis/meta/asset/abnormal-list.ts
1003
+ var metadataAssetAbnormalList = createAnalysisMetaCapabilityCommand({
1004
+ resource: "asset",
1005
+ command: "abnormal-list",
1006
+ capabilityId: "metadata.asset_abnormal.list",
1007
+ description: "List abnormal assets by resource type.",
1008
+ flags: [
1009
+ projectIdFlag,
1010
+ { name: "resource-types", type: "string", required: true, desc: "Resource types to query." }
1011
+ ],
1012
+ risk: "read",
1013
+ buildInput: (ctx) => ({ ...projectInput(ctx), resource_types: ctx.str("resource-types") })
1014
+ });
1015
+
1016
+ // src/commands/te-analysis/meta/asset/abnormal-get.ts
1017
+ var metadataAssetAbnormalGet = createAnalysisMetaCapabilityCommand({
1018
+ resource: "asset",
1019
+ command: "abnormal-get",
1020
+ capabilityId: "metadata.asset_abnormal.get",
1021
+ description: "Get abnormal reason for one asset.",
1022
+ flags: [
1023
+ projectIdFlag,
1024
+ { name: "resource-type", type: "string", required: true, desc: "Resource type." },
1025
+ { name: "resource-id", type: "string", required: false, desc: "Resource ID." },
1026
+ { name: "resource-name", type: "string", required: false, desc: "Resource name." },
1027
+ { name: "table-type", type: "number", required: false, desc: "Property table type when the resource is a property." }
1028
+ ],
1029
+ risk: "read",
1030
+ 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") })
1031
+ });
1032
+
1033
+ // src/commands/te-analysis/meta/asset/index.ts
1034
+ var commands6 = [
1035
+ metadataAssetSearch,
1036
+ metadataAssetRecentList,
1037
+ metadataAssetAuthenticationList,
1038
+ metadataAssetAuthenticationUpdate,
1039
+ metadataAssetAbnormalList,
1040
+ metadataAssetAbnormalGet
1041
+ ];
1042
+ var asset_default = commands6;
1043
+
1044
+ // src/commands/te-analysis/meta/exchange/config-update.ts
1045
+ var metadataExchangeConfigUpdate = createAnalysisMetaCapabilityCommand({
1046
+ resource: "exchange",
1047
+ command: "config-update",
1048
+ capabilityId: "metadata.exchange_config.update",
1049
+ description: "Update exchange-rate configuration switch or value.",
1050
+ flags: [
1051
+ projectIdFlag,
1052
+ { name: "config-val", type: "string", required: true, desc: "Exchange-rate configuration value." }
1053
+ ],
1054
+ risk: "write",
1055
+ buildInput: (ctx) => ({ ...projectInput(ctx), config_val: ctx.str("config-val") })
1056
+ });
1057
+
1058
+ // src/commands/te-analysis/meta/exchange/rule-list.ts
1059
+ var metadataExchangeRuleList = createAnalysisMetaCapabilityCommand({
1060
+ resource: "exchange",
1061
+ command: "rule-list",
1062
+ capabilityId: "metadata.exchange_rule.list",
1063
+ description: "List exchange-rate conversion rules.",
1064
+ flags: [
1065
+ projectIdFlag
1066
+ ],
1067
+ risk: "read",
1068
+ buildInput: projectInput
1069
+ });
1070
+
1071
+ // src/commands/te-analysis/meta/exchange/rule-validate.ts
1072
+ var metadataExchangeRuleValidate = createAnalysisMetaCapabilityCommand({
1073
+ resource: "exchange",
1074
+ command: "rule-validate",
1075
+ capabilityId: "metadata.exchange_rule.validate",
1076
+ description: "Validate affected range before saving exchange-rate rules.",
1077
+ flags: [
1078
+ projectIdFlag,
1079
+ payloadFlag
1080
+ ],
1081
+ risk: "read",
1082
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
1083
+ });
1084
+
1085
+ // src/commands/te-analysis/meta/exchange/rule-update.ts
1086
+ var metadataExchangeRuleUpdate = createAnalysisMetaCapabilityCommand({
1087
+ resource: "exchange",
1088
+ command: "rule-update",
1089
+ capabilityId: "metadata.exchange_rule.update",
1090
+ description: "Save currency field, amount field, and target currency rules.",
1091
+ flags: [
1092
+ projectIdFlag,
1093
+ payloadFlag
1094
+ ],
1095
+ risk: "write",
1096
+ buildInput: (ctx) => ({ ...projectInput(ctx), payload: ctx.json("payload") })
1097
+ });
1098
+
1099
+ // src/commands/te-analysis/meta/exchange/rate-refresh.ts
1100
+ var metadataExchangeRateRefresh = createAnalysisMetaCapabilityCommand({
1101
+ resource: "exchange",
1102
+ command: "rate-refresh",
1103
+ capabilityId: "metadata.exchange_rate.refresh",
1104
+ description: "Refresh exchange-rate data manually.",
1105
+ flags: [
1106
+ projectIdFlag
1107
+ ],
1108
+ risk: "write",
1109
+ buildInput: projectInput
1110
+ });
1111
+
1112
+ // src/commands/te-analysis/meta/exchange/index.ts
1113
+ var commands7 = [
1114
+ metadataExchangeConfigUpdate,
1115
+ metadataExchangeRuleList,
1116
+ metadataExchangeRuleValidate,
1117
+ metadataExchangeRuleUpdate,
1118
+ metadataExchangeRateRefresh
1119
+ ];
1120
+ var exchange_default = commands7;
1121
+
1122
+ // src/commands/te-analysis/meta/super-metadata/export.ts
1123
+ var metadataSuperMetadataExport = createAnalysisMetaCapabilityCommand({
1124
+ resource: "super-metadata",
1125
+ command: "export",
1126
+ capabilityId: "metadata.super_metadata.export",
1127
+ description: "Export super event and super property configuration as an asynchronous XLSX artifact.",
1128
+ flags: [
1129
+ projectIdFlag,
1130
+ { name: "request-id", type: "string", required: false, desc: "Optional cli_<32 lowercase hex> request ID. Generated when omitted." },
1131
+ { name: "timeout-seconds", type: "number", required: false, desc: "Export timeout seconds. Default: 3600, max: 7200." }
1132
+ ],
1133
+ risk: "read",
1134
+ buildInput: (ctx) => compactInput({
1135
+ ...projectInput(ctx),
1136
+ request_id: optionalString2(ctx, "request-id"),
1137
+ timeout_seconds: optionalNumber2(ctx, "timeout-seconds")
1138
+ })
1139
+ });
1140
+
1141
+ // src/commands/te-analysis/meta/super-metadata/import.ts
1142
+ var metadataSuperMetadataImport = createAnalysisMetaCapabilityCommand({
1143
+ resource: "super-metadata",
1144
+ command: "import",
1145
+ capabilityId: "metadata.super_metadata.import",
1146
+ description: "Pre-import and confirm-import super event and super property configuration.",
1147
+ flags: [
1148
+ projectIdFlag,
1149
+ { name: "operation", type: "string", required: true, desc: "Import step: pre_import or ensure_import." },
1150
+ { name: "input-file-id", type: "string", required: false, desc: "Uploaded XLSX input file ID for pre_import. Upload with purpose=super_metadata.import.xlsx." },
1151
+ { name: "pre-import-meta-uuid", type: "string", required: false, desc: "UUID returned by pre_import, required for ensure_import." }
1152
+ ],
1153
+ risk: "write",
1154
+ buildInput: (ctx) => compactInput({
1155
+ ...projectInput(ctx),
1156
+ operation: ctx.str("operation"),
1157
+ input_file_id: optionalString2(ctx, "input-file-id"),
1158
+ pre_import_meta_uuid: optionalString2(ctx, "pre-import-meta-uuid")
1159
+ })
1160
+ });
1161
+
1162
+ // src/commands/te-analysis/meta/super-metadata/index.ts
1163
+ var commands8 = [
1164
+ metadataSuperMetadataExport,
1165
+ metadataSuperMetadataImport
1166
+ ];
1167
+ var super_metadata_default = commands8;
1168
+
1169
+ // src/commands/te-analysis/meta/datatable/columns-get.ts
1170
+ var metadataDataTableColumnsGet = createAnalysisMetaCapabilityCommand({
1171
+ resource: "datatable",
1172
+ command: "columns-get",
1173
+ capabilityId: "metadata.data_table.columns_get",
1174
+ description: "Get columns for a project table reference.",
1175
+ flags: [
1176
+ projectIdFlag,
1177
+ { name: "table-ref", type: "string", required: true, desc: "Project table reference." }
1178
+ ],
1179
+ risk: "read",
1180
+ buildInput: (ctx) => ({ ...projectInput(ctx), table_ref: ctx.str("table-ref") })
1181
+ });
1182
+
1183
+ // src/commands/te-analysis/meta/datatable/influence-list.ts
1184
+ var metadataDataTableInfluenceList = createAnalysisMetaCapabilityCommand({
1185
+ resource: "datatable",
1186
+ command: "influence-list",
1187
+ capabilityId: "metadata.data_table.influence_list",
1188
+ description: "List metadata and assets affected by data table deletion or column changes.",
1189
+ flags: [
1190
+ projectIdFlag,
1191
+ { name: "datatable-id", type: "number", required: true, desc: "Data table ID." }
1192
+ ],
1193
+ risk: "read",
1194
+ buildInput: (ctx) => ({ ...projectInput(ctx), datatable_id: ctx.num("datatable-id") })
1195
+ });
1196
+
1197
+ // src/commands/te-analysis/meta/datatable/version-list.ts
1198
+ var metadataDataTableVersionList = createAnalysisMetaCapabilityCommand({
1199
+ resource: "datatable",
1200
+ command: "version-list",
1201
+ capabilityId: "metadata.data_table_version.list",
1202
+ description: "List data table historical versions.",
1203
+ flags: [
1204
+ projectIdFlag,
1205
+ { name: "datatable-id", type: "number", required: true, desc: "Data table ID." }
1206
+ ],
1207
+ risk: "read",
1208
+ buildInput: (ctx) => ({ ...projectInput(ctx), datatable_id: ctx.num("datatable-id") })
1209
+ });
1210
+
1211
+ // src/commands/te-analysis/meta/datatable/version-get.ts
1212
+ var metadataDataTableVersionGet = createAnalysisMetaCapabilityCommand({
1213
+ resource: "datatable",
1214
+ command: "version-get",
1215
+ capabilityId: "metadata.data_table_version.get",
1216
+ description: "Get data table version detail.",
1217
+ flags: [
1218
+ projectIdFlag,
1219
+ { name: "version-id", type: "number", required: true, desc: "Data table version ID." }
1220
+ ],
1221
+ risk: "read",
1222
+ buildInput: (ctx) => ({ ...projectInput(ctx), version_id: ctx.num("version-id") })
1223
+ });
1224
+
1225
+ // src/commands/te-analysis/meta/datatable/index.ts
1226
+ var commands9 = [
1227
+ metadataDataTableColumnsGet,
1228
+ metadataDataTableInfluenceList,
1229
+ metadataDataTableVersionList,
1230
+ metadataDataTableVersionGet
1231
+ ];
1232
+ var datatable_default = commands9;
1233
+
239
1234
  // src/commands/te-analysis/meta/index.ts
240
- var commands = [
1235
+ var commands10 = [
241
1236
  getAlertDefinitionSchema,
242
1237
  listAlerts,
243
1238
  getAlert,
244
1239
  createAlert,
245
1240
  updateAlert,
246
- deleteAlert
1241
+ deleteAlert,
1242
+ ...event_default,
1243
+ ...property_default,
1244
+ ...virtual_event_default,
1245
+ ...virtual_property_default,
1246
+ ...metric_default,
1247
+ ...asset_default,
1248
+ ...exchange_default,
1249
+ ...super_metadata_default,
1250
+ ...datatable_default
247
1251
  ];
248
- var meta_default = commands;
1252
+ var meta_default = commands10;
249
1253
 
250
1254
  // src/commands/te-analysis/report/list-reports.ts
251
1255
  var listReports = createMcpCommand({
@@ -353,7 +1357,7 @@ var deleteReport = createMcpCommand({
353
1357
  { name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
354
1358
  { name: "report_id", type: "number", required: true, desc: "Report ID to delete" }
355
1359
  ],
356
- risk: "write",
1360
+ risk: "high-risk-write",
357
1361
  buildArgs: (ctx) => ({
358
1362
  projectId: ctx.num("project_id"),
359
1363
  reportId: ctx.num("report_id")
@@ -367,7 +1371,7 @@ var updateReport = createMcpCommand({
367
1371
  flags: [
368
1372
  { name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
369
1373
  { name: "report_id", type: "number", required: true, desc: "Report ID to update" },
370
- { name: "version", type: "number", required: true, desc: "Current report version number. Retrieve via +get_report_definition." },
1374
+ { name: "report_version", type: "number", required: true, desc: "Current report version number. Retrieve via +get_report_definition." },
371
1375
  { name: "report_name", type: "string", required: false, desc: "New report name. Omit to keep existing." },
372
1376
  { name: "report_desc", type: "string", required: false, desc: "New report description. Omit to keep existing." },
373
1377
  { name: "qp", type: "string", required: false, desc: "New QP JSON string. Omit to keep existing. When provided, also supply report_model." },
@@ -378,7 +1382,7 @@ var updateReport = createMcpCommand({
378
1382
  buildArgs: (ctx) => ({
379
1383
  projectId: ctx.num("project_id"),
380
1384
  reportId: ctx.num("report_id"),
381
- version: ctx.num("version"),
1385
+ version: ctx.num("report_version"),
382
1386
  reportName: optionalString(ctx, "report_name"),
383
1387
  reportDesc: optionalString(ctx, "report_desc"),
384
1388
  qp: optionalString(ctx, "qp"),
@@ -387,7 +1391,7 @@ var updateReport = createMcpCommand({
387
1391
  });
388
1392
 
389
1393
  // src/commands/te-analysis/report/index.ts
390
- var commands2 = [
1394
+ var commands11 = [
391
1395
  listReports,
392
1396
  getReportDefinition,
393
1397
  queryReportData,
@@ -395,154 +1399,7 @@ var commands2 = [
395
1399
  deleteReport,
396
1400
  updateReport
397
1401
  ];
398
- var report_default = commands2;
399
-
400
- // src/commands/te-analysis/capability-shared.ts
401
- function createAnalysisCapabilityCommand(config) {
402
- return createCapabilityCommand({
403
- ...config,
404
- cliService: "analysis"
405
- });
406
- }
407
- var projectIdFlag = {
408
- name: "project-id",
409
- type: "number",
410
- required: true,
411
- desc: "Numeric project ID.",
412
- alias: "p"
413
- };
414
- var queryFlag = {
415
- name: "query",
416
- type: "string",
417
- required: false,
418
- desc: "Optional keyword filter.",
419
- alias: "q"
420
- };
421
- var fieldsFlag = {
422
- name: "fields",
423
- type: "json",
424
- required: false,
425
- desc: "Optional result field projection JSON array.",
426
- alias: "f"
427
- };
428
- var limitFlag = {
429
- name: "limit",
430
- type: "number",
431
- required: false,
432
- desc: "Optional inline result limit.",
433
- alias: "l"
434
- };
435
- var offsetFlag = {
436
- name: "offset",
437
- type: "number",
438
- required: false,
439
- desc: "Optional zero-based result offset.",
440
- alias: "o"
441
- };
442
- var payloadFlag = {
443
- name: "payload",
444
- type: "json",
445
- required: false,
446
- desc: "Optional snake_case object for complex capability payload fields."
447
- };
448
- function projectInput(ctx) {
449
- return { project_id: ctx.num("project-id") };
450
- }
451
- function listInput(ctx) {
452
- return compactInput({
453
- ...projectInput(ctx),
454
- query: optionalString3(ctx, "query"),
455
- fields: optionalJson4(ctx, "fields"),
456
- limit: optionalNumber3(ctx, "limit"),
457
- offset: optionalNumber3(ctx, "offset")
458
- });
459
- }
460
- function dashboardReportDataInput(ctx) {
461
- return compactInput({
462
- ...projectInput(ctx),
463
- dashboard_id: ctx.num("dashboard-id"),
464
- report_ids: optionalJsonArray(ctx, "report-ids"),
465
- filters: optionalJson4(ctx, "filters"),
466
- start_time: optionalString3(ctx, "start-time"),
467
- end_time: optionalString3(ctx, "end-time"),
468
- use_cache: optionalBoolean5(ctx, "use-cache"),
469
- request_id: optionalString3(ctx, "request-id"),
470
- timeout_seconds: optionalNumber3(ctx, "timeout-seconds"),
471
- limit: optionalNumber3(ctx, "limit"),
472
- format: optionalString3(ctx, "artifact-format")
473
- });
474
- }
475
- function biPanelPageDataInput(ctx) {
476
- return compactInput({
477
- ...projectInput(ctx),
478
- panel_id: ctx.num("panel-id"),
479
- page_key: ctx.str("page-key"),
480
- result_type: ctx.str("result-type"),
481
- chart_ids: optionalJsonArray(ctx, "chart-ids"),
482
- parameter_controls: optionalJson4(ctx, "parameter-controls"),
483
- permission_controls: optionalJson4(ctx, "permission-controls"),
484
- chart_filter_controls: optionalJson4(ctx, "chart-filter-controls"),
485
- columns: optionalJson4(ctx, "columns"),
486
- row_limit: optionalNumber3(ctx, "row-limit"),
487
- row_offset: optionalNumber3(ctx, "row-offset"),
488
- block_limit: optionalNumber3(ctx, "block-limit"),
489
- block_offset: optionalNumber3(ctx, "block-offset"),
490
- use_cache: optionalBoolean5(ctx, "use-cache"),
491
- request_id: optionalString3(ctx, "request-id"),
492
- timeout_seconds: optionalNumber3(ctx, "timeout-seconds"),
493
- limit: optionalNumber3(ctx, "limit"),
494
- format: optionalString3(ctx, "artifact-format")
495
- });
496
- }
497
- function optionalString3(ctx, name) {
498
- const value = ctx.str(name);
499
- return value === "" ? void 0 : value;
500
- }
501
- function optionalNumber3(ctx, name) {
502
- const value = ctx.str(name);
503
- return value === "" ? void 0 : Number(value);
504
- }
505
- function optionalBoolean5(ctx, name) {
506
- const value = ctx.str(name);
507
- return value === "" ? void 0 : ctx.bool(name);
508
- }
509
- function stringWithDefault(ctx, name, defaultValue) {
510
- const value = ctx.str(name);
511
- return value === "" ? defaultValue : value;
512
- }
513
- function numberWithDefault(ctx, name, defaultValue) {
514
- const value = ctx.str(name);
515
- return value === "" ? defaultValue : Number(value);
516
- }
517
- function booleanWithDefault(ctx, name, defaultValue) {
518
- const value = ctx.str(name);
519
- return value === "" ? defaultValue : ctx.bool(name);
520
- }
521
- function optionalJson4(ctx, name) {
522
- const value = ctx.str(name);
523
- return value === "" ? void 0 : ctx.json(name);
524
- }
525
- function jsonArray(ctx, name) {
526
- const value = ctx.json(name);
527
- return Array.isArray(value) ? value : [value];
528
- }
529
- function optionalJsonArray(ctx, name) {
530
- const value = ctx.str(name);
531
- if (value === "") {
532
- return void 0;
533
- }
534
- const parsed = ctx.json(name);
535
- return Array.isArray(parsed) ? parsed : [parsed];
536
- }
537
- function compactInput(input) {
538
- const result = {};
539
- for (const [key, value] of Object.entries(input)) {
540
- if (value !== void 0) {
541
- result[key] = value;
542
- }
543
- }
544
- return result;
545
- }
1402
+ var report_default = commands11;
546
1403
 
547
1404
  // src/commands/te-analysis/dashboard/list.ts
548
1405
  var dashboardList = createAnalysisCapabilityCommand({
@@ -573,10 +1430,10 @@ var dashboardCreate = createAnalysisCapabilityCommand({
573
1430
  buildInput: (ctx) => compactInput({
574
1431
  ...projectInput(ctx),
575
1432
  dashboard_name: ctx.str("dashboard-name"),
576
- space_id: optionalNumber3(ctx, "space-id"),
577
- folder_id: optionalNumber3(ctx, "folder-id"),
578
- initial_report_id: optionalNumber3(ctx, "initial-report-id"),
579
- payload: optionalJson4(ctx, "payload")
1433
+ space_id: optionalNumber2(ctx, "space-id"),
1434
+ folder_id: optionalNumber2(ctx, "folder-id"),
1435
+ initial_report_id: optionalNumber2(ctx, "initial-report-id"),
1436
+ payload: optionalJson2(ctx, "payload")
580
1437
  })
581
1438
  });
582
1439
 
@@ -595,7 +1452,7 @@ var dashboardGet = createAnalysisCapabilityCommand({
595
1452
  buildInput: (ctx) => compactInput({
596
1453
  ...projectInput(ctx),
597
1454
  dashboard_id: ctx.num("dashboard-id"),
598
- use_cache: optionalBoolean5(ctx, "use-cache")
1455
+ use_cache: optionalBoolean2(ctx, "use-cache")
599
1456
  })
600
1457
  });
601
1458
 
@@ -624,17 +1481,17 @@ var dashboardUpdate = createAnalysisCapabilityCommand({
624
1481
  buildInput: (ctx) => compactInput({
625
1482
  ...projectInput(ctx),
626
1483
  operation: ctx.str("operation"),
627
- dashboard_id: optionalNumber3(ctx, "dashboard-id"),
1484
+ dashboard_id: optionalNumber2(ctx, "dashboard-id"),
628
1485
  dashboard_ids: optionalJsonArray(ctx, "dashboard-ids"),
629
- dashboard_name: optionalString3(ctx, "dashboard-name"),
630
- zone_offset: optionalNumber3(ctx, "zone-offset"),
631
- refresh_type: optionalNumber3(ctx, "refresh-type"),
632
- dashboard_status: optionalNumber3(ctx, "dashboard-status"),
633
- note_id: optionalNumber3(ctx, "note-id"),
634
- note_title: optionalString3(ctx, "note-title"),
635
- description: optionalString3(ctx, "description"),
636
- ui_config: optionalString3(ctx, "ui-config"),
637
- payload: optionalJson4(ctx, "payload")
1486
+ dashboard_name: optionalString2(ctx, "dashboard-name"),
1487
+ zone_offset: optionalNumber2(ctx, "zone-offset"),
1488
+ refresh_type: optionalNumber2(ctx, "refresh-type"),
1489
+ dashboard_status: optionalNumber2(ctx, "dashboard-status"),
1490
+ note_id: optionalNumber2(ctx, "note-id"),
1491
+ note_title: optionalString2(ctx, "note-title"),
1492
+ description: optionalString2(ctx, "description"),
1493
+ ui_config: optionalString2(ctx, "ui-config"),
1494
+ payload: optionalJson2(ctx, "payload")
638
1495
  })
639
1496
  });
640
1497
 
@@ -668,8 +1525,8 @@ var dashboardShare = createAnalysisCapabilityCommand({
668
1525
  buildInput: (ctx) => compactInput({
669
1526
  ...projectInput(ctx),
670
1527
  dashboard_id: ctx.num("dashboard-id"),
671
- member_authorities: optionalJson4(ctx, "member-authorities"),
672
- payload: optionalJson4(ctx, "payload")
1528
+ member_authorities: optionalJson2(ctx, "member-authorities"),
1529
+ payload: optionalJson2(ctx, "payload")
673
1530
  })
674
1531
  });
675
1532
 
@@ -680,7 +1537,7 @@ var dashboardDelete = createAnalysisCapabilityCommand({
680
1537
  capabilityId: "analysis.dashboard.delete",
681
1538
  description: "Delete one or more dashboards.",
682
1539
  flags: [projectIdFlag, { name: "dashboard-ids", type: "json", required: true, desc: "Dashboard ID array." }],
683
- risk: "write",
1540
+ risk: "high-risk-write",
684
1541
  buildInput: (ctx) => ({
685
1542
  ...projectInput(ctx),
686
1543
  dashboard_ids: jsonArray(ctx, "dashboard-ids")
@@ -726,8 +1583,8 @@ var dashboardCopy = createAnalysisCapabilityCommand({
726
1583
  dashboard_id: ctx.num("dashboard-id"),
727
1584
  dashboard_name: ctx.str("dashboard-name"),
728
1585
  report_copy: booleanWithDefault(ctx, "report-copy", false),
729
- to_space_id: optionalNumber3(ctx, "to-space-id"),
730
- to_folder_id: optionalNumber3(ctx, "to-folder-id")
1586
+ to_space_id: optionalNumber2(ctx, "to-space-id"),
1587
+ to_folder_id: optionalNumber2(ctx, "to-folder-id")
731
1588
  })
732
1589
  });
733
1590
 
@@ -746,7 +1603,7 @@ var dashboardFreeze = createAnalysisCapabilityCommand({
746
1603
  buildInput: (ctx) => compactInput({
747
1604
  ...projectInput(ctx),
748
1605
  dashboard_ids: jsonArray(ctx, "dashboard-ids"),
749
- freeze: optionalBoolean5(ctx, "freeze")
1606
+ freeze: optionalBoolean2(ctx, "freeze")
750
1607
  })
751
1608
  });
752
1609
 
@@ -779,7 +1636,7 @@ var dashboardTaskStatus = createAnalysisCapabilityCommand({
779
1636
  });
780
1637
 
781
1638
  // src/commands/te-analysis/dashboard/index.ts
782
- var commands3 = [
1639
+ var commands12 = [
783
1640
  dashboardList,
784
1641
  dashboardCreate,
785
1642
  dashboardGet,
@@ -793,7 +1650,7 @@ var commands3 = [
793
1650
  dashboardAbnormalGet,
794
1651
  dashboardTaskStatus
795
1652
  ];
796
- var dashboard_default = commands3;
1653
+ var dashboard_default = commands12;
797
1654
 
798
1655
  // src/commands/te-analysis/dashboard-report-data/run.ts
799
1656
  var dashboardReportDataRun = createAnalysisCapabilityCommand({
@@ -805,7 +1662,7 @@ var dashboardReportDataRun = createAnalysisCapabilityCommand({
805
1662
  projectIdFlag,
806
1663
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
807
1664
  { name: "report-ids", type: "json", required: false, desc: "Optional report ID array. Omit to query all dashboard reports." },
808
- { name: "filters", type: "json", required: false, desc: "Optional dashboard filter JSON." },
1665
+ { 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":[...]}.' },
809
1666
  { name: "start-time", type: "string", required: false, desc: "Optional start date/time." },
810
1667
  { name: "end-time", type: "string", required: false, desc: "Optional end date/time." },
811
1668
  { name: "use-cache", type: "boolean", required: false, desc: "Whether to use cache. Default: true." },
@@ -827,7 +1684,7 @@ var dashboardReportDataExport = createAnalysisCapabilityCommand({
827
1684
  projectIdFlag,
828
1685
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
829
1686
  { name: "report-ids", type: "json", required: false, desc: "Optional report ID array. Omit to query all dashboard reports." },
830
- { name: "filters", type: "json", required: false, desc: "Optional dashboard filter JSON." },
1687
+ { 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":[...]}.' },
831
1688
  { name: "start-time", type: "string", required: false, desc: "Optional start date/time." },
832
1689
  { name: "end-time", type: "string", required: false, desc: "Optional end date/time." },
833
1690
  { name: "use-cache", type: "boolean", required: false, desc: "Whether to use cache. Default: true." },
@@ -840,11 +1697,11 @@ var dashboardReportDataExport = createAnalysisCapabilityCommand({
840
1697
  });
841
1698
 
842
1699
  // src/commands/te-analysis/dashboard-report-data/index.ts
843
- var commands4 = [
1700
+ var commands13 = [
844
1701
  dashboardReportDataRun,
845
1702
  dashboardReportDataExport
846
1703
  ];
847
- var dashboard_report_data_default = commands4;
1704
+ var dashboard_report_data_default = commands13;
848
1705
 
849
1706
  // src/commands/te-analysis/query/cancel.ts
850
1707
  var queryCancel = createAnalysisCapabilityCommand({
@@ -859,15 +1716,15 @@ var queryCancel = createAnalysisCapabilityCommand({
859
1716
  risk: "write",
860
1717
  buildInput: (ctx) => compactInput({
861
1718
  run_id: ctx.str("run-id"),
862
- reason: optionalString3(ctx, "reason")
1719
+ reason: optionalString2(ctx, "reason")
863
1720
  })
864
1721
  });
865
1722
 
866
1723
  // src/commands/te-analysis/query/index.ts
867
- var commands5 = [
1724
+ var commands14 = [
868
1725
  queryCancel
869
1726
  ];
870
- var query_default = commands5;
1727
+ var query_default = commands14;
871
1728
 
872
1729
  // src/commands/te-analysis/run/inspect.ts
873
1730
  var runInspect = {
@@ -896,10 +1753,10 @@ var runInspect = {
896
1753
  };
897
1754
 
898
1755
  // src/commands/te-analysis/run/index.ts
899
- var commands6 = [
1756
+ var commands15 = [
900
1757
  runInspect
901
1758
  ];
902
- var run_default = commands6;
1759
+ var run_default = commands15;
903
1760
 
904
1761
  // src/commands/te-analysis/artifact/download.ts
905
1762
  import { mkdir, writeFile } from "fs/promises";
@@ -948,10 +1805,10 @@ var artifactDownload = {
948
1805
  };
949
1806
 
950
1807
  // src/commands/te-analysis/artifact/index.ts
951
- var commands7 = [
1808
+ var commands16 = [
952
1809
  artifactDownload
953
1810
  ];
954
- var artifact_default = commands7;
1811
+ var artifact_default = commands16;
955
1812
 
956
1813
  // src/commands/te-analysis/dashboard-definition/export.ts
957
1814
  var dashboardDefinitionExport = createAnalysisCapabilityCommand({
@@ -971,12 +1828,12 @@ var dashboardDefinitionExport = createAnalysisCapabilityCommand({
971
1828
  risk: "read",
972
1829
  buildInput: (ctx) => compactInput({
973
1830
  ...projectInput(ctx),
974
- dashboard_id: optionalNumber3(ctx, "dashboard-id"),
1831
+ dashboard_id: optionalNumber2(ctx, "dashboard-id"),
975
1832
  dashboard_ids: optionalJsonArray(ctx, "dashboard-ids"),
976
1833
  dashboard_folder_ids: optionalJsonArray(ctx, "dashboard-folder-ids"),
977
- shared_spaces: optionalJson4(ctx, "shared-spaces"),
978
- export_file_name: optionalString3(ctx, "export-file-name"),
979
- payload: optionalJson4(ctx, "payload")
1834
+ shared_spaces: optionalJson2(ctx, "shared-spaces"),
1835
+ export_file_name: optionalString2(ctx, "export-file-name"),
1836
+ payload: optionalJson2(ctx, "payload")
980
1837
  })
981
1838
  });
982
1839
 
@@ -998,63 +1855,88 @@ var dashboardDefinitionImport = createAnalysisCapabilityCommand({
998
1855
  buildInput: (ctx) => compactInput({
999
1856
  ...projectInput(ctx),
1000
1857
  definition: ctx.json("definition"),
1001
- validate_only: optionalBoolean5(ctx, "validate-only"),
1002
- dashboard_name_conflict_policy: optionalString3(ctx, "dashboard-name-conflict-policy"),
1003
- space_dashboard_policy: optionalString3(ctx, "space-dashboard-policy"),
1004
- payload: optionalJson4(ctx, "payload")
1858
+ validate_only: optionalBoolean2(ctx, "validate-only"),
1859
+ dashboard_name_conflict_policy: optionalString2(ctx, "dashboard-name-conflict-policy"),
1860
+ space_dashboard_policy: optionalString2(ctx, "space-dashboard-policy"),
1861
+ payload: optionalJson2(ctx, "payload")
1005
1862
  })
1006
1863
  });
1007
1864
 
1008
1865
  // src/commands/te-analysis/dashboard-definition/index.ts
1009
- var commands8 = [
1866
+ var commands17 = [
1010
1867
  dashboardDefinitionExport,
1011
1868
  dashboardDefinitionImport
1012
1869
  ];
1013
- var dashboard_definition_default = commands8;
1870
+ var dashboard_definition_default = commands17;
1014
1871
 
1015
1872
  // src/commands/te-analysis/dashboard-daily-report/shared.ts
1016
1873
  function dailyReportFlags(update) {
1874
+ const falseDefault = update ? " Default: false." : "";
1875
+ const emptyDefault = update ? " Default: empty." : "";
1876
+ const weekdayDefault = update ? " Default: 1,2,3,4,5,6,7." : "";
1877
+ const timeDefault = update ? " Default: 09:00." : "";
1878
+ const langDefault = update ? " Default: zh-CN." : "";
1879
+ const screenDefault = update ? " Default: normal." : "";
1880
+ const zoneDefault = update ? " Default: 0." : "";
1017
1881
  return [
1018
- { name: "need-csv", type: "boolean", required: false, desc: "Whether to include CSV attachment. Default: false." },
1019
- { name: "host-url", type: "string", required: false, desc: "Public host URL used in report links. Default: empty." },
1020
- { name: "enable-smtp", type: "boolean", required: false, desc: "Whether to use configured SMTP for email. Default: false." },
1021
- { name: "enable-email", type: "boolean", required: false, desc: "Whether to send by email. Default: false." },
1022
- { name: "enable-dd", type: "boolean", required: false, desc: "Whether to send by DingTalk webhook. Default: false." },
1023
- { name: "enable-wx", type: "boolean", required: false, desc: "Whether to send by WeCom webhook. Default: false." },
1024
- { name: "enable-feishu", type: "boolean", required: false, desc: "Whether to send by Feishu webhook. Default: false." },
1882
+ { name: "need-csv", type: "boolean", required: false, desc: `Whether to include CSV attachment.${falseDefault}` },
1883
+ { name: "host-url", type: "string", required: false, desc: `Public host URL used in report links.${emptyDefault}` },
1884
+ { name: "enable-smtp", type: "boolean", required: false, desc: `Whether to use configured SMTP for email.${falseDefault}` },
1885
+ { name: "enable-email", type: "boolean", required: false, desc: `Whether to send by email.${falseDefault}` },
1886
+ { name: "enable-dd", type: "boolean", required: false, desc: `Whether to send by DingTalk webhook.${falseDefault}` },
1887
+ { name: "dd-url", type: "json", required: false, desc: 'DingTalk webhook URL array, e.g. ["https://..."].' },
1888
+ { name: "enable-wx", type: "boolean", required: false, desc: `Whether to send by WeCom webhook.${falseDefault}` },
1889
+ { name: "wx-url", type: "json", required: false, desc: 'WeCom webhook URL array, e.g. ["https://..."].' },
1890
+ { name: "enable-feishu", type: "boolean", required: false, desc: `Whether to send by Feishu webhook.${falseDefault}` },
1891
+ { name: "feishu-info", type: "json", required: false, desc: 'Feishu config object, e.g. {"webhook":["https://..."]}.' },
1892
+ { name: "enable-kim", type: "boolean", required: false, desc: `Whether to send by KIM/custom webhook.${falseDefault}` },
1893
+ { name: "kim-url", type: "json", required: false, desc: 'KIM/custom webhook URL array, e.g. ["https://..."].' },
1894
+ { name: "enable-slack", type: "boolean", required: false, desc: `Whether to send by Slack webhook.${falseDefault}` },
1895
+ { name: "slack-url", type: "json", required: false, desc: 'Slack webhook URL array, e.g. ["https://..."].' },
1896
+ { name: "email-login-users", type: "string", required: false, desc: "Comma-separated login users for email channel." },
1897
+ { name: "email-new", type: "string", required: false, desc: "Comma-separated external emails when SMTP is enabled." },
1025
1898
  { name: "send-title", type: "string", required: false, desc: "Daily report title." },
1026
1899
  { name: "send-content", type: "string", required: false, desc: "Daily report content." },
1027
- { name: "send-date", type: "string", required: false, desc: "Scheduled weekdays, comma-separated 1..7. Default: 1,2,3,4,5,6,7." },
1028
- { name: "send-time", type: "string", required: false, desc: "Scheduled send time, HH:mm. Default: 09:00." },
1029
- { name: "lang", type: "string", required: false, desc: "Report language. Default: zh-CN." },
1030
- { name: "screen-type", type: "string", required: false, desc: "Screenshot screen type. Default: normal." },
1031
- { name: "zone-offset", type: "number", required: false, desc: "Time zone offset. Default: 0." },
1900
+ { name: "send-date", type: "string", required: false, desc: `Scheduled weekdays, comma-separated 1..7.${weekdayDefault}` },
1901
+ { name: "send-time", type: "string", required: false, desc: `Scheduled send time, HH:mm.${timeDefault}` },
1902
+ { name: "lang", type: "string", required: false, desc: `Report language.${langDefault}` },
1903
+ { name: "screen-type", type: "string", required: false, desc: `Screenshot screen type.${screenDefault}` },
1904
+ { name: "zone-offset", type: "number", required: false, desc: `Time zone offset.${zoneDefault}` },
1032
1905
  ...update ? [
1033
1906
  { name: "enable-send", type: "boolean", required: false, desc: "Whether to enable scheduled sending. Default: false." }
1034
1907
  ] : []
1035
1908
  ];
1036
1909
  }
1037
1910
  function dailyReportInput(ctx, update) {
1038
- const payload = optionalJson4(ctx, "payload");
1039
- const useDefaults = payload === void 0;
1911
+ const payload = optionalJson2(ctx, "payload");
1912
+ const useDefaults = update && payload === void 0;
1040
1913
  return compactInput({
1041
1914
  ...projectInput(ctx),
1042
1915
  dashboard_id: ctx.num("dashboard-id"),
1043
- need_csv: useDefaults ? booleanWithDefault(ctx, "need-csv", false) : optionalBoolean5(ctx, "need-csv"),
1044
- host_url: useDefaults ? stringWithDefault(ctx, "host-url", "") : optionalString3(ctx, "host-url"),
1045
- enable_smtp: useDefaults ? booleanWithDefault(ctx, "enable-smtp", false) : optionalBoolean5(ctx, "enable-smtp"),
1046
- enable_email: useDefaults ? booleanWithDefault(ctx, "enable-email", false) : optionalBoolean5(ctx, "enable-email"),
1047
- enable_dd: useDefaults ? booleanWithDefault(ctx, "enable-dd", false) : optionalBoolean5(ctx, "enable-dd"),
1048
- enable_wx: useDefaults ? booleanWithDefault(ctx, "enable-wx", false) : optionalBoolean5(ctx, "enable-wx"),
1049
- enable_feishu: useDefaults ? booleanWithDefault(ctx, "enable-feishu", false) : optionalBoolean5(ctx, "enable-feishu"),
1050
- send_title: optionalString3(ctx, "send-title"),
1051
- send_content: optionalString3(ctx, "send-content"),
1052
- send_date: useDefaults ? stringWithDefault(ctx, "send-date", "1,2,3,4,5,6,7") : optionalString3(ctx, "send-date"),
1053
- send_time: useDefaults ? stringWithDefault(ctx, "send-time", "09:00") : optionalString3(ctx, "send-time"),
1054
- lang: useDefaults ? stringWithDefault(ctx, "lang", "zh-CN") : optionalString3(ctx, "lang"),
1055
- screen_type: useDefaults ? stringWithDefault(ctx, "screen-type", "normal") : optionalString3(ctx, "screen-type"),
1056
- zone_offset: useDefaults ? numberWithDefault(ctx, "zone-offset", 0) : optionalNumber3(ctx, "zone-offset"),
1057
- enable_send: update ? useDefaults ? booleanWithDefault(ctx, "enable-send", false) : optionalBoolean5(ctx, "enable-send") : void 0,
1916
+ need_csv: useDefaults ? booleanWithDefault(ctx, "need-csv", false) : optionalBoolean2(ctx, "need-csv"),
1917
+ host_url: useDefaults ? stringWithDefault(ctx, "host-url", "") : optionalString2(ctx, "host-url"),
1918
+ enable_smtp: useDefaults ? booleanWithDefault(ctx, "enable-smtp", false) : optionalBoolean2(ctx, "enable-smtp"),
1919
+ enable_email: useDefaults ? booleanWithDefault(ctx, "enable-email", false) : optionalBoolean2(ctx, "enable-email"),
1920
+ enable_dd: useDefaults ? booleanWithDefault(ctx, "enable-dd", false) : optionalBoolean2(ctx, "enable-dd"),
1921
+ dd_url: optionalJson2(ctx, "dd-url"),
1922
+ enable_wx: useDefaults ? booleanWithDefault(ctx, "enable-wx", false) : optionalBoolean2(ctx, "enable-wx"),
1923
+ wx_url: optionalJson2(ctx, "wx-url"),
1924
+ enable_feishu: useDefaults ? booleanWithDefault(ctx, "enable-feishu", false) : optionalBoolean2(ctx, "enable-feishu"),
1925
+ feishu_info: optionalJson2(ctx, "feishu-info"),
1926
+ enable_kim: useDefaults ? booleanWithDefault(ctx, "enable-kim", false) : optionalBoolean2(ctx, "enable-kim"),
1927
+ kim_url: optionalJson2(ctx, "kim-url"),
1928
+ enable_slack: useDefaults ? booleanWithDefault(ctx, "enable-slack", false) : optionalBoolean2(ctx, "enable-slack"),
1929
+ slack_url: optionalJson2(ctx, "slack-url"),
1930
+ email_login_users: optionalString2(ctx, "email-login-users"),
1931
+ email_new: optionalString2(ctx, "email-new"),
1932
+ send_title: optionalString2(ctx, "send-title"),
1933
+ send_content: optionalString2(ctx, "send-content"),
1934
+ send_date: useDefaults ? stringWithDefault(ctx, "send-date", "1,2,3,4,5,6,7") : optionalString2(ctx, "send-date"),
1935
+ send_time: useDefaults ? stringWithDefault(ctx, "send-time", "09:00") : optionalString2(ctx, "send-time"),
1936
+ lang: useDefaults ? stringWithDefault(ctx, "lang", "zh-CN") : optionalString2(ctx, "lang"),
1937
+ screen_type: useDefaults ? stringWithDefault(ctx, "screen-type", "normal") : optionalString2(ctx, "screen-type"),
1938
+ zone_offset: useDefaults ? numberWithDefault(ctx, "zone-offset", 0) : optionalNumber2(ctx, "zone-offset"),
1939
+ enable_send: update ? useDefaults ? booleanWithDefault(ctx, "enable-send", false) : optionalBoolean2(ctx, "enable-send") : void 0,
1058
1940
  payload
1059
1941
  });
1060
1942
  }
@@ -1080,7 +1962,7 @@ var dashboardDailyReportSend = createAnalysisCapabilityCommand({
1080
1962
  resource: "dashboard-daily-report",
1081
1963
  command: "send",
1082
1964
  capabilityId: "analysis.dashboard_daily_report.send",
1083
- description: "Send dashboard daily report immediately.",
1965
+ description: "Send dashboard daily report immediately. Omit config to use saved config; pass channel flags for an ad hoc send.",
1084
1966
  flags: [
1085
1967
  projectIdFlag,
1086
1968
  { name: "dashboard-id", type: "number", required: true, desc: "Dashboard ID." },
@@ -1092,11 +1974,11 @@ var dashboardDailyReportSend = createAnalysisCapabilityCommand({
1092
1974
  });
1093
1975
 
1094
1976
  // src/commands/te-analysis/dashboard-daily-report/index.ts
1095
- var commands9 = [
1977
+ var commands18 = [
1096
1978
  dashboardDailyReportUpdate,
1097
1979
  dashboardDailyReportSend
1098
1980
  ];
1099
- var dashboard_daily_report_default = commands9;
1981
+ var dashboard_daily_report_default = commands18;
1100
1982
 
1101
1983
  // src/commands/te-analysis/bi-panel/list.ts
1102
1984
  var biPanelList = createAnalysisCapabilityCommand({
@@ -1114,7 +1996,7 @@ var biPanelGet = createAnalysisCapabilityCommand({
1114
1996
  resource: "bi-panel",
1115
1997
  command: "get",
1116
1998
  capabilityId: "analysis.bi_panel.get",
1117
- description: "Get a BI panel released page structure.",
1999
+ description: "Get a BI panel released page structure. Use bi-panel-version get --version-type draft for unpublished edits.",
1118
2000
  flags: [
1119
2001
  projectIdFlag,
1120
2002
  { name: "panel-id", type: "number", required: true, desc: "BI panel ID." },
@@ -1124,7 +2006,7 @@ var biPanelGet = createAnalysisCapabilityCommand({
1124
2006
  buildInput: (ctx) => compactInput({
1125
2007
  ...projectInput(ctx),
1126
2008
  panel_id: ctx.num("panel-id"),
1127
- fields: optionalJson4(ctx, "fields")
2009
+ fields: optionalJson2(ctx, "fields")
1128
2010
  })
1129
2011
  });
1130
2012
 
@@ -1145,11 +2027,11 @@ var biPanelCreate = createAnalysisCapabilityCommand({
1145
2027
  risk: "write",
1146
2028
  buildInput: (ctx) => compactInput({
1147
2029
  ...projectInput(ctx),
1148
- panel_name: optionalString3(ctx, "panel-name"),
1149
- panel_uuid: optionalString3(ctx, "panel-uuid"),
1150
- space_id: optionalNumber3(ctx, "space-id"),
1151
- folder_id: optionalNumber3(ctx, "folder-id"),
1152
- payload: optionalJson4(ctx, "payload")
2030
+ panel_name: optionalString2(ctx, "panel-name"),
2031
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2032
+ space_id: optionalNumber2(ctx, "space-id"),
2033
+ folder_id: optionalNumber2(ctx, "folder-id"),
2034
+ payload: optionalJson2(ctx, "payload")
1153
2035
  })
1154
2036
  });
1155
2037
 
@@ -1168,9 +2050,9 @@ var biPanelUpdate = createAnalysisCapabilityCommand({
1168
2050
  risk: "write",
1169
2051
  buildInput: (ctx) => compactInput({
1170
2052
  ...projectInput(ctx),
1171
- panel_name: optionalString3(ctx, "panel-name"),
1172
- panel_uuid: optionalString3(ctx, "panel-uuid"),
1173
- payload: optionalJson4(ctx, "payload")
2053
+ panel_name: optionalString2(ctx, "panel-name"),
2054
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2055
+ payload: optionalJson2(ctx, "payload")
1174
2056
  })
1175
2057
  });
1176
2058
 
@@ -1181,7 +2063,7 @@ var biPanelDelete = createAnalysisCapabilityCommand({
1181
2063
  capabilityId: "analysis.bi_panel.delete",
1182
2064
  description: "Delete one or more BI panels.",
1183
2065
  flags: [projectIdFlag, { name: "panel-ids", type: "json", required: true, desc: "BI panel ID array." }],
1184
- risk: "write",
2066
+ risk: "high-risk-write",
1185
2067
  buildInput: (ctx) => ({
1186
2068
  ...projectInput(ctx),
1187
2069
  panel_ids: jsonArray(ctx, "panel-ids")
@@ -1199,7 +2081,7 @@ var biPanelShare = createAnalysisCapabilityCommand({
1199
2081
  buildInput: (ctx) => compactInput({
1200
2082
  ...projectInput(ctx),
1201
2083
  panel_id: ctx.num("panel-id"),
1202
- payload: optionalJson4(ctx, "payload")
2084
+ payload: optionalJson2(ctx, "payload")
1203
2085
  })
1204
2086
  });
1205
2087
 
@@ -1220,16 +2102,16 @@ var biPanelCopy = createAnalysisCapabilityCommand({
1220
2102
  risk: "write",
1221
2103
  buildInput: (ctx) => compactInput({
1222
2104
  ...projectInput(ctx),
1223
- panel_name: optionalString3(ctx, "panel-name"),
1224
- panel_uuid: optionalString3(ctx, "panel-uuid"),
1225
- space_id: optionalNumber3(ctx, "space-id"),
1226
- folder_id: optionalNumber3(ctx, "folder-id"),
1227
- payload: optionalJson4(ctx, "payload")
2105
+ panel_name: optionalString2(ctx, "panel-name"),
2106
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2107
+ space_id: optionalNumber2(ctx, "space-id"),
2108
+ folder_id: optionalNumber2(ctx, "folder-id"),
2109
+ payload: optionalJson2(ctx, "payload")
1228
2110
  })
1229
2111
  });
1230
2112
 
1231
2113
  // src/commands/te-analysis/bi-panel/index.ts
1232
- var commands10 = [
2114
+ var commands19 = [
1233
2115
  biPanelList,
1234
2116
  biPanelGet,
1235
2117
  biPanelCreate,
@@ -1238,7 +2120,58 @@ var commands10 = [
1238
2120
  biPanelShare,
1239
2121
  biPanelCopy
1240
2122
  ];
1241
- var bi_panel_default = commands10;
2123
+ var bi_panel_default = commands19;
2124
+
2125
+ // src/commands/te-analysis/bi-panel-version/get.ts
2126
+ var biPanelVersionGet = createAnalysisCapabilityCommand({
2127
+ resource: "bi-panel-version",
2128
+ command: "get",
2129
+ capabilityId: "analysis.bi_panel_version.get",
2130
+ description: "Get a BI panel release or draft version. Use draft to inspect unpublished edits.",
2131
+ flags: [
2132
+ projectIdFlag,
2133
+ { name: "panel-id", type: "number", required: false, desc: "BI panel ID. Required when --panel-uuid is omitted." },
2134
+ { name: "panel-uuid", type: "string", required: false, desc: "BI panel UUID. Required when --panel-id is omitted." },
2135
+ { name: "version-type", type: "string", required: false, desc: "Version to inspect: release or draft. Default: release." },
2136
+ fieldsFlag
2137
+ ],
2138
+ risk: "read",
2139
+ buildInput: (ctx) => compactInput({
2140
+ ...projectInput(ctx),
2141
+ panel_id: ctx.str("panel-id") === "" ? void 0 : ctx.num("panel-id"),
2142
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2143
+ version_type: optionalString2(ctx, "version-type"),
2144
+ fields: optionalJson2(ctx, "fields")
2145
+ })
2146
+ });
2147
+
2148
+ // src/commands/te-analysis/bi-panel-version/publish.ts
2149
+ var biPanelVersionPublish = createAnalysisCapabilityCommand({
2150
+ resource: "bi-panel-version",
2151
+ command: "publish",
2152
+ capabilityId: "analysis.bi_panel_version.publish",
2153
+ description: "Publish the current BI panel draft. Requires source version returned by bi-panel-version get.",
2154
+ flags: [
2155
+ projectIdFlag,
2156
+ { name: "panel-id", type: "number", required: false, desc: "BI panel ID. Required when --panel-uuid is omitted." },
2157
+ { name: "panel-uuid", type: "string", required: false, desc: "BI panel UUID. Required when --panel-id is omitted." },
2158
+ { name: "source-version", type: "string", required: true, desc: "Current draft version to publish, for example 0.1." }
2159
+ ],
2160
+ risk: "write",
2161
+ buildInput: (ctx) => compactInput({
2162
+ ...projectInput(ctx),
2163
+ panel_id: ctx.str("panel-id") === "" ? void 0 : ctx.num("panel-id"),
2164
+ panel_uuid: optionalString2(ctx, "panel-uuid"),
2165
+ source_version: ctx.str("source-version")
2166
+ })
2167
+ });
2168
+
2169
+ // src/commands/te-analysis/bi-panel-version/index.ts
2170
+ var commands20 = [
2171
+ biPanelVersionGet,
2172
+ biPanelVersionPublish
2173
+ ];
2174
+ var bi_panel_version_default = commands20;
1242
2175
 
1243
2176
  // src/commands/te-analysis/bi-panel-page-data/run.ts
1244
2177
  var biPanelPageDataRun = createAnalysisCapabilityCommand({
@@ -1299,11 +2232,11 @@ var biPanelPageDataExport = createAnalysisCapabilityCommand({
1299
2232
  });
1300
2233
 
1301
2234
  // src/commands/te-analysis/bi-panel-page-data/index.ts
1302
- var commands11 = [
2235
+ var commands21 = [
1303
2236
  biPanelPageDataRun,
1304
2237
  biPanelPageDataExport
1305
2238
  ];
1306
- var bi_panel_page_data_default = commands11;
2239
+ var bi_panel_page_data_default = commands21;
1307
2240
 
1308
2241
  // src/commands/te-analysis/project-space/list.ts
1309
2242
  var projectSpaceList = createAnalysisCapabilityCommand({
@@ -1327,180 +2260,16 @@ var projectSpaceGet = createAnalysisCapabilityCommand({
1327
2260
  buildInput: (ctx) => compactInput({
1328
2261
  ...projectInput(ctx),
1329
2262
  space_id: ctx.num("space-id"),
1330
- fields: optionalJson4(ctx, "fields")
1331
- })
1332
- });
1333
-
1334
- // src/commands/te-analysis/project-space/create.ts
1335
- var projectSpaceCreate = createAnalysisCapabilityCommand({
1336
- resource: "project-space",
1337
- command: "create",
1338
- capabilityId: "analysis.project_space.create",
1339
- description: "Create a project space.",
1340
- flags: [
1341
- projectIdFlag,
1342
- { name: "space-name", type: "string", required: false, desc: "Project space name." },
1343
- { name: "space-desc", type: "string", required: false, desc: "Project space description." },
1344
- { name: "avatar-type", type: "number", required: false, desc: "Avatar type: 1=WORD, 2=ICON, 3=IMAGE. Default: 1." },
1345
- { name: "color-key", type: "string", required: false, desc: "Avatar color key." },
1346
- { name: "avatar", type: "string", required: false, desc: "Avatar value." },
1347
- payloadFlag
1348
- ],
1349
- risk: "write",
1350
- buildInput: (ctx) => {
1351
- const payload = optionalJson4(ctx, "payload");
1352
- return compactInput({
1353
- ...projectInput(ctx),
1354
- space_name: optionalString3(ctx, "space-name"),
1355
- space_desc: optionalString3(ctx, "space-desc"),
1356
- avatar_type: payload === void 0 ? numberWithDefault(ctx, "avatar-type", 1) : optionalNumber3(ctx, "avatar-type"),
1357
- color_key: optionalString3(ctx, "color-key"),
1358
- avatar: optionalString3(ctx, "avatar"),
1359
- payload
1360
- });
1361
- }
1362
- });
1363
-
1364
- // src/commands/te-analysis/project-space/delete.ts
1365
- var projectSpaceDelete = createAnalysisCapabilityCommand({
1366
- resource: "project-space",
1367
- command: "delete",
1368
- capabilityId: "analysis.project_space.delete",
1369
- description: "Delete one or more project spaces.",
1370
- flags: [
1371
- projectIdFlag,
1372
- { name: "space-id", type: "number", required: false, desc: "Project space ID." },
1373
- { name: "space-ids", type: "json", required: false, desc: "Project space ID array." }
1374
- ],
1375
- risk: "write",
1376
- buildInput: (ctx) => compactInput({
1377
- ...projectInput(ctx),
1378
- space_id: optionalNumber3(ctx, "space-id"),
1379
- space_ids: optionalJsonArray(ctx, "space-ids")
1380
- })
1381
- });
1382
-
1383
- // src/commands/te-analysis/project-space/share.ts
1384
- var projectSpaceShare = createAnalysisCapabilityCommand({
1385
- resource: "project-space",
1386
- command: "share",
1387
- capabilityId: "analysis.project_space.share",
1388
- description: "Modify project space sharing members.",
1389
- flags: [projectIdFlag, { name: "space-id", type: "number", required: true, desc: "Project space ID." }, payloadFlag],
1390
- risk: "write",
1391
- buildInput: (ctx) => compactInput({
1392
- ...projectInput(ctx),
1393
- space_id: ctx.num("space-id"),
1394
- payload: optionalJson4(ctx, "payload")
1395
- })
1396
- });
1397
-
1398
- // src/commands/te-analysis/project-space/members.ts
1399
- var projectSpaceMembers = createAnalysisCapabilityCommand({
1400
- resource: "project-space",
1401
- command: "members",
1402
- capabilityId: "analysis.project_space.members",
1403
- description: "Get project space members.",
1404
- flags: [projectIdFlag, { name: "space-id", type: "number", required: true, desc: "Project space ID." }],
1405
- risk: "read",
1406
- buildInput: (ctx) => ({
1407
- ...projectInput(ctx),
1408
- space_id: ctx.num("space-id")
2263
+ fields: optionalJson2(ctx, "fields")
1409
2264
  })
1410
2265
  });
1411
2266
 
1412
2267
  // src/commands/te-analysis/project-space/index.ts
1413
- var commands12 = [
2268
+ var commands22 = [
1414
2269
  projectSpaceList,
1415
- projectSpaceGet,
1416
- projectSpaceCreate,
1417
- projectSpaceDelete,
1418
- projectSpaceShare,
1419
- projectSpaceMembers
1420
- ];
1421
- var project_space_default = commands12;
1422
-
1423
- // src/commands/te-analysis/folder/create.ts
1424
- var folderCreate = createAnalysisCapabilityCommand({
1425
- resource: "folder",
1426
- command: "create",
1427
- capabilityId: "analysis.folder.create",
1428
- description: "Create a folder in personal space or project space.",
1429
- flags: [
1430
- projectIdFlag,
1431
- { name: "folder-name", type: "string", required: true, desc: "Folder name." },
1432
- { name: "space-id", type: "number", required: false, desc: "Project space ID. Omit for personal space." },
1433
- { name: "parent-folder-id", type: "number", required: false, desc: "Parent project-space folder ID." },
1434
- payloadFlag
1435
- ],
1436
- risk: "write",
1437
- buildInput: (ctx) => compactInput({
1438
- ...projectInput(ctx),
1439
- folder_name: ctx.str("folder-name"),
1440
- space_id: optionalNumber3(ctx, "space-id"),
1441
- parent_folder_id: optionalNumber3(ctx, "parent-folder-id"),
1442
- payload: optionalJson4(ctx, "payload")
1443
- })
1444
- });
1445
-
1446
- // src/commands/te-analysis/folder/delete.ts
1447
- var folderDelete = createAnalysisCapabilityCommand({
1448
- resource: "folder",
1449
- command: "delete",
1450
- capabilityId: "analysis.folder.delete",
1451
- description: "Delete one or more folders.",
1452
- flags: [
1453
- projectIdFlag,
1454
- { name: "folder-id", type: "number", required: false, desc: "Folder ID." },
1455
- { name: "folder-ids", type: "json", required: false, desc: "Folder ID array." },
1456
- { name: "space-id", type: "number", required: false, desc: "Project space ID for project-space folders. Omit for personal folders." }
1457
- ],
1458
- risk: "write",
1459
- buildInput: (ctx) => compactInput({
1460
- ...projectInput(ctx),
1461
- folder_id: optionalNumber3(ctx, "folder-id"),
1462
- folder_ids: optionalJsonArray(ctx, "folder-ids"),
1463
- space_id: optionalNumber3(ctx, "space-id")
1464
- })
1465
- });
1466
-
1467
- // src/commands/te-analysis/folder/share.ts
1468
- var folderShare = createAnalysisCapabilityCommand({
1469
- resource: "folder",
1470
- command: "share",
1471
- capabilityId: "analysis.folder.share",
1472
- description: "Modify folder sharing members.",
1473
- flags: [projectIdFlag, { name: "folder-id", type: "number", required: true, desc: "Folder ID." }, payloadFlag],
1474
- risk: "write",
1475
- buildInput: (ctx) => compactInput({
1476
- ...projectInput(ctx),
1477
- folder_id: ctx.num("folder-id"),
1478
- payload: optionalJson4(ctx, "payload")
1479
- })
1480
- });
1481
-
1482
- // src/commands/te-analysis/folder/members.ts
1483
- var folderMembers = createAnalysisCapabilityCommand({
1484
- resource: "folder",
1485
- command: "members",
1486
- capabilityId: "analysis.folder.members",
1487
- description: "Get folder members.",
1488
- flags: [projectIdFlag, { name: "folder-id", type: "number", required: true, desc: "Folder ID." }],
1489
- risk: "read",
1490
- buildInput: (ctx) => ({
1491
- ...projectInput(ctx),
1492
- folder_id: ctx.num("folder-id")
1493
- })
1494
- });
1495
-
1496
- // src/commands/te-analysis/folder/index.ts
1497
- var commands13 = [
1498
- folderCreate,
1499
- folderDelete,
1500
- folderShare,
1501
- folderMembers
2270
+ projectSpaceGet
1502
2271
  ];
1503
- var folder_default = commands13;
2272
+ var project_space_default = commands22;
1504
2273
 
1505
2274
  // src/commands/te-analysis/favorite/add.ts
1506
2275
  var favoriteAdd = createAnalysisCapabilityCommand({
@@ -1519,11 +2288,11 @@ var favoriteAdd = createAnalysisCapabilityCommand({
1519
2288
  risk: "write",
1520
2289
  buildInput: (ctx) => compactInput({
1521
2290
  ...projectInput(ctx),
1522
- asset_id: optionalNumber3(ctx, "asset-id"),
1523
- asset_type: optionalString3(ctx, "asset-type"),
1524
- space_id: optionalNumber3(ctx, "space-id"),
1525
- id: optionalNumber3(ctx, "id"),
1526
- payload: optionalJson4(ctx, "payload")
2291
+ asset_id: optionalNumber2(ctx, "asset-id"),
2292
+ asset_type: optionalString2(ctx, "asset-type"),
2293
+ space_id: optionalNumber2(ctx, "space-id"),
2294
+ id: optionalNumber2(ctx, "id"),
2295
+ payload: optionalJson2(ctx, "payload")
1527
2296
  })
1528
2297
  });
1529
2298
 
@@ -1544,20 +2313,20 @@ var favoriteRemove = createAnalysisCapabilityCommand({
1544
2313
  risk: "write",
1545
2314
  buildInput: (ctx) => compactInput({
1546
2315
  ...projectInput(ctx),
1547
- asset_id: optionalNumber3(ctx, "asset-id"),
1548
- asset_type: optionalString3(ctx, "asset-type"),
1549
- space_id: optionalNumber3(ctx, "space-id"),
1550
- id: optionalNumber3(ctx, "id"),
1551
- payload: optionalJson4(ctx, "payload")
2316
+ asset_id: optionalNumber2(ctx, "asset-id"),
2317
+ asset_type: optionalString2(ctx, "asset-type"),
2318
+ space_id: optionalNumber2(ctx, "space-id"),
2319
+ id: optionalNumber2(ctx, "id"),
2320
+ payload: optionalJson2(ctx, "payload")
1552
2321
  })
1553
2322
  });
1554
2323
 
1555
2324
  // src/commands/te-analysis/favorite/index.ts
1556
- var commands14 = [
2325
+ var commands23 = [
1557
2326
  favoriteAdd,
1558
2327
  favoriteRemove
1559
2328
  ];
1560
- var favorite_default = commands14;
2329
+ var favorite_default = commands23;
1561
2330
 
1562
2331
  // src/commands/te-analysis/public-link/create.ts
1563
2332
  var publicLinkCreate = createAnalysisCapabilityCommand({
@@ -1579,14 +2348,14 @@ var publicLinkCreate = createAnalysisCapabilityCommand({
1579
2348
  risk: "write",
1580
2349
  buildInput: (ctx) => compactInput({
1581
2350
  ...projectInput(ctx),
1582
- company_id: optionalNumber3(ctx, "company-id"),
2351
+ company_id: optionalNumber2(ctx, "company-id"),
1583
2352
  resource_type: ctx.str("resource-type"),
1584
2353
  resource_id: ctx.num("resource-id"),
1585
- access_controls: optionalJson4(ctx, "access-controls"),
1586
- remark: optionalString3(ctx, "remark"),
2354
+ access_controls: optionalJson2(ctx, "access-controls"),
2355
+ remark: optionalString2(ctx, "remark"),
1587
2356
  effective_at: ctx.str("effective-at"),
1588
2357
  expires_at: ctx.str("expires-at"),
1589
- payload: optionalJson4(ctx, "payload")
2358
+ payload: optionalJson2(ctx, "payload")
1590
2359
  })
1591
2360
  });
1592
2361
 
@@ -1620,13 +2389,13 @@ var publicLinkUpdate = createAnalysisCapabilityCommand({
1620
2389
  risk: "write",
1621
2390
  buildInput: (ctx) => compactInput({
1622
2391
  ...projectInput(ctx),
1623
- company_id: optionalNumber3(ctx, "company-id"),
2392
+ company_id: optionalNumber2(ctx, "company-id"),
1624
2393
  link_id: ctx.num("link-id"),
1625
- access_controls: optionalJson4(ctx, "access-controls"),
1626
- remark: optionalString3(ctx, "remark"),
2394
+ access_controls: optionalJson2(ctx, "access-controls"),
2395
+ remark: optionalString2(ctx, "remark"),
1627
2396
  effective_at: ctx.str("effective-at"),
1628
2397
  expires_at: ctx.str("expires-at"),
1629
- payload: optionalJson4(ctx, "payload")
2398
+ payload: optionalJson2(ctx, "payload")
1630
2399
  })
1631
2400
  });
1632
2401
 
@@ -1645,8 +2414,8 @@ var publicLinkOffline = createAnalysisCapabilityCommand({
1645
2414
  risk: "write",
1646
2415
  buildInput: (ctx) => compactInput({
1647
2416
  ...projectInput(ctx),
1648
- company_id: optionalNumber3(ctx, "company-id"),
1649
- link_id: optionalNumber3(ctx, "link-id"),
2417
+ company_id: optionalNumber2(ctx, "company-id"),
2418
+ link_id: optionalNumber2(ctx, "link-id"),
1650
2419
  link_ids: optionalJsonArray(ctx, "link-ids")
1651
2420
  })
1652
2421
  });
@@ -1663,33 +2432,33 @@ var publicLinkDelete = createAnalysisCapabilityCommand({
1663
2432
  { name: "link-id", type: "number", required: false, desc: "Public link ID." },
1664
2433
  { name: "link-ids", type: "json", required: false, desc: "Public link ID array." }
1665
2434
  ],
1666
- risk: "write",
2435
+ risk: "high-risk-write",
1667
2436
  buildInput: (ctx) => compactInput({
1668
2437
  ...projectInput(ctx),
1669
- company_id: optionalNumber3(ctx, "company-id"),
1670
- link_id: optionalNumber3(ctx, "link-id"),
2438
+ company_id: optionalNumber2(ctx, "company-id"),
2439
+ link_id: optionalNumber2(ctx, "link-id"),
1671
2440
  link_ids: optionalJsonArray(ctx, "link-ids")
1672
2441
  })
1673
2442
  });
1674
2443
 
1675
2444
  // src/commands/te-analysis/public-link/index.ts
1676
- var commands15 = [
2445
+ var commands24 = [
1677
2446
  publicLinkCreate,
1678
2447
  publicLinkList,
1679
2448
  publicLinkUpdate,
1680
2449
  publicLinkOffline,
1681
2450
  publicLinkDelete
1682
2451
  ];
1683
- var public_link_default = commands15;
2452
+ var public_link_default = commands24;
1684
2453
 
1685
2454
  // src/commands/te-analysis/model/query-adhoc.ts
1686
2455
  var queryAdhoc = createMcpCommand({
1687
2456
  command: "+query_adhoc",
1688
- description: "Run ad hoc analysis with an already-built qp. For event, retention, funnel, and prop_analysis, call the matching +build_*_analysis_qp command first and pass its qp; do not handcraft qp or call get_analysis_query_schema/list_events/list_properties/list_metrics/get_metric before the builder. For distribution, attribution, heat_map, interval, path, rank_list, and sql, use the legacy schema/metadata path. Supports fields/limit/offset pagination. For long-running or cancelable queries, requestId is required and must be provided before starting. For any query that may exceed the CLI or MCP HTTP timeout, generate requestId first so you can call +cancel_query --request_id <same value> if you stop waiting or the request returns fetch failed. If fetch failed, HTTP timeout, or caller timeout happens, the backend query may still be running. requestId must use mcp_<32 lowercase hex UUID>, for example mcp_0123456789abcdef0123456789abcdef. Submitted queries return metadata.requestId; pass that value to cancel_query(requestId) when the query is no longer needed. requestId is not auto-generated for MCP query tools because the caller must know it before the response for proactive cleanup. If requestId is omitted or blank, the backend returns REQUEST_ID_REQUIRED; invalid format returns INVALID_REQUEST_ID.",
2457
+ description: "Run ad hoc analysis with an already-built qp. For every non-SQL model, call the matching +build_*_analysis_qp command first and pass its qp; do not handcraft qp or call get_analysis_query_schema/list_events/list_properties/list_metrics/get_metric before the builder. Only SQL uses the schema/verified-definition path. Supports fields/limit/offset pagination. For long-running or cancelable queries, requestId is required and must be provided before starting. For any query that may exceed the CLI or MCP HTTP timeout, generate requestId first so you can call +cancel_query --request_id <same value> if you stop waiting or the request returns fetch failed. If fetch failed, HTTP timeout, or caller timeout happens, the backend query may still be running. requestId must use mcp_<32 lowercase hex UUID>, for example mcp_0123456789abcdef0123456789abcdef. Submitted queries return metadata.requestId; pass that value to cancel_query(requestId) when the query is no longer needed. requestId is not auto-generated for MCP query tools because the caller must know it before the response for proactive cleanup. If requestId is omitted or blank, the backend returns REQUEST_ID_REQUIRED; invalid format returns INVALID_REQUEST_ID.",
1689
2458
  flags: [
1690
2459
  { name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
1691
2460
  { name: "model_type", type: "string", required: true, desc: "Model type. Supported values: event, retention, funnel, distribution, attribution, heat_map, interval, path, rank_list, prop_analysis, sql." },
1692
- { name: "qp", type: "json", required: true, desc: "Query parameter JSON. For event/retention/funnel/prop_analysis, pass qp returned by the matching +build_*_analysis_qp command. Use +get_analysis_query_schema only for non-builder/manual model types." },
2461
+ { name: "qp", type: "json", required: true, desc: "Query parameter JSON. For every non-SQL model, pass qp returned by the matching +build_*_analysis_qp command. Use +get_analysis_query_schema only for SQL." },
1693
2462
  { name: "request_id", type: "string", required: true, desc: "Required unique request ID used for tracking and cancellation. Generate it before starting the query. It must use mcp_<32 lowercase hex UUID>, for example mcp_0123456789abcdef0123456789abcdef. Provide this before starting the query so it can be cancelled later with +cancel_query --request_id <same value>, even if the caller stops waiting before the tool returns. If fetch failed, HTTP timeout, or caller timeout happens, the backend query may still be running. requestId is not auto-generated for MCP query tools because the caller must know it before the response for proactive cleanup. If omitted or blank, the backend returns REQUEST_ID_REQUIRED; invalid format returns INVALID_REQUEST_ID. The response metadata.requestId echoes the supplied requestId and can also be passed to cancel_query(requestId) when the query is no longer needed." },
1694
2463
  { name: "use_cache", type: "boolean", required: false, desc: "Whether to use result cache. Default: true" },
1695
2464
  { name: "zone_offset", type: "number", required: false, desc: "Time zone offset in hours. For example, UTC+8 is 8 and UTC-5 is -5" },
@@ -1910,14 +2679,14 @@ var drilldownUserEvents = createMcpCommand({
1910
2679
  { name: "entity_id", type: "number", required: false, desc: "Optional entity ID for multi-entity scenarios" },
1911
2680
  { name: "entity_value", type: "string", required: false, desc: "Optional entity value for multi-entity scenarios" },
1912
2681
  { name: "use_cache", type: "boolean", required: false, desc: "Whether to use cache. Default: true" },
1913
- { name: "page_num", type: "number", required: false, desc: "Start page number. Default: 1" },
1914
- { name: "page_size", type: "number", required: false, desc: "Page size. Default: 1000, maximum: 10000." },
2682
+ { name: "limit", type: "number", required: false, desc: "Result limit. Default: 1000, maximum: 10000." },
2683
+ { name: "offset", type: "number", required: false, desc: "Result offset. Default: 0." },
1915
2684
  { name: "request_id", type: "string", required: true, desc: "Required unique request ID used for tracking and cancellation. Generate it before starting the query. It must use mcp_<32 lowercase hex UUID>, for example mcp_0123456789abcdef0123456789abcdef. Provide this before starting the query so it can be cancelled later with +cancel_query --request_id <same value>, even if the caller stops waiting before the tool returns. If fetch failed, HTTP timeout, or caller timeout happens, the backend query may still be running. requestId is not auto-generated for MCP query tools because the caller must know it before the response for proactive cleanup. If omitted or blank, the backend returns REQUEST_ID_REQUIRED; invalid format returns INVALID_REQUEST_ID. The response metadata.requestId echoes the supplied requestId and can also be passed to cancel_query(requestId) when the query is no longer needed." },
1916
2685
  { name: "timeout_minutes", type: "number", required: false, desc: "Query timeout in minutes. If omitted, 30 minutes is used." }
1917
2686
  ],
1918
2687
  risk: "read",
1919
2688
  validate: (ctx) => {
1920
- assertLimitWithinCap(optionalNumber(ctx, "page_size"), "page_size");
2689
+ assertLimitWithinCap(optionalNumber(ctx, "limit"), "limit");
1921
2690
  },
1922
2691
  buildArgs: (ctx) => ({
1923
2692
  projectId: ctx.num("project_id"),
@@ -1936,8 +2705,8 @@ var drilldownUserEvents = createMcpCommand({
1936
2705
  entityId: optionalNumber(ctx, "entity_id"),
1937
2706
  entityValue: optionalString(ctx, "entity_value"),
1938
2707
  useCache: optionalBoolean(ctx, "use_cache"),
1939
- pageNum: optionalNumber(ctx, "page_num"),
1940
- pageSize: optionalNumber(ctx, "page_size") ?? DEFAULT_QUERY_LIMIT,
2708
+ limit: optionalNumber(ctx, "limit") ?? DEFAULT_QUERY_LIMIT,
2709
+ offset: optionalNumber(ctx, "offset"),
1941
2710
  requestId: ctx.str("request_id"),
1942
2711
  timeoutMinutes: optionalNumber(ctx, "timeout_minutes")
1943
2712
  })
@@ -2163,7 +2932,7 @@ var buildDistributionAnalysisQp = createMcpCommand({
2163
2932
  });
2164
2933
 
2165
2934
  // src/commands/te-analysis/model/index.ts
2166
- var commands16 = [
2935
+ var commands25 = [
2167
2936
  buildEventAnalysisQp,
2168
2937
  buildRetentionAnalysisQp,
2169
2938
  buildFunnelAnalysisQp,
@@ -2182,7 +2951,7 @@ var commands16 = [
2182
2951
  loadFilters,
2183
2952
  getTableColumns
2184
2953
  ];
2185
- var model_default = commands16;
2954
+ var model_default = commands25;
2186
2955
 
2187
2956
  // src/commands/te-analysis/entity/query-entity-details.ts
2188
2957
  var queryEntityDetails = createMcpCommand({
@@ -2320,18 +3089,18 @@ var buildEventDetailsSql = createMcpCommand({
2320
3089
  });
2321
3090
 
2322
3091
  // src/commands/te-analysis/entity/index.ts
2323
- var commands17 = [
3092
+ var commands26 = [
2324
3093
  queryEntityDetails,
2325
3094
  queryEventDetails,
2326
3095
  buildEntityDetailsSql,
2327
3096
  buildEventDetailsSql
2328
3097
  ];
2329
- var entity_default = commands17;
3098
+ var entity_default = commands26;
2330
3099
 
2331
3100
  // src/commands/te-analysis/schema/get-analysis-query-schema.ts
2332
3101
  var getAnalysisQuerySchema = createMcpCommand({
2333
3102
  command: "+get_analysis_query_schema",
2334
- description: "Get the analysis query schema for non-builder/manual model paths. Do not use this tool for natural-language event, retention, funnel, or prop_analysis ad-hoc analysis; use the matching +build_*_analysis_qp command then +query_adhoc. Returns field definitions and usage examples for low-level/manual QP construction.",
3103
+ description: "Get the analysis query schema for the SQL manual path. Do not use this tool for natural-language non-SQL ad-hoc analysis; all ten non-SQL models have matching +build_*_analysis_qp commands. Returns field definitions and usage examples for low-level/manual SQL QP construction.",
2335
3104
  flags: [
2336
3105
  { name: "model_type", type: "string", required: true, desc: "Model type. Supported values: event, retention, funnel, distribution, sql, interval, path, attribution, prop_analysis, rank_list, heat_map" },
2337
3106
  { name: "segments", type: "string", required: false, desc: "Schema segments to include (comma-separated). Options: core, filter_group, calctype, aggregatetype, examples, full. Empty/null \u2192 core only (recommended)." },
@@ -2364,12 +3133,12 @@ var getGroupbySchema = createMcpCommand({
2364
3133
  });
2365
3134
 
2366
3135
  // src/commands/te-analysis/schema/index.ts
2367
- var commands18 = [
3136
+ var commands27 = [
2368
3137
  getAnalysisQuerySchema,
2369
3138
  getFilterSchema,
2370
3139
  getGroupbySchema
2371
3140
  ];
2372
- var schema_default = commands18;
3141
+ var schema_default = commands27;
2373
3142
 
2374
3143
  // src/commands/te-analysis/global/list-query-clusters.ts
2375
3144
  var listQueryClusters = createMcpCommand({
@@ -2385,14 +3154,14 @@ var listQueryClusters = createMcpCommand({
2385
3154
  });
2386
3155
 
2387
3156
  // src/commands/te-analysis/global/index.ts
2388
- var commands19 = [
3157
+ var commands28 = [
2389
3158
  listQueryClusters
2390
3159
  ];
2391
- var global_default = commands19;
3160
+ var global_default = commands28;
2392
3161
 
2393
3162
  // src/commands/te-analysis/index.ts
2394
3163
  registerCapabilityGatewayRoute("analysis", { gatewayDomain: "analysis" });
2395
- var commands20 = [
3164
+ var commands29 = [
2396
3165
  ...meta_default,
2397
3166
  ...report_default,
2398
3167
  ...dashboard_default,
@@ -2403,9 +3172,9 @@ var commands20 = [
2403
3172
  ...dashboard_definition_default,
2404
3173
  ...dashboard_daily_report_default,
2405
3174
  ...bi_panel_default,
3175
+ ...bi_panel_version_default,
2406
3176
  ...bi_panel_page_data_default,
2407
3177
  ...project_space_default,
2408
- ...folder_default,
2409
3178
  ...favorite_default,
2410
3179
  ...public_link_default,
2411
3180
  ...model_default,
@@ -2413,7 +3182,7 @@ var commands20 = [
2413
3182
  ...schema_default,
2414
3183
  ...isGlobalQueryModeEnabled() ? global_default : []
2415
3184
  ];
2416
- var te_analysis_default = commands20;
3185
+ var te_analysis_default = commands29;
2417
3186
  export {
2418
3187
  te_analysis_default as default
2419
3188
  };