@thinkingai/ae-cli 6.0.20 → 6.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -4
- package/README.zh.md +1 -4
- package/dist/{auth-DYC2BGLM.js → auth-I2G7OAU2.js} +2 -4
- package/dist/{auth-GHBMJ5ZR.js → auth-RDN6D5HU.js} +32 -104
- package/dist/{chunk-5OC7CYCG.js → chunk-2W7HULUD.js} +14 -14
- package/dist/chunk-4EUZRJPO.js +163 -0
- package/dist/{chunk-DMMEPCST.js → chunk-5FBLRSMU.js} +25 -115
- package/dist/{chunk-BJX3GXWC.js → chunk-E34XH4GW.js} +2 -2
- package/dist/chunk-FPE5LGVU.js +105 -0
- package/dist/{chunk-I5CRVM2S.js → chunk-H52CSLJW.js} +44 -17
- package/dist/{chunk-RSHMZ3LG.js → chunk-U6QPKCN3.js} +6 -20
- package/dist/{chunk-6W4QOZAL.js → chunk-WPXHCP4A.js} +23 -13
- package/dist/{chunk-PN3OS34E.js → chunk-XE2PI5DS.js} +1 -1
- package/dist/{chunk-2DUEAXV3.js → chunk-YACCPUNQ.js} +1 -1
- package/dist/cli-token-6AGEDJF4.js +14 -0
- package/dist/{client-2UJ63MVQ.js → client-VTJMUZ4O.js} +3 -3
- package/dist/{config-NCUGK6NS.js → config-2SDTLGOC.js} +3 -3
- package/dist/index.js +309 -197
- package/dist/metadata-JZ2OTWBK.js +420 -0
- package/dist/{model-SJSOZTRS.js → model-ZYMRN4VS.js} +2 -2
- package/dist/{raw-7NVWSVJP.js → raw-NGYHAL3F.js} +4 -4
- package/dist/{sync-GRVO4K3U.js → sync-JVLX6TGW.js} +3 -3
- package/dist/{te-agent-CYZUC4US.js → te-agent-QPZTLHPH.js} +2 -2
- package/dist/{te-analysis-HJ22TUAA.js → te-analysis-WWX3Z6RP.js} +46 -24
- package/dist/{te-audience-MYDE5WEH.js → te-audience-UXGHUVBB.js} +27 -18
- package/dist/{te-common-WNCZB7R7.js → te-common-7XXH73MF.js} +5 -4
- package/dist/{te-community-JEEFXPB3.js → te-community-QKE67HR2.js} +5 -4
- package/dist/{te-dataops-ZTS7XMXM.js → te-dataops-6W7NNYST.js} +4 -5
- package/dist/{te-engage-4XHCTS6I.js → te-engage-NCFAQFX3.js} +5 -4
- package/dist/{te-kb-OWM3RQRH.js → te-kb-K5BQYUCM.js} +4 -5
- package/dist/{te-meta-JVO4QJBH.js → te-meta-LJZBOSMO.js} +26 -19
- package/dist/{te-team-YY24VORI.js → te-team-DHK5R7MV.js} +5 -6
- package/package.json +3 -2
- package/skills/ae-analysis/SKILL.md +9 -2
- package/skills/ae-analysis/references/build_attribution_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_cluster_definition.md +2 -0
- package/skills/ae-analysis/references/build_distribution_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_event_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_funnel_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_heat_map_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_interval_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_path_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_prop_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_rank_list_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_retention_analysis_qp.md +2 -0
- package/skills/ae-analysis/references/build_tag_definition.md +2 -0
- package/skills/ae-analysis/references/list_clusters.md +3 -1
- package/skills/ae-analysis/references/list_events.md +5 -2
- package/skills/ae-analysis/references/list_metrics.md +4 -2
- package/skills/ae-analysis/references/list_properties.md +4 -2
- package/skills/ae-analysis/references/list_tags.md +3 -1
- package/skills/ae-generate-tracking-code/SKILL.md +68 -31
- package/skills/ae-generate-tracking-code/references/snippet-delivery.md +26 -1
- package/skills/ae-generate-tracking-code/references/te-api.md +47 -164
- package/skills/ae-generate-tracking-plan/SKILL.md +109 -32
- package/skills/ae-generate-tracking-plan/references/te-api.md +57 -27
- package/skills/ae-metadata/SKILL.md +90 -0
- package/skills/ae-metadata/references/metadata_data_table_csv_delete.md +15 -0
- package/skills/ae-metadata/references/metadata_data_table_csv_write.md +29 -0
- package/skills/ae-metadata/references/metadata_data_table_download.md +17 -0
- package/skills/ae-metadata/references/metadata_data_table_get.md +24 -0
- package/skills/ae-metadata/references/metadata_data_table_list.md +27 -0
- package/skills/ae-metadata/references/metadata_data_table_property_bindings_update.md +17 -0
- package/skills/ae-metadata/references/metadata_data_table_sql_delete.md +15 -0
- package/skills/ae-metadata/references/metadata_data_table_sql_write.md +31 -0
- package/skills/ae-metadata/references/metadata_event_get.md +52 -0
- package/skills/ae-metadata/references/metadata_input_file_upload.md +29 -0
- package/skills/ae-metadata/references/metadata_property_dimension_table_bind_existing.md +27 -0
- package/skills/ae-metadata/references/metadata_property_dimension_table_create_and_bind_csv.md +30 -0
- package/skills/ae-metadata/references/metadata_property_get.md +54 -0
|
@@ -1,14 +1,16 @@
|
|
|
1
|
+
import "./chunk-4EUZRJPO.js";
|
|
1
2
|
import {
|
|
2
3
|
callMcpTool,
|
|
3
4
|
parseMcpResult,
|
|
4
5
|
resolveMcpUrl
|
|
5
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-5FBLRSMU.js";
|
|
6
7
|
import {
|
|
7
8
|
isGlobalQueryModeEnabled
|
|
8
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-XE2PI5DS.js";
|
|
9
10
|
import "./chunk-NOO24N7W.js";
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-FPE5LGVU.js";
|
|
12
|
+
import "./chunk-U6QPKCN3.js";
|
|
13
|
+
import "./chunk-WPXHCP4A.js";
|
|
12
14
|
|
|
13
15
|
// src/commands/te-analysis/shared.ts
|
|
14
16
|
function createMcpCommand(config) {
|
|
@@ -891,7 +893,8 @@ var buildEventAnalysisQp = createMcpCommand({
|
|
|
891
893
|
{ name: "time_particle_size", type: "string", required: false, desc: "Optional time granularity. Default: total." },
|
|
892
894
|
{ name: "groups", type: "json", required: false, desc: "Optional group-by dimensions JSON array." },
|
|
893
895
|
{ name: "filters", type: "json", required: false, desc: "Optional global filters JSON array." },
|
|
894
|
-
{ name: "relation", type: "string", required: false, desc: "Optional filter relation. Supported values: and, or. Default: and." }
|
|
896
|
+
{ name: "relation", type: "string", required: false, desc: "Optional filter relation. Supported values: and, or. Default: and." },
|
|
897
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
895
898
|
],
|
|
896
899
|
risk: "read",
|
|
897
900
|
buildArgs: (ctx) => ({
|
|
@@ -901,7 +904,8 @@ var buildEventAnalysisQp = createMcpCommand({
|
|
|
901
904
|
timeParticleSize: ctx.str("time_particle_size") || void 0,
|
|
902
905
|
groups: optionalJson(ctx, "groups"),
|
|
903
906
|
filters: optionalJson(ctx, "filters"),
|
|
904
|
-
relation: ctx.str("relation") || void 0
|
|
907
|
+
relation: ctx.str("relation") || void 0,
|
|
908
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
905
909
|
})
|
|
906
910
|
});
|
|
907
911
|
|
|
@@ -914,7 +918,8 @@ var buildRetentionAnalysisQp = createMcpCommand({
|
|
|
914
918
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for retention analysis." },
|
|
915
919
|
{ name: "retention", type: "json", required: true, desc: "Required retention intent JSON." },
|
|
916
920
|
{ name: "relation", type: "string", required: false, desc: "Optional top-level retention filter relation. Supported values: and, or. Default: and." },
|
|
917
|
-
{ name: "time_particle_size", type: "string", required: false, desc: "Optional time granularity. Supported values: day, week, month." }
|
|
921
|
+
{ name: "time_particle_size", type: "string", required: false, desc: "Optional time granularity. Supported values: day, week, month." },
|
|
922
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
918
923
|
],
|
|
919
924
|
risk: "read",
|
|
920
925
|
buildArgs: (ctx) => ({
|
|
@@ -922,7 +927,8 @@ var buildRetentionAnalysisQp = createMcpCommand({
|
|
|
922
927
|
timeRange: ctx.json("time_range"),
|
|
923
928
|
retention: ctx.json("retention"),
|
|
924
929
|
relation: ctx.str("relation") || void 0,
|
|
925
|
-
timeParticleSize: ctx.str("time_particle_size") || void 0
|
|
930
|
+
timeParticleSize: ctx.str("time_particle_size") || void 0,
|
|
931
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
926
932
|
})
|
|
927
933
|
});
|
|
928
934
|
|
|
@@ -935,7 +941,8 @@ var buildFunnelAnalysisQp = createMcpCommand({
|
|
|
935
941
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for funnel analysis." },
|
|
936
942
|
{ name: "funnel", type: "json", required: true, desc: "Required funnel intent JSON." },
|
|
937
943
|
{ name: "relation", type: "string", required: false, desc: "Optional top-level funnel filter relation. Supported values: and, or. Default: and." },
|
|
938
|
-
{ name: "time_particle_size", type: "string", required: false, desc: "Optional time granularity. Supported values: day, week, month." }
|
|
944
|
+
{ name: "time_particle_size", type: "string", required: false, desc: "Optional time granularity. Supported values: day, week, month." },
|
|
945
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
939
946
|
],
|
|
940
947
|
risk: "read",
|
|
941
948
|
buildArgs: (ctx) => ({
|
|
@@ -943,7 +950,8 @@ var buildFunnelAnalysisQp = createMcpCommand({
|
|
|
943
950
|
timeRange: ctx.json("time_range"),
|
|
944
951
|
funnel: ctx.json("funnel"),
|
|
945
952
|
relation: ctx.str("relation") || void 0,
|
|
946
|
-
timeParticleSize: ctx.str("time_particle_size") || void 0
|
|
953
|
+
timeParticleSize: ctx.str("time_particle_size") || void 0,
|
|
954
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
947
955
|
})
|
|
948
956
|
});
|
|
949
957
|
|
|
@@ -953,12 +961,14 @@ var buildPropAnalysisQp = createMcpCommand({
|
|
|
953
961
|
description: "Build a validated prop-analysis QP from structured intent. Call before query_adhoc for prop_analysis ad-hoc analysis. Do not call get_analysis_query_schema/list_properties/list_metrics/get_metric first; the builder resolves user properties internally. This command only builds qp and does not execute query_adhoc.",
|
|
954
962
|
flags: [
|
|
955
963
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
956
|
-
{ name: "prop_analysis", type: "json", required: true, desc: "Required user property analysis intent JSON." }
|
|
964
|
+
{ name: "prop_analysis", type: "json", required: true, desc: "Required user property analysis intent JSON." },
|
|
965
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
957
966
|
],
|
|
958
967
|
risk: "read",
|
|
959
968
|
buildArgs: (ctx) => ({
|
|
960
969
|
projectId: ctx.num("project_id"),
|
|
961
|
-
propAnalysis: ctx.json("prop_analysis")
|
|
970
|
+
propAnalysis: ctx.json("prop_analysis"),
|
|
971
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
962
972
|
})
|
|
963
973
|
});
|
|
964
974
|
|
|
@@ -1176,7 +1186,8 @@ var buildIntervalAnalysisQp = createMcpCommand({
|
|
|
1176
1186
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for interval analysis." },
|
|
1177
1187
|
{ name: "interval", type: "json", required: true, desc: "Interval analysis intent JSON. Required fields: initialEvent, returnEvent, window (value+unit). Optional: relationEventPropertyName, groups, filters, initialFilters, returnFilters, initialFilterRelation, returnFilterRelation." },
|
|
1178
1188
|
{ name: "relation", type: "string", required: false, desc: "Filter relation for top-level interval filters. Supported values: and, or. Default: and." },
|
|
1179
|
-
{ name: "time_particle_size", type: "string", required: false, desc: "Time granularity. Allowed values: day, week, month. Defaults to day when omitted." }
|
|
1189
|
+
{ name: "time_particle_size", type: "string", required: false, desc: "Time granularity. Allowed values: day, week, month. Defaults to day when omitted." },
|
|
1190
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
1180
1191
|
],
|
|
1181
1192
|
risk: "read",
|
|
1182
1193
|
buildArgs: (ctx) => ({
|
|
@@ -1184,7 +1195,8 @@ var buildIntervalAnalysisQp = createMcpCommand({
|
|
|
1184
1195
|
timeRange: ctx.json("time_range"),
|
|
1185
1196
|
interval: ctx.json("interval"),
|
|
1186
1197
|
relation: optionalString(ctx, "relation"),
|
|
1187
|
-
timeParticleSize: optionalString(ctx, "time_particle_size")
|
|
1198
|
+
timeParticleSize: optionalString(ctx, "time_particle_size"),
|
|
1199
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
1188
1200
|
})
|
|
1189
1201
|
});
|
|
1190
1202
|
|
|
@@ -1195,13 +1207,15 @@ var buildPathAnalysisQp = createMcpCommand({
|
|
|
1195
1207
|
flags: [
|
|
1196
1208
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
1197
1209
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for path analysis." },
|
|
1198
|
-
{ name: "path", type: "json", required: true, desc: "Path analysis intent JSON. Required fields: sourceEvent, eventNames (array), sessionInterval, sessionUnit. Optional: sourceType (0=forward, 1=backward, default 0)." }
|
|
1210
|
+
{ name: "path", type: "json", required: true, desc: "Path analysis intent JSON. Required fields: sourceEvent, eventNames (array), sessionInterval, sessionUnit. Optional: sourceType (0=forward, 1=backward, default 0)." },
|
|
1211
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
1199
1212
|
],
|
|
1200
1213
|
risk: "read",
|
|
1201
1214
|
buildArgs: (ctx) => ({
|
|
1202
1215
|
projectId: ctx.num("project_id"),
|
|
1203
1216
|
timeRange: ctx.json("time_range"),
|
|
1204
|
-
path: ctx.json("path")
|
|
1217
|
+
path: ctx.json("path"),
|
|
1218
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
1205
1219
|
})
|
|
1206
1220
|
});
|
|
1207
1221
|
|
|
@@ -1212,13 +1226,15 @@ var buildAttributionAnalysisQp = createMcpCommand({
|
|
|
1212
1226
|
flags: [
|
|
1213
1227
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
1214
1228
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for attribution analysis." },
|
|
1215
|
-
{ name: "attribution", type: "json", required: true, desc: "Attribution intent JSON. Required fields: targetEvent, targetAggregation, attributionEvents (array), attributionModel (first/last/linear), window (value+unit). Optional: targetProperty, directConversion, filters, relation." }
|
|
1229
|
+
{ name: "attribution", type: "json", required: true, desc: "Attribution intent JSON. Required fields: targetEvent, targetAggregation, attributionEvents (array), attributionModel (first/last/linear), window (value+unit). Optional: targetProperty, directConversion, filters, relation." },
|
|
1230
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
1216
1231
|
],
|
|
1217
1232
|
risk: "read",
|
|
1218
1233
|
buildArgs: (ctx) => ({
|
|
1219
1234
|
projectId: ctx.num("project_id"),
|
|
1220
1235
|
timeRange: ctx.json("time_range"),
|
|
1221
|
-
attribution: ctx.json("attribution")
|
|
1236
|
+
attribution: ctx.json("attribution"),
|
|
1237
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
1222
1238
|
})
|
|
1223
1239
|
});
|
|
1224
1240
|
|
|
@@ -1229,13 +1245,15 @@ var buildHeatMapAnalysisQp = createMcpCommand({
|
|
|
1229
1245
|
flags: [
|
|
1230
1246
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
1231
1247
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for heatmap analysis." },
|
|
1232
|
-
{ name: "heat_map", type: "json", required: true, desc: "Heatmap intent JSON. Required fields: hotEvent, hotAggregation, xProp, yProp. Optional: hotProperty, filters, relation." }
|
|
1248
|
+
{ name: "heat_map", type: "json", required: true, desc: "Heatmap intent JSON. Required fields: hotEvent, hotAggregation, xProp, yProp. Optional: hotProperty, filters, relation." },
|
|
1249
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
1233
1250
|
],
|
|
1234
1251
|
risk: "read",
|
|
1235
1252
|
buildArgs: (ctx) => ({
|
|
1236
1253
|
projectId: ctx.num("project_id"),
|
|
1237
1254
|
timeRange: ctx.json("time_range"),
|
|
1238
|
-
heatMap: ctx.json("heat_map")
|
|
1255
|
+
heatMap: ctx.json("heat_map"),
|
|
1256
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
1239
1257
|
})
|
|
1240
1258
|
});
|
|
1241
1259
|
|
|
@@ -1246,13 +1264,15 @@ var buildRankListAnalysisQp = createMcpCommand({
|
|
|
1246
1264
|
flags: [
|
|
1247
1265
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
1248
1266
|
{ name: "time_range", type: "json", required: true, desc: "Required time range JSON for rank list analysis." },
|
|
1249
|
-
{ name: "rank_list", type: "json", required: true, desc: "Rank list intent JSON. Required fields: rankDimension (field), rankEvent, rankAggregation. Optional: rankProperty, rankType (rank/dense_rank/row_rank), orderBy (DESC/ASC), filters, relation." }
|
|
1267
|
+
{ name: "rank_list", type: "json", required: true, desc: "Rank list intent JSON. Required fields: rankDimension (field), rankEvent, rankAggregation. Optional: rankProperty, rankType (rank/dense_rank/row_rank), orderBy (DESC/ASC), filters, relation." },
|
|
1268
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
1250
1269
|
],
|
|
1251
1270
|
risk: "read",
|
|
1252
1271
|
buildArgs: (ctx) => ({
|
|
1253
1272
|
projectId: ctx.num("project_id"),
|
|
1254
1273
|
timeRange: ctx.json("time_range"),
|
|
1255
|
-
rankList: ctx.json("rank_list")
|
|
1274
|
+
rankList: ctx.json("rank_list"),
|
|
1275
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
1256
1276
|
})
|
|
1257
1277
|
});
|
|
1258
1278
|
|
|
@@ -1267,7 +1287,8 @@ var buildDistributionAnalysisQp = createMcpCommand({
|
|
|
1267
1287
|
{ name: "time_particle_size", type: "string", required: false, desc: "Time granularity. Allowed values: day, week, month, total. Defaults to day when omitted." },
|
|
1268
1288
|
{ name: "groups", type: "json", required: false, desc: "Optional group-by dimensions JSON array." },
|
|
1269
1289
|
{ name: "filters", type: "json", required: false, desc: "Optional global filters JSON array." },
|
|
1270
|
-
{ name: "relation", type: "string", required: false, desc: "Optional filter relation. Supported values: and, or. Default: and." }
|
|
1290
|
+
{ name: "relation", type: "string", required: false, desc: "Optional filter relation. Supported values: and, or. Default: and." },
|
|
1291
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the QP." }
|
|
1271
1292
|
],
|
|
1272
1293
|
risk: "read",
|
|
1273
1294
|
buildArgs: (ctx) => ({
|
|
@@ -1277,7 +1298,8 @@ var buildDistributionAnalysisQp = createMcpCommand({
|
|
|
1277
1298
|
timeParticleSize: optionalString(ctx, "time_particle_size"),
|
|
1278
1299
|
groups: optionalJson(ctx, "groups"),
|
|
1279
1300
|
filters: optionalJson(ctx, "filters"),
|
|
1280
|
-
relation: optionalString(ctx, "relation")
|
|
1301
|
+
relation: optionalString(ctx, "relation"),
|
|
1302
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
1281
1303
|
})
|
|
1282
1304
|
});
|
|
1283
1305
|
|
|
@@ -2,11 +2,12 @@ import {
|
|
|
2
2
|
callMcpTool,
|
|
3
3
|
parseMcpResult,
|
|
4
4
|
resolveMcpUrl
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-5FBLRSMU.js";
|
|
6
|
+
import "./chunk-XE2PI5DS.js";
|
|
7
7
|
import "./chunk-NOO24N7W.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-FPE5LGVU.js";
|
|
9
|
+
import "./chunk-U6QPKCN3.js";
|
|
10
|
+
import "./chunk-WPXHCP4A.js";
|
|
10
11
|
|
|
11
12
|
// src/commands/te-audience/shared.ts
|
|
12
13
|
function createMcpCommand(config) {
|
|
@@ -60,13 +61,14 @@ function requiredJsonString(ctx, name) {
|
|
|
60
61
|
// src/commands/te-audience/cluster/list-clusters.ts
|
|
61
62
|
var listClusters = createMcpCommand({
|
|
62
63
|
command: "+list_clusters",
|
|
63
|
-
description: "List user cohort/segment cluster metadata with optional query
|
|
64
|
+
description: "List user cohort/segment cluster metadata with optional authenticated asset filtering, query, fields, limit, and offset. Query performs fuzzy matching on clusterName, displayName, and remarks. Default returned fields: id, clusterName, displayName, remarks, clusterType, progress, usersNum, authenticationStatus.",
|
|
64
65
|
flags: [
|
|
65
66
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
66
67
|
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to clusterName, displayName, and remarks.", alias: "q" },
|
|
67
|
-
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: id, clusterName, displayName, clusterType, progress, usersNum, refreshStatus, remarks. Default fields when omitted: id, clusterName, displayName, remarks, clusterType, progress, usersNum." },
|
|
68
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max
|
|
69
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" }
|
|
68
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: id, clusterName, displayName, clusterType, progress, usersNum, refreshStatus, remarks, authenticationStatus. Default fields when omitted: id, clusterName, displayName, remarks, clusterType, progress, usersNum, authenticationStatus." },
|
|
69
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max 50" },
|
|
70
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" },
|
|
71
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, return only authenticated clusters." }
|
|
70
72
|
],
|
|
71
73
|
risk: "read",
|
|
72
74
|
buildArgs: (ctx) => ({
|
|
@@ -74,7 +76,8 @@ var listClusters = createMcpCommand({
|
|
|
74
76
|
query: optionalString(ctx, "query"),
|
|
75
77
|
fields: optionalJson(ctx, "fields"),
|
|
76
78
|
limit: optionalNumber(ctx, "limit"),
|
|
77
|
-
offset: optionalNumber(ctx, "offset")
|
|
79
|
+
offset: optionalNumber(ctx, "offset"),
|
|
80
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
78
81
|
})
|
|
79
82
|
});
|
|
80
83
|
|
|
@@ -134,7 +137,8 @@ var buildClusterDefinition = createMcpCommand({
|
|
|
134
137
|
{ name: "conditions", type: "json", required: false, desc: 'For type=condition: main condition group JSON (required). Example: {"filts":[{"conditionType":"event","eventCondition":{...}}],"relation":"and"}' },
|
|
135
138
|
{ name: "include_filter", type: "json", required: false, desc: "For type=condition: global include condition group JSON (cluster-type conditions only)." },
|
|
136
139
|
{ name: "exclude_filter", type: "json", required: false, desc: "For type=condition: global exclude condition group JSON (cluster-type conditions only)." },
|
|
137
|
-
{ name: "sql", type: "string", required: false, desc: "For type=sql: SQL query returning a single column named #user_id." }
|
|
140
|
+
{ name: "sql", type: "string", required: false, desc: "For type=sql: SQL query returning a single column named #user_id." },
|
|
141
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the definition." }
|
|
138
142
|
],
|
|
139
143
|
risk: "read",
|
|
140
144
|
buildArgs: (ctx) => ({
|
|
@@ -145,7 +149,8 @@ var buildClusterDefinition = createMcpCommand({
|
|
|
145
149
|
includeFilter: optionalJson(ctx, "include_filter"),
|
|
146
150
|
excludeFilter: optionalJson(ctx, "exclude_filter"),
|
|
147
151
|
sql: optionalString(ctx, "sql")
|
|
148
|
-
}
|
|
152
|
+
},
|
|
153
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
149
154
|
})
|
|
150
155
|
});
|
|
151
156
|
|
|
@@ -298,13 +303,14 @@ var cluster_default = commands;
|
|
|
298
303
|
// src/commands/te-audience/tag/list-tags.ts
|
|
299
304
|
var listTags = createMcpCommand({
|
|
300
305
|
command: "+list_tags",
|
|
301
|
-
description: "List tag metadata with optional query
|
|
306
|
+
description: "List tag metadata with optional authenticated asset filtering, query, fields, limit, and offset. Query performs fuzzy matching on clusterName, displayName, and remarks. Default returned fields: id, clusterName, displayName, remarks, clusterType, subConditionTabType, progress, usersNum, authenticationStatus.",
|
|
302
307
|
flags: [
|
|
303
308
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
304
309
|
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to clusterName, displayName, and remarks.", alias: "q" },
|
|
305
|
-
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: id, clusterName, displayName, clusterType, subConditionTabType, progress, usersNum, remarks. Default fields when omitted: id, clusterName, displayName, remarks, clusterType, subConditionTabType, progress, usersNum." },
|
|
306
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max
|
|
307
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" }
|
|
310
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: id, clusterName, displayName, clusterType, subConditionTabType, progress, usersNum, remarks, authenticationStatus. Default fields when omitted: id, clusterName, displayName, remarks, clusterType, subConditionTabType, progress, usersNum, authenticationStatus." },
|
|
311
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max 50" },
|
|
312
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" },
|
|
313
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, return only authenticated tags." }
|
|
308
314
|
],
|
|
309
315
|
risk: "read",
|
|
310
316
|
buildArgs: (ctx) => ({
|
|
@@ -312,7 +318,8 @@ var listTags = createMcpCommand({
|
|
|
312
318
|
query: optionalString(ctx, "query"),
|
|
313
319
|
fields: optionalJson(ctx, "fields"),
|
|
314
320
|
limit: optionalNumber(ctx, "limit"),
|
|
315
|
-
offset: optionalNumber(ctx, "offset")
|
|
321
|
+
offset: optionalNumber(ctx, "offset"),
|
|
322
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
316
323
|
})
|
|
317
324
|
});
|
|
318
325
|
|
|
@@ -374,7 +381,8 @@ var buildTagDefinition = createMcpCommand({
|
|
|
374
381
|
{ name: "condition_values", type: "json", required: false, desc: "For type=condition: list of tag value definitions JSON array. Each item defines a segment label and its conditions." },
|
|
375
382
|
{ name: "metric", type: "json", required: false, desc: "For type=metric: metric definition JSON. Fields: eventName, analysis, quota (property name), recentDay/startTime/endTime." },
|
|
376
383
|
{ name: "first_last", type: "json", required: false, desc: "For type=first_last: first/last occurrence definition JSON. Fields: eventName, firstEvent (true=first occurrence, false=last occurrence), calcPropType, property, recentDay/startTime/endTime." },
|
|
377
|
-
{ name: "sql", type: "string", required: false, desc: "For type=sql: SQL query returning two columns: #user_id and the tag value." }
|
|
384
|
+
{ name: "sql", type: "string", required: false, desc: "For type=sql: SQL query returning two columns: #user_id and the tag value." },
|
|
385
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, resolve only authenticated assets while building the definition." }
|
|
378
386
|
],
|
|
379
387
|
risk: "read",
|
|
380
388
|
buildArgs: (ctx) => ({
|
|
@@ -385,7 +393,8 @@ var buildTagDefinition = createMcpCommand({
|
|
|
385
393
|
metric: optionalJson(ctx, "metric"),
|
|
386
394
|
firstLast: optionalJson(ctx, "first_last"),
|
|
387
395
|
sql: optionalString(ctx, "sql")
|
|
388
|
-
}
|
|
396
|
+
},
|
|
397
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
389
398
|
})
|
|
390
399
|
});
|
|
391
400
|
|
|
@@ -2,11 +2,12 @@ import {
|
|
|
2
2
|
callMcpTool,
|
|
3
3
|
parseMcpResult,
|
|
4
4
|
resolveMcpUrl
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-5FBLRSMU.js";
|
|
6
|
+
import "./chunk-XE2PI5DS.js";
|
|
7
7
|
import "./chunk-NOO24N7W.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-FPE5LGVU.js";
|
|
9
|
+
import "./chunk-U6QPKCN3.js";
|
|
10
|
+
import "./chunk-WPXHCP4A.js";
|
|
10
11
|
|
|
11
12
|
// src/commands/te-common/shared.ts
|
|
12
13
|
function createMcpCommand(config) {
|
|
@@ -3,11 +3,12 @@ import {
|
|
|
3
3
|
parseMcpResult,
|
|
4
4
|
registerMcpMappings,
|
|
5
5
|
resolveMcpUrl
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-5FBLRSMU.js";
|
|
7
|
+
import "./chunk-XE2PI5DS.js";
|
|
8
8
|
import "./chunk-NOO24N7W.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-FPE5LGVU.js";
|
|
10
|
+
import "./chunk-U6QPKCN3.js";
|
|
11
|
+
import "./chunk-WPXHCP4A.js";
|
|
11
12
|
|
|
12
13
|
// src/commands/te-community/get_channel_info.ts
|
|
13
14
|
var getChannelInfo = {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
printError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-YACCPUNQ.js";
|
|
4
4
|
import {
|
|
5
5
|
clearToken,
|
|
6
6
|
getToken,
|
|
7
7
|
resolveHost
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-U6QPKCN3.js";
|
|
9
9
|
import {
|
|
10
10
|
logger,
|
|
11
11
|
safeJsonParse
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-WPXHCP4A.js";
|
|
13
13
|
|
|
14
14
|
// src/commands/te-dataops/shared.ts
|
|
15
15
|
var TOOL_API_MAP = {
|
|
@@ -103,8 +103,7 @@ async function dataopsRequest(ctx, method, path2, params = {}, body, retry = tru
|
|
|
103
103
|
const url = buildUrl(host, path2, params);
|
|
104
104
|
const headers = {
|
|
105
105
|
Authorization: `bearer ${token}`,
|
|
106
|
-
"Content-Type": "application/json"
|
|
107
|
-
"X-Source": "ae-cli"
|
|
106
|
+
"Content-Type": "application/json"
|
|
108
107
|
};
|
|
109
108
|
const options = { method, headers };
|
|
110
109
|
if (method !== "GET") {
|
|
@@ -3,11 +3,12 @@ import {
|
|
|
3
3
|
parseMcpResult,
|
|
4
4
|
registerMcpMappings,
|
|
5
5
|
resolveMcpUrl
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-5FBLRSMU.js";
|
|
7
|
+
import "./chunk-XE2PI5DS.js";
|
|
8
8
|
import "./chunk-NOO24N7W.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-FPE5LGVU.js";
|
|
10
|
+
import "./chunk-U6QPKCN3.js";
|
|
11
|
+
import "./chunk-WPXHCP4A.js";
|
|
11
12
|
|
|
12
13
|
// src/commands/te-engage/utils.ts
|
|
13
14
|
function buildMcpDryRun(ctx, serviceName46, toolName46, args) {
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
kbApi,
|
|
3
3
|
kbUpload
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-DMMEPCST.js";
|
|
6
|
-
import "./chunk-PN3OS34E.js";
|
|
4
|
+
} from "./chunk-2W7HULUD.js";
|
|
7
5
|
import "./chunk-NOO24N7W.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-FPE5LGVU.js";
|
|
7
|
+
import "./chunk-U6QPKCN3.js";
|
|
8
|
+
import "./chunk-WPXHCP4A.js";
|
|
10
9
|
|
|
11
10
|
// src/commands/te-kb/query.ts
|
|
12
11
|
var API_PATH = "/agent/api/external/knowledge-bases/query";
|
|
@@ -2,11 +2,12 @@ import {
|
|
|
2
2
|
callMcpTool,
|
|
3
3
|
parseMcpResult,
|
|
4
4
|
resolveMcpUrl
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-5FBLRSMU.js";
|
|
6
|
+
import "./chunk-XE2PI5DS.js";
|
|
7
7
|
import "./chunk-NOO24N7W.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-FPE5LGVU.js";
|
|
9
|
+
import "./chunk-U6QPKCN3.js";
|
|
10
|
+
import "./chunk-WPXHCP4A.js";
|
|
10
11
|
|
|
11
12
|
// src/commands/te-meta/shared.ts
|
|
12
13
|
function createMcpCommand(config) {
|
|
@@ -60,13 +61,14 @@ function requiredJsonString(ctx, name) {
|
|
|
60
61
|
// src/commands/te-meta/meta/list-events.ts
|
|
61
62
|
var listEvents = createMcpCommand({
|
|
62
63
|
command: "+list_events",
|
|
63
|
-
description: "List events in the project. Use for explicit metadata inspection, not as a pre-step for event/retention/funnel/prop_analysis ad-hoc builders; the builders resolve event names internally. Query performs fuzzy matching on eventName, eventDesc, and remark. Supports fields/limit/offset payload governance. Default returned fields: eventId, eventName, eventDesc, remark.",
|
|
64
|
+
description: "List events in the project. Use for explicit metadata inspection, not as a pre-step for event/retention/funnel/prop_analysis ad-hoc builders; the builders resolve event names internally. Query performs fuzzy matching on eventName, eventDesc, and remark. Supports authenticated asset filtering plus fields/limit/offset payload governance. Default returned fields: eventId, eventName, eventDesc, remark, authenticationStatus.",
|
|
64
65
|
flags: [
|
|
65
66
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
66
67
|
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to eventName, eventDesc, and remark; if omitted, all events are returned.", alias: "q" },
|
|
67
|
-
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: eventId, eventName, eventDesc, remark, eventTag. Default fields when omitted: eventId, eventName, eventDesc, remark.", alias: "f" },
|
|
68
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum:
|
|
69
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" }
|
|
68
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: eventId, eventName, eventDesc, remark, eventTag, authenticationStatus. Default fields when omitted: eventId, eventName, eventDesc, remark, authenticationStatus.", alias: "f" },
|
|
69
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum: 50.", alias: "l" },
|
|
70
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" },
|
|
71
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, return only authenticated events." }
|
|
70
72
|
],
|
|
71
73
|
risk: "read",
|
|
72
74
|
buildArgs: (ctx) => ({
|
|
@@ -74,22 +76,24 @@ var listEvents = createMcpCommand({
|
|
|
74
76
|
query: optionalString(ctx, "query"),
|
|
75
77
|
fields: optionalJson(ctx, "fields"),
|
|
76
78
|
limit: optionalNumber(ctx, "limit"),
|
|
77
|
-
offset: optionalNumber(ctx, "offset")
|
|
79
|
+
offset: optionalNumber(ctx, "offset"),
|
|
80
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
78
81
|
})
|
|
79
82
|
});
|
|
80
83
|
|
|
81
84
|
// src/commands/te-meta/meta/list-properties.ts
|
|
82
85
|
var listProperties = createMcpCommand({
|
|
83
86
|
command: "+list_properties",
|
|
84
|
-
description: "List properties in the project. Use for explicit metadata inspection, not as a pre-step for event/retention/funnel/prop_analysis ad-hoc builders; the builders resolve property names internally. Query performs fuzzy matching on propName, propDesc, and remark. Supports fields/limit/offset payload governance. Default returned fields: propId, propName, propDesc, remark, selectType, tableType.",
|
|
87
|
+
description: "List properties in the project. Use for explicit metadata inspection, not as a pre-step for event/retention/funnel/prop_analysis ad-hoc builders; the builders resolve property names internally. Query performs fuzzy matching on propName, propDesc, and remark. Supports authenticated asset filtering plus fields/limit/offset payload governance. Default returned fields: propId, propName, propDesc, remark, selectType, tableType, authenticationStatus.",
|
|
85
88
|
flags: [
|
|
86
89
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
87
90
|
{ name: "scope", type: "string", required: false, desc: "Property scope: event or user" },
|
|
88
91
|
{ name: "event_name", type: "string", required: false, desc: "Optional event name filter" },
|
|
89
92
|
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to propName, propDesc, and remark; if omitted, all accessible properties are returned.", alias: "q" },
|
|
90
|
-
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: propId, propName, propDesc, remark, selectType, tableType, subTableType. Default fields when omitted: propId, propName, propDesc, remark, selectType, tableType.", alias: "f" },
|
|
91
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum:
|
|
92
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" }
|
|
93
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: propId, propName, propDesc, remark, selectType, tableType, subTableType, authenticationStatus. Default fields when omitted: propId, propName, propDesc, remark, selectType, tableType, authenticationStatus.", alias: "f" },
|
|
94
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum: 50.", alias: "l" },
|
|
95
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" },
|
|
96
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, return only authenticated properties." }
|
|
93
97
|
],
|
|
94
98
|
risk: "read",
|
|
95
99
|
buildArgs: (ctx) => ({
|
|
@@ -99,7 +103,8 @@ var listProperties = createMcpCommand({
|
|
|
99
103
|
query: optionalString(ctx, "query"),
|
|
100
104
|
fields: optionalJson(ctx, "fields"),
|
|
101
105
|
limit: optionalNumber(ctx, "limit"),
|
|
102
|
-
offset: optionalNumber(ctx, "offset")
|
|
106
|
+
offset: optionalNumber(ctx, "offset"),
|
|
107
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
103
108
|
})
|
|
104
109
|
});
|
|
105
110
|
|
|
@@ -200,13 +205,14 @@ var createVirtualProperty = createMcpCommand({
|
|
|
200
205
|
// src/commands/te-meta/meta/list-metrics.ts
|
|
201
206
|
var listMetrics = createMcpCommand({
|
|
202
207
|
command: "+list_metrics",
|
|
203
|
-
description: "List metric metadata in the project. Use for metric metadata inspection/management, not as a pre-step for event/retention/funnel/prop_analysis ad-hoc builders. For event saved metric queries, pass the metric name directly to +build_event_analysis_qp in metrics[].event. Query performs fuzzy matching on metricName, metricDesc, and metricRemark. Supports fields/limit/offset pagination. Default returned fields: metricId, metricName, metricDesc, metricRemark, metricMode.",
|
|
208
|
+
description: "List metric metadata in the project. Use for metric metadata inspection/management, not as a pre-step for event/retention/funnel/prop_analysis ad-hoc builders. For event saved metric queries, pass the metric name directly to +build_event_analysis_qp in metrics[].event. Query performs fuzzy matching on metricName, metricDesc, and metricRemark. Supports authenticated asset filtering plus fields/limit/offset pagination. Default returned fields: metricId, metricName, metricDesc, metricRemark, metricMode, authenticationStatus.",
|
|
204
209
|
flags: [
|
|
205
210
|
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
206
211
|
{ name: "query", type: "string", required: false, alias: "q", desc: "Optional keyword filter. Fuzzy match on metricName, metricDesc, metricRemark." },
|
|
207
|
-
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported: metricId, metricName, metricDesc, metricRemark, metricMode, openId, creator, creatorLoginName, updateOpenId, updateCreator, updateLoginName, createTime, updateTime. Default fields when omitted: metricId, metricName, metricDesc, metricRemark, metricMode." },
|
|
208
|
-
{ name: "limit", type: "number", required: false, desc: "Optional limit. Default: 20, maximum:
|
|
209
|
-
{ name: "offset", type: "number", required: false, desc: "Optional offset. Default: 0." }
|
|
212
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported: metricId, metricName, metricDesc, metricRemark, metricMode, authenticationStatus, openId, creator, creatorLoginName, updateOpenId, updateCreator, updateLoginName, createTime, updateTime. Default fields when omitted: metricId, metricName, metricDesc, metricRemark, metricMode, authenticationStatus." },
|
|
213
|
+
{ name: "limit", type: "number", required: false, desc: "Optional limit. Default: 20, maximum: 50." },
|
|
214
|
+
{ name: "offset", type: "number", required: false, desc: "Optional offset. Default: 0." },
|
|
215
|
+
{ name: "authenticated_only", type: "boolean", required: false, desc: "When true, return only authenticated metrics." }
|
|
210
216
|
],
|
|
211
217
|
risk: "read",
|
|
212
218
|
mcpService: "te_analysis_extend",
|
|
@@ -215,7 +221,8 @@ var listMetrics = createMcpCommand({
|
|
|
215
221
|
query: optionalString(ctx, "query"),
|
|
216
222
|
fields: optionalJson(ctx, "fields"),
|
|
217
223
|
limit: optionalNumber(ctx, "limit"),
|
|
218
|
-
offset: optionalNumber(ctx, "offset")
|
|
224
|
+
offset: optionalNumber(ctx, "offset"),
|
|
225
|
+
authenticatedOnly: optionalBoolean(ctx, "authenticated_only")
|
|
219
226
|
})
|
|
220
227
|
});
|
|
221
228
|
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAuthHeaders,
|
|
3
3
|
kbApi
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2W7HULUD.js";
|
|
5
5
|
import {
|
|
6
6
|
printError,
|
|
7
7
|
printOutput
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-DMMEPCST.js";
|
|
10
|
-
import "./chunk-PN3OS34E.js";
|
|
8
|
+
} from "./chunk-YACCPUNQ.js";
|
|
11
9
|
import "./chunk-NOO24N7W.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-FPE5LGVU.js";
|
|
11
|
+
import "./chunk-U6QPKCN3.js";
|
|
12
|
+
import "./chunk-WPXHCP4A.js";
|
|
14
13
|
|
|
15
14
|
// src/commands/te-team/shared.ts
|
|
16
15
|
var API_PREFIX = process.env.AE_API_PREFIX ?? "/agent";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thinkingai/ae-cli",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.22",
|
|
4
4
|
"description": "CLI tool for ThinkingAI (AE) analytics platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -22,13 +22,14 @@
|
|
|
22
22
|
"verify:analysis-tools": "tsx scripts/verify-te-analysis-tools.mjs",
|
|
23
23
|
"verify:analysis-cluster-routing": "node scripts/verify-analysis-cluster-routing.mjs",
|
|
24
24
|
"verify:multi-cluster-mode": "node test/multi-cluster-mode.test.mjs",
|
|
25
|
+
"verify:metadata-capability": "node test/metadata-capability-commands.test.mjs",
|
|
25
26
|
"verify:analysis-builder-dry-run": "node scripts/verify-te-analysis-builder-dry-run.mjs",
|
|
26
27
|
"verify:analysis-audience-tools": "node scripts/verify-te-audience-tools.mjs",
|
|
27
28
|
"verify:analysis-meta-tools": "node scripts/verify-te-meta-tools.mjs",
|
|
28
29
|
"verify:analysis-common-tools": "node scripts/verify-te-common-tools.mjs",
|
|
29
30
|
"verify:team-tools": "node scripts/verify-te-team-tools.mjs",
|
|
30
31
|
"verify:agent-tools": "node scripts/verify-agent-tools.mjs",
|
|
31
|
-
"verify:tracking-tools": "node test/tracking-client.test.mjs && node test/tracking-commands.test.mjs",
|
|
32
|
+
"verify:tracking-tools": "node test/tracking-client.test.mjs && node test/tracking-skill-flow.test.mjs && node test/tracking-commands.test.mjs",
|
|
32
33
|
"verify:self-check-overlay": "node test/self-check-overlay.test.mjs",
|
|
33
34
|
"verify:update-check": "npx tsx test/update-check.test.mjs",
|
|
34
35
|
"self-check": "node self-check/scan.mjs",
|
|
@@ -41,10 +41,10 @@ Use `ae-analysis` for all AE analysis-side work below:
|
|
|
41
41
|
|
|
42
42
|
- Domain `analysis`: alerts, reports/dashboards, ad-hoc model analysis, drilldown, entity/event details, schema helpers.
|
|
43
43
|
- Domain `analysis_audience`: clusters/tags and definition schemas.
|
|
44
|
-
- Domain `analysis_meta`: metadata governance, metrics, virtual metadata, project config, tracking plans, mark times, entity catalog.
|
|
44
|
+
- Domain `analysis_meta`: metadata governance, metrics, virtual metadata, project config, tracking plans, mark times, entity catalog (MCP). For **single** super-event / super-property **detail** on the capability gateway, switch to **`ae-metadata`** skill (`metadata event get`, `metadata property get`).
|
|
45
45
|
- Domain `analysis_common`: project listing and post-write resource links.
|
|
46
46
|
|
|
47
|
-
If user intent is Engage/DataOps/Community, switch to `ae-engage` / `ae-dataops` / `ae-community
|
|
47
|
+
If user intent is Engage/DataOps/Community/metadata gateway detail, switch to `ae-engage` / `ae-dataops` / `ae-community` / **`ae-metadata`**.
|
|
48
48
|
|
|
49
49
|
## Command Format
|
|
50
50
|
|
|
@@ -168,6 +168,13 @@ Builder-supported model routing is:
|
|
|
168
168
|
|
|
169
169
|
Do not insert metadata/schema calls between steps 2 and 3 for builder-supported models. Specifically, do not call `get_analysis_query_schema`, `list_events`, `list_properties`, `list_metrics`, `get_metric`, or `get_report_definition` to prepare the builder payload. The builder resolves event/property/metric metadata internally and returns `need_clarification` when it cannot.
|
|
170
170
|
|
|
171
|
+
Authenticated asset scope:
|
|
172
|
+
|
|
173
|
+
- Use `--authenticated_only true` on metadata list commands (`+list_events`, `+list_properties`, `+list_metrics`, `+list_clusters`, `+list_tags`) when the user explicitly asks to see only authenticated assets.
|
|
174
|
+
- Use `--authenticated_only true` on QP builders and cluster/tag definition builders when the generated QP/definition should resolve only authenticated assets.
|
|
175
|
+
- Do not pass `authenticated_only` or `authenticatedOnly` to `+query_adhoc`; the filter takes effect during metadata resolution and QP/definition construction, not query execution.
|
|
176
|
+
- List responses include `authenticationStatus` by default (`1` authenticated, `0` unauthenticated).
|
|
177
|
+
|
|
171
178
|
Event metric shortcut:
|
|
172
179
|
|
|
173
180
|
- If the user asks to query a saved/business metric through event analysis, pass the metric name/display name/remark directly as an event metric target: `--metrics '[{"event":"<metric name>"}]'`.
|
|
@@ -26,6 +26,7 @@ ae-cli analysis +build_attribution_analysis_qp --project_id <project_id> --time_
|
|
|
26
26
|
| Parameter | Required | Description |
|
|
27
27
|
|---|---|---|
|
|
28
28
|
| `--project_id` / `-p` | Yes | Project ID |
|
|
29
|
+
| `--authenticated_only` | No | Resolve only authenticated assets while building the QP. Do not pass this flag to `+query_adhoc`. |
|
|
29
30
|
| `--time_range` | Yes | Time range JSON |
|
|
30
31
|
| `--attribution` | Yes | Attribution intent JSON |
|
|
31
32
|
|
|
@@ -53,6 +54,7 @@ ae-cli analysis +build_attribution_analysis_qp --project_id 3137 --time_range '{
|
|
|
53
54
|
```
|
|
54
55
|
|
|
55
56
|
## Decision Rules
|
|
57
|
+
- Use `--authenticated_only true` only when the user explicitly wants authenticated assets; do not add this flag to `+query_adhoc`.
|
|
56
58
|
- After successful build (`status=generated`), call `+query_adhoc --model_type attribution --qp '<response.qp>'`.
|
|
57
59
|
- If non-generated status, stop and ask user to clarify.
|
|
58
60
|
|