@thinkingai/ae-cli 6.1.18 → 6.1.19

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 (96) hide show
  1. package/README.md +2 -0
  2. package/README.zh.md +6 -0
  3. package/dist/{auth-ROB2EDYV.js → auth-QPEVVBKT.js} +13 -7
  4. package/dist/auth-UMJAA72O.js +15 -0
  5. package/dist/{capability-DKMYUTLC.js → capability-ASI62I4A.js} +11 -10
  6. package/dist/{chunk-UW5UN47B.js → chunk-533JK3YX.js} +2 -0
  7. package/dist/{chunk-4XXOWOTA.js → chunk-6QK7SYYY.js} +5 -4
  8. package/dist/{chunk-TUKQZTMI.js → chunk-7K24F7T2.js} +2 -0
  9. package/dist/{chunk-OO6XR6LK.js → chunk-AMBFK2K3.js} +2 -0
  10. package/dist/{sync-HKIOZXQE.js → chunk-B5HMQAOM.js} +31 -540
  11. package/dist/{chunk-Y3LOALAV.js → chunk-DKEXH6Q5.js} +4 -3
  12. package/dist/{chunk-VTWMIC5L.js → chunk-E2JKXMVO.js} +2 -0
  13. package/dist/{chunk-JHENBQ5B.js → chunk-FR2EDAQM.js} +1 -0
  14. package/dist/{chunk-ZQ47LWTI.js → chunk-GJXRF7Y6.js} +6 -5
  15. package/dist/{chunk-DWO43OIB.js → chunk-JQ3ENZZH.js} +2 -0
  16. package/dist/chunk-JYMGHGCE.js +191 -0
  17. package/dist/{chunk-BYYS3ANB.js → chunk-KEWVSO64.js} +5 -4
  18. package/dist/{chunk-3FY3RJ26.js → chunk-KZ6ZHF5J.js} +2 -1
  19. package/dist/{chunk-ZQKDZXDO.js → chunk-O6K2ODUE.js} +3 -2
  20. package/dist/chunk-QL6R6TSK.js +25215 -0
  21. package/dist/{chunk-J2DEBMRF.js → chunk-RWXIXOZG.js} +22 -9
  22. package/dist/{chunk-QZ3AS4KK.js → chunk-S5PONFBM.js} +5 -4
  23. package/dist/{chunk-4NN5IWVN.js → chunk-T6OSFQZD.js} +2 -0
  24. package/dist/{chunk-3KWQYGYI.js → chunk-TKHSULJT.js} +2 -0
  25. package/dist/{chunk-6EIJSNBD.js → chunk-Y74WTIKJ.js} +2 -0
  26. package/dist/{client-L2YDMHQ6.js → client-N7NGZUNI.js} +4 -3
  27. package/dist/{community-report-client-C7WDGET3.js → community-report-client-6OL6GBQW.js} +3 -2
  28. package/dist/{config-BMYZX2UE.js → config-XNMACCKX.js} +8 -7
  29. package/dist/{data-integration-QEKDWQDY.js → data-integration-4NZGZ45E.js} +913 -92
  30. package/dist/index.js +38 -36
  31. package/dist/{local-data-upload-client-4YYHSYD6.js → local-data-upload-client-EFHDLXFG.js} +3 -2
  32. package/dist/{memory-I2WXDTV2.js → memory-HBJQ2GC5.js} +8 -7
  33. package/dist/{metadata-I4C2EWUN.js → metadata-62EWBEIG.js} +12 -11
  34. package/dist/{model-HLHIEFMU.js → model-BHLJ2QMT.js} +10 -9
  35. package/dist/{personal-semantic-preference-LIPACBDX.js → personal-semantic-preference-JBVMAI7L.js} +11 -10
  36. package/dist/{project-semantic-RT3R2VQD.js → project-semantic-BQ4MPUS5.js} +12 -11
  37. package/dist/sync-MUWPRM5I.js +522 -0
  38. package/dist/{te-agent-BR6VDBNX.js → te-agent-WQZTMEK4.js} +10 -9
  39. package/dist/{te-analysis-7VUNUYWZ.js → te-analysis-MNCG65LU.js} +107 -20
  40. package/dist/{te-community-5DMNKJWY.js → te-community-BNE6KREL.js} +8 -7
  41. package/dist/{te-dataops-6P5IKWNJ.js → te-dataops-TXLKM2W6.js} +467 -67
  42. package/dist/{te-engage-KZPR5R22.js → te-engage-TPKLRVTL.js} +84 -10
  43. package/dist/{te-experiment-6BITX4RD.js → te-experiment-6BYKTCY7.js} +85 -12
  44. package/dist/{te-kb-RCLSSH2Q.js → te-kb-BUD6N3NI.js} +311 -24
  45. package/dist/{te-system-FXITO2JG.js → te-system-44LZJDTQ.js} +573 -37
  46. package/dist/{te-team-ADOC2ROP.js → te-team-XMP47YXE.js} +10 -7
  47. package/dist/{update-YCYCKJOO.js → update-UODFOZ4P.js} +7 -6
  48. package/package.json +18 -9
  49. package/skills/ae-analysis/references/analysis_gateway_assets.md +1 -1
  50. package/skills/ae-analysis/references/audience_models.md +18 -0
  51. package/skills/ae-analysis/references/command_index.md +2 -2
  52. package/skills/ae-analysis/references/project_timezone_update.md +13 -4
  53. package/skills/ae-analysis/references/property_create.md +2 -0
  54. package/skills/ae-analysis/references/super_metadata_batch_create.md +2 -0
  55. package/skills/ae-analysis/references/user_cluster_models.md +2 -0
  56. package/skills/ae-analysis/references/user_cluster_update.md +8 -4
  57. package/skills/ae-analysis/references/user_tag_create.md +7 -1
  58. package/skills/ae-analysis/references/user_tag_models.md +8 -2
  59. package/skills/ae-data-integration/SKILL.md +1 -0
  60. package/skills/ae-data-integration/references/error-handling.md +54 -1
  61. package/skills/ae-data-integration/references/source-inspect.md +18 -2
  62. package/skills/ae-data-integration/references/transform.md +3 -1
  63. package/skills/ae-data-integration/references/ue-routing.md +23 -0
  64. package/skills/ae-dataops/SKILL.md +11 -1
  65. package/skills/ae-dataops/references/dataops-backfill.md +135 -0
  66. package/skills/ae-engage/SKILL.md +5 -0
  67. package/skills/ae-engage/references/build-task-save-guide.md +5 -1
  68. package/skills/ae-engage/references/save-flow.md +37 -1
  69. package/skills/ae-engage/references/save-task.md +6 -0
  70. package/skills/ae-experiment/SKILL.md +6 -2
  71. package/skills/ae-experiment/references/save_metric.md +20 -8
  72. package/skills/ae-kb/SKILL.md +120 -9
  73. package/skills/ae-system/SKILL.md +28 -30
  74. package/skills/ae-system/references/channel-management.md +303 -0
  75. package/dist/auth-GBMV6TEJ.js +0 -14
  76. package/dist/capability-HYVVPG25.js +0 -352
  77. package/dist/chunk-EFH4XWYC.js +0 -556
  78. package/dist/chunk-JRJY5DMJ.js +0 -71
  79. package/dist/chunk-OMPRXM3V.js +0 -349
  80. package/dist/chunk-QNOLN2LJ.js +0 -509
  81. package/dist/chunk-RJDU7NYP.js +0 -1198
  82. package/dist/chunk-RNAALWJK.js +0 -98
  83. package/dist/chunk-SERWF6G5.js +0 -13
  84. package/dist/memory-3ORCR7JH.js +0 -893
  85. package/dist/metadata-VUOQJE26.js +0 -339
  86. package/dist/model-UGRDX4MW.js +0 -139
  87. package/dist/personal-semantic-preference-OEISBRHM.js +0 -239
  88. package/dist/project-semantic-FFPWFPIW.js +0 -1114
  89. package/dist/sync-TFHU2UTG.js +0 -10261
  90. package/dist/te-agent-VLYOV7S4.js +0 -3894
  91. package/dist/te-analysis-4YGQL5RC.js +0 -9357
  92. package/dist/te-community-ISDQWJU7.js +0 -1859
  93. package/dist/te-dataops-CVULXNVB.js +0 -2209
  94. package/dist/te-engage-N5WI32H6.js +0 -4898
  95. package/dist/te-experiment-UVR4HLND.js +0 -988
  96. package/dist/te-system-K2GYMCTB.js +0 -2213
@@ -1,3 +1,4 @@
1
+ import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
1
2
  import {
2
3
  assertOutputPathAvailable,
3
4
  clientWaitTimeoutSeconds,
@@ -6,17 +7,17 @@ import {
6
7
  waitForAnalysisRun,
7
8
  withAsyncArtifactLifecycle,
8
9
  withInterruptSignal
9
- } from "./chunk-QZ3AS4KK.js";
10
+ } from "./chunk-S5PONFBM.js";
10
11
  import {
11
12
  createCapabilityCommand
12
- } from "./chunk-JRJY5DMJ.js";
13
+ } from "./chunk-DKEXH6Q5.js";
13
14
  import {
14
15
  registerCapabilityGatewayRoute,
15
16
  resolveGatewayDomain
16
- } from "./chunk-3KWQYGYI.js";
17
+ } from "./chunk-TKHSULJT.js";
17
18
  import {
18
19
  withOutputMetadata
19
- } from "./chunk-BYYS3ANB.js";
20
+ } from "./chunk-KEWVSO64.js";
20
21
  import {
21
22
  CapabilityGatewayError,
22
23
  buildCapabilityGatewayUrl,
@@ -27,17 +28,17 @@ import {
27
28
  requestCapabilityGatewayWithEnvelope,
28
29
  uploadInputFile,
29
30
  validateCapability
30
- } from "./chunk-OMPRXM3V.js";
31
- import "./chunk-6EIJSNBD.js";
31
+ } from "./chunk-GJXRF7Y6.js";
32
+ import "./chunk-Y74WTIKJ.js";
32
33
  import {
33
34
  getCliToken
34
- } from "./chunk-J2DEBMRF.js";
35
- import "./chunk-ZQKDZXDO.js";
36
- import "./chunk-3FY3RJ26.js";
35
+ } from "./chunk-RWXIXOZG.js";
36
+ import "./chunk-O6K2ODUE.js";
37
+ import "./chunk-KZ6ZHF5J.js";
37
38
  import {
38
39
  CliValidationError
39
- } from "./chunk-UW5UN47B.js";
40
- import "./chunk-JHENBQ5B.js";
40
+ } from "./chunk-533JK3YX.js";
41
+ import "./chunk-FR2EDAQM.js";
41
42
 
42
43
  // src/commands/te-analysis/capability-shared.ts
43
44
  var ANALYSIS_GATEWAY_CLI_SERVICES = /* @__PURE__ */ new Set(["project", "system"]);
@@ -5140,7 +5141,7 @@ var clusterDefinitionRequestFlag = {
5140
5141
  var optionalClusterDefinitionRequestFlag = {
5141
5142
  ...clusterDefinitionRequestFlag,
5142
5143
  required: false,
5143
- desc: "Optional semantic snake_case cluster definition. Read user_cluster_models.md; raw filts, C-codes, ftv, columnName, and backend DTOs are rejected."
5144
+ desc: "Optional semantic snake_case cluster definition. Its type must match the existing cluster type; update cannot change the analysis entity. Read user_cluster_models.md; raw filts, C-codes, ftv, columnName, and backend DTOs are rejected."
5144
5145
  };
5145
5146
  var tagDefinitionRequestFlag = {
5146
5147
  ...clusterDefinitionRequestFlag,
@@ -5591,7 +5592,7 @@ var commands40 = [
5591
5592
  zoneOffsetFlag3,
5592
5593
  entityIdFlag
5593
5594
  ], "write", (ctx) => clusterWriteInput(ctx, true)),
5594
- capability("user-cluster", "update", "analysis.user_cluster.update", "Update a condition or SQL user cluster. Pass only fields that should change.", [
5595
+ capability("user-cluster", "update", "analysis.user_cluster.update", "Update a condition or SQL user cluster without changing its existing type or analysis entity. Pass only fields that should change.", [
5595
5596
  projectIdFlag,
5596
5597
  clusterNameFlag,
5597
5598
  optionalDisplayNameFlag,
@@ -5600,7 +5601,7 @@ var commands40 = [
5600
5601
  remarkFlag,
5601
5602
  zoneOffsetFlag3,
5602
5603
  autoRefreshCronFlag
5603
- ], "write", (ctx) => clusterWriteInput(ctx, false)),
5604
+ ], "high-risk-write", (ctx) => clusterWriteInput(ctx, false)),
5604
5605
  idImportCapability(capability("user-cluster", "create-id", "analysis.user_cluster.create_id", "Create a cluster by mapping imported values to an analysis entity.", [
5605
5606
  projectIdFlag,
5606
5607
  { ...newClusterNameFlag, required: false, desc: "Optional cluster_name; generated if omitted. When provided, it must satisfy the 1-80 character machine-name contract." },
@@ -6886,6 +6887,16 @@ var projectTimezoneOverview = createAnalysisCapabilityCommand({
6886
6887
  });
6887
6888
 
6888
6889
  // src/commands/te-analysis/project/timezone/update.ts
6890
+ var TIMEZONE_ITEMS = [
6891
+ "timezone_toggle",
6892
+ "zone_offset",
6893
+ "user_timezone",
6894
+ "project_timezone_display"
6895
+ ];
6896
+ var timezonePayloadFlag = {
6897
+ ...requiredPayloadFlag,
6898
+ desc: 'Item-specific snake_case payload: timezone_toggle uses {"toggle":true}; zone_offset uses {"column_name":"#zone_offset"}; user_timezone uses {"column_name":"user_timezone","codetable":"optional_table"}; project_timezone_display uses {"display_timezones":[{"timezone":8,"is_default":true}]}.'
6899
+ };
6889
6900
  var projectTimezoneUpdate = createAnalysisCapabilityCommand({
6890
6901
  resource: "project timezone",
6891
6902
  command: "update",
@@ -6893,16 +6904,92 @@ var projectTimezoneUpdate = createAnalysisCapabilityCommand({
6893
6904
  description: "Update one project time zone configuration item.",
6894
6905
  flags: [
6895
6906
  projectIdFlag,
6896
- requiredPayloadFlag,
6907
+ timezonePayloadFlag,
6897
6908
  { name: "item", type: "string", required: true, desc: "Timezone item: timezone_toggle, zone_offset, user_timezone, project_timezone_display." }
6898
6909
  ],
6899
6910
  risk: "write",
6900
- buildInput: (ctx) => compactInput({
6901
- project_id: ctx.num("project-id"),
6902
- payload: ctx.json("payload"),
6903
- item: ctx.str("item")
6904
- })
6911
+ buildInput: (ctx) => {
6912
+ const item = ctx.str("item").toLowerCase();
6913
+ const payload = ctx.json("payload");
6914
+ validateTimezonePayload(item, payload);
6915
+ return compactInput({
6916
+ project_id: ctx.num("project-id"),
6917
+ payload,
6918
+ item
6919
+ });
6920
+ }
6905
6921
  });
6922
+ function validateTimezonePayload(item, payload) {
6923
+ if (!TIMEZONE_ITEMS.includes(item)) {
6924
+ throw new CliValidationError(
6925
+ "--item must be timezone_toggle, zone_offset, user_timezone, or project_timezone_display.",
6926
+ { code: "INVALID_TIMEZONE_ITEM" }
6927
+ );
6928
+ }
6929
+ if (!isObject(payload)) {
6930
+ throw invalidPayload(item, "must be a JSON object");
6931
+ }
6932
+ switch (item) {
6933
+ case "timezone_toggle":
6934
+ if (typeof payload.toggle !== "boolean") {
6935
+ throw invalidPayload(item, "requires boolean field toggle", '{"toggle":true}');
6936
+ }
6937
+ allowOnly(payload, item, ["toggle"]);
6938
+ return;
6939
+ case "zone_offset":
6940
+ if (typeof payload.column_name !== "string") {
6941
+ throw invalidPayload(item, "requires string field column_name", '{"column_name":"#zone_offset"}');
6942
+ }
6943
+ allowOnly(payload, item, ["column_name"]);
6944
+ return;
6945
+ case "user_timezone":
6946
+ if (typeof payload.column_name !== "string" || payload.column_name.length === 0) {
6947
+ throw invalidPayload(item, "requires non-empty string field column_name", '{"column_name":"user_timezone"}');
6948
+ }
6949
+ if (payload.codetable !== void 0 && typeof payload.codetable !== "string") {
6950
+ throw invalidPayload(item, "optional field codetable must be a string", '{"column_name":"user_timezone","codetable":"timezone_code_table"}');
6951
+ }
6952
+ allowOnly(payload, item, ["column_name", "codetable"]);
6953
+ return;
6954
+ case "project_timezone_display":
6955
+ validateDisplayTimezones(payload.display_timezones, item);
6956
+ allowOnly(payload, item, ["display_timezones"]);
6957
+ }
6958
+ }
6959
+ function validateDisplayTimezones(value, item) {
6960
+ if (!Array.isArray(value) || value.length === 0) {
6961
+ throw invalidPayload(item, "requires non-empty array field display_timezones", '{"display_timezones":[{"timezone":8,"is_default":true}]}');
6962
+ }
6963
+ for (const entry of value) {
6964
+ if (!isObject(entry)) {
6965
+ throw invalidPayload(item, "display_timezones entries must be objects", '{"display_timezones":[{"timezone":8,"is_default":true}]}');
6966
+ }
6967
+ allowOnly(entry, item, ["timezone", "is_default"]);
6968
+ if (!Number.isInteger(entry.timezone) || !(entry.timezone >= -12 && entry.timezone <= 14 || entry.timezone === 99)) {
6969
+ throw invalidPayload(item, "display_timezones[].timezone must be an integer from -12 through 14, or 99 for no fixed display timezone");
6970
+ }
6971
+ if (entry.is_default !== void 0 && typeof entry.is_default !== "boolean") {
6972
+ throw invalidPayload(item, "display_timezones[].is_default must be a boolean when provided");
6973
+ }
6974
+ }
6975
+ }
6976
+ function allowOnly(payload, item, fields) {
6977
+ if (Object.keys(payload).some((field) => !fields.includes(field))) {
6978
+ throw invalidPayload(item, `supports only fields ${fields.join(", ")}`);
6979
+ }
6980
+ }
6981
+ function invalidPayload(item, reason, example) {
6982
+ return new CliValidationError(
6983
+ `--payload for --item ${item} ${reason}.`,
6984
+ {
6985
+ code: "INVALID_TIMEZONE_PAYLOAD",
6986
+ hint: example === void 0 ? void 0 : `Use: --payload '${example}'`
6987
+ }
6988
+ );
6989
+ }
6990
+ function isObject(value) {
6991
+ return value !== null && typeof value === "object" && !Array.isArray(value);
6992
+ }
6906
6993
 
6907
6994
  // src/commands/te-analysis/project/timezone/index.ts
6908
6995
  var commands62 = [
@@ -1,25 +1,26 @@
1
+ import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
1
2
  import {
2
3
  registerCapabilityGatewayRoute
3
- } from "./chunk-3KWQYGYI.js";
4
+ } from "./chunk-TKHSULJT.js";
4
5
  import {
5
6
  internalCallSourceHeaders
6
- } from "./chunk-6EIJSNBD.js";
7
+ } from "./chunk-Y74WTIKJ.js";
7
8
  import {
8
9
  clearCliToken,
9
10
  getCliToken
10
- } from "./chunk-J2DEBMRF.js";
11
- import "./chunk-ZQKDZXDO.js";
11
+ } from "./chunk-RWXIXOZG.js";
12
+ import "./chunk-O6K2ODUE.js";
12
13
  import {
13
14
  getActiveHost,
14
15
  safeJsonParse
15
- } from "./chunk-3FY3RJ26.js";
16
+ } from "./chunk-KZ6ZHF5J.js";
16
17
  import {
17
18
  CliValidationError,
18
19
  PermissionError
19
- } from "./chunk-UW5UN47B.js";
20
+ } from "./chunk-533JK3YX.js";
20
21
  import {
21
22
  logger
22
- } from "./chunk-JHENBQ5B.js";
23
+ } from "./chunk-FR2EDAQM.js";
23
24
 
24
25
  // src/core/mcp.ts
25
26
  async function permissionDetails(resp) {