@thinkingai/ae-cli 6.0.18 → 6.0.20
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 +7 -6
- package/README.zh.md +8 -7
- package/dist/index.js +11 -6
- package/dist/{te-agent-KZRIEN4N.js → te-agent-CYZUC4US.js} +543 -19
- package/dist/{te-analysis-VAR4KUOK.js → te-analysis-HJ22TUAA.js} +318 -40
- package/dist/te-audience-MYDE5WEH.js +590 -0
- package/dist/te-dataops-ZTS7XMXM.js +1842 -0
- package/dist/{te-kb-B62KFP2A.js → te-kb-OWM3RQRH.js} +46 -21
- package/dist/{te-meta-EPZGQN56.js → te-meta-JVO4QJBH.js} +28 -11
- package/package.json +1 -1
- package/skills/ae-agent/SKILL.md +103 -4
- package/skills/ae-analysis/SKILL.md +66 -19
- package/skills/ae-analysis/references/build_attribution_analysis_qp.md +60 -0
- package/skills/ae-analysis/references/build_cluster_definition.md +60 -0
- package/skills/ae-analysis/references/build_distribution_analysis_qp.md +65 -0
- package/skills/ae-analysis/references/build_heat_map_analysis_qp.md +52 -0
- package/skills/ae-analysis/references/build_interval_analysis_qp.md +58 -0
- package/skills/ae-analysis/references/build_path_analysis_qp.md +51 -0
- package/skills/ae-analysis/references/build_rank_list_analysis_qp.md +61 -0
- package/skills/ae-analysis/references/build_tag_definition.md +63 -0
- package/skills/ae-analysis/references/cancel_query.md +2 -3
- package/skills/ae-analysis/references/copy_dashboard.md +33 -0
- package/skills/ae-analysis/references/create_id_cluster.md +40 -0
- package/skills/ae-analysis/references/create_id_tag.md +39 -0
- package/skills/ae-analysis/references/delete_alert.md +27 -0
- package/skills/ae-analysis/references/delete_cluster.md +27 -0
- package/skills/ae-analysis/references/delete_dashboard.md +30 -0
- package/skills/ae-analysis/references/delete_metric.md +27 -0
- package/skills/ae-analysis/references/delete_report.md +27 -0
- package/skills/ae-analysis/references/delete_tag.md +27 -0
- package/skills/ae-analysis/references/drilldown_user_events.md +4 -4
- package/skills/ae-analysis/references/drilldown_users.md +3 -3
- package/skills/ae-analysis/references/freeze_dashboards.md +29 -0
- package/skills/ae-analysis/references/get_table_columns.md +11 -12
- package/skills/ae-analysis/references/list_cluster_members.md +4 -4
- package/skills/ae-analysis/references/list_clusters.md +3 -3
- package/skills/ae-analysis/references/list_dashboards.md +3 -3
- package/skills/ae-analysis/references/list_entities.md +1 -1
- package/skills/ae-analysis/references/list_events.md +3 -3
- package/skills/ae-analysis/references/list_metrics.md +2 -2
- package/skills/ae-analysis/references/list_properties.md +3 -3
- package/skills/ae-analysis/references/list_reports.md +3 -3
- package/skills/ae-analysis/references/list_spaces.md +27 -0
- package/skills/ae-analysis/references/list_tag_members.md +4 -4
- package/skills/ae-analysis/references/list_tags.md +2 -2
- package/skills/ae-analysis/references/move_dashboard.md +33 -0
- package/skills/ae-analysis/references/query_adhoc.md +2 -2
- package/skills/ae-analysis/references/query_bi_panel_data.md +2 -2
- package/skills/ae-analysis/references/query_dashboard_report_data.md +4 -4
- package/skills/ae-analysis/references/query_entity_details.md +4 -4
- package/skills/ae-analysis/references/query_event_details.md +3 -3
- package/skills/ae-analysis/references/query_report_data.md +37 -3
- package/skills/ae-analysis/references/update_id_cluster.md +36 -0
- package/skills/ae-analysis/references/update_id_tag.md +37 -0
- package/skills/ae-analysis/references/update_report.md +35 -0
- package/skills/ae-analysis-intent/SKILL.md +1 -1
- package/skills/ae-dataops/SKILL.md +54 -522
- package/skills/ae-dataops/references/dataops-flow-create.md +78 -75
- package/skills/ae-dataops/references/dataops-flow-monitor.md +58 -51
- package/skills/ae-dataops/references/dataops-integration.md +80 -41
- package/skills/ae-dataops/references/dataops-query.md +54 -53
- package/skills/ae-dataops/references/dataops-table.md +28 -59
- package/dist/te-audience-KMKYI2YJ.js +0 -400
- package/dist/te-dataops-GD3XBYCS.js +0 -1830
|
@@ -1,400 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
callMcpTool,
|
|
3
|
-
parseMcpResult,
|
|
4
|
-
resolveMcpUrl
|
|
5
|
-
} from "./chunk-DMMEPCST.js";
|
|
6
|
-
import "./chunk-PN3OS34E.js";
|
|
7
|
-
import "./chunk-NOO24N7W.js";
|
|
8
|
-
import "./chunk-RSHMZ3LG.js";
|
|
9
|
-
import "./chunk-6W4QOZAL.js";
|
|
10
|
-
|
|
11
|
-
// src/commands/te-audience/shared.ts
|
|
12
|
-
function createMcpCommand(config) {
|
|
13
|
-
const toolName = config.command.slice(1);
|
|
14
|
-
const mcpService = config.mcpService || "analysis";
|
|
15
|
-
return {
|
|
16
|
-
service: "analysis_audience",
|
|
17
|
-
command: config.command,
|
|
18
|
-
description: config.description,
|
|
19
|
-
flags: config.flags,
|
|
20
|
-
risk: config.risk,
|
|
21
|
-
dryRun: (ctx) => ({
|
|
22
|
-
method: "tools/call",
|
|
23
|
-
url: resolveMcpUrl(ctx.mcpUrl(), ctx.host(), mcpService),
|
|
24
|
-
body: {
|
|
25
|
-
name: toolName,
|
|
26
|
-
arguments: config.buildArgs(ctx)
|
|
27
|
-
}
|
|
28
|
-
}),
|
|
29
|
-
execute: async (ctx) => {
|
|
30
|
-
const url = resolveMcpUrl(ctx.mcpUrl(), ctx.host(), mcpService);
|
|
31
|
-
const result = await callMcpTool(url, toolName, config.buildArgs(ctx), ctx.host());
|
|
32
|
-
return parseMcpResult(result);
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
function optionalString(ctx, name) {
|
|
37
|
-
const value = ctx.str(name);
|
|
38
|
-
return value === "" ? void 0 : value;
|
|
39
|
-
}
|
|
40
|
-
function optionalNumber(ctx, name) {
|
|
41
|
-
const value = ctx.str(name);
|
|
42
|
-
return value === "" ? void 0 : Number(value);
|
|
43
|
-
}
|
|
44
|
-
function optionalBoolean(ctx, name) {
|
|
45
|
-
const value = ctx.str(name);
|
|
46
|
-
return value === "" ? void 0 : ctx.bool(name);
|
|
47
|
-
}
|
|
48
|
-
function optionalJson(ctx, name) {
|
|
49
|
-
const value = ctx.str(name);
|
|
50
|
-
return value === "" ? void 0 : ctx.json(name);
|
|
51
|
-
}
|
|
52
|
-
function optionalJsonString(ctx, name) {
|
|
53
|
-
const value = optionalJson(ctx, name);
|
|
54
|
-
return value === void 0 ? void 0 : JSON.stringify(value);
|
|
55
|
-
}
|
|
56
|
-
function requiredJsonString(ctx, name) {
|
|
57
|
-
return JSON.stringify(ctx.json(name));
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
// src/commands/te-audience/cluster/list-clusters.ts
|
|
61
|
-
var listClusters = createMcpCommand({
|
|
62
|
-
command: "+list_clusters",
|
|
63
|
-
description: "List user cohort/segment cluster metadata with optional query/fields/limit/offset.",
|
|
64
|
-
flags: [
|
|
65
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
66
|
-
{ name: "query", type: "string", required: false, desc: "Keyword filter", alias: "q" },
|
|
67
|
-
{ name: "fields", type: "json", required: false, desc: "Optional return field list JSON array" },
|
|
68
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max 10000" },
|
|
69
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" }
|
|
70
|
-
],
|
|
71
|
-
risk: "read",
|
|
72
|
-
buildArgs: (ctx) => ({
|
|
73
|
-
projectId: ctx.num("project_id"),
|
|
74
|
-
query: optionalString(ctx, "query"),
|
|
75
|
-
fields: optionalJson(ctx, "fields"),
|
|
76
|
-
limit: optionalNumber(ctx, "limit"),
|
|
77
|
-
offset: optionalNumber(ctx, "offset")
|
|
78
|
-
})
|
|
79
|
-
});
|
|
80
|
-
|
|
81
|
-
// src/commands/te-audience/cluster/get-clusters-by-name.ts
|
|
82
|
-
var getClustersByName = createMcpCommand({
|
|
83
|
-
command: "+get_clusters_by_name",
|
|
84
|
-
description: "Get cluster definition details in batch by cluster names",
|
|
85
|
-
flags: [
|
|
86
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
87
|
-
{ name: "names", type: "json", required: true, desc: 'Cluster name list JSON array, e.g. ["cluster_a","cluster_b"]' }
|
|
88
|
-
],
|
|
89
|
-
risk: "read",
|
|
90
|
-
buildArgs: (ctx) => ({
|
|
91
|
-
projectId: ctx.num("project_id"),
|
|
92
|
-
names: ctx.json("names")
|
|
93
|
-
})
|
|
94
|
-
});
|
|
95
|
-
|
|
96
|
-
// src/commands/te-audience/cluster/list-cluster-members.ts
|
|
97
|
-
var listClusterMembers = createMcpCommand({
|
|
98
|
-
command: "+list_cluster_members",
|
|
99
|
-
description: "List members in the specified cluster with optional query/fields/limit/offset. For long-running or cancelable queries, provide requestId before starting. For any query that may exceed the CLI or MCP HTTP timeout, preset requestId 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. If provided, 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. The auto-generated requestId is not available when the HTTP request fails before a response, so preset requestId is required for proactive cleanup.",
|
|
100
|
-
flags: [
|
|
101
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
102
|
-
{ name: "cluster_name", type: "string", required: true, desc: "Cluster name" },
|
|
103
|
-
{ name: "property_names", type: "json", required: false, desc: "Optional user property name list JSON array" },
|
|
104
|
-
{ name: "use_cache", type: "boolean", required: false, desc: "Whether to use cache, default true" },
|
|
105
|
-
{ name: "query", type: "string", required: false, desc: "Optional keyword filter on #user_id and selected properties" },
|
|
106
|
-
{ name: "fields", type: "json", required: false, desc: "Optional return field list JSON array" },
|
|
107
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max 10000" },
|
|
108
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" },
|
|
109
|
-
{ name: "request_id", type: "string", required: false, desc: "Optional unique request ID used for tracking and cancellation. If provided, it must use mcp_<32 lowercase hex UUID>, for example mcp_0123456789abcdef0123456789abcdef. For long-running or cancelable queries, 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. The auto-generated requestId is not available when the HTTP request fails before a response, so preset requestId is required for proactive cleanup. Generated automatically if omitted. The response metadata.requestId can also be passed to cancel_query when the query is no longer needed." },
|
|
110
|
-
{ name: "timeout_minutes", type: "number", required: false, desc: "Query timeout in minutes. If omitted, 30 minutes is used." }
|
|
111
|
-
],
|
|
112
|
-
risk: "read",
|
|
113
|
-
buildArgs: (ctx) => ({
|
|
114
|
-
projectId: ctx.num("project_id"),
|
|
115
|
-
clusterName: ctx.str("cluster_name"),
|
|
116
|
-
propertyNames: optionalJson(ctx, "property_names"),
|
|
117
|
-
useCache: optionalBoolean(ctx, "use_cache"),
|
|
118
|
-
query: optionalString(ctx, "query"),
|
|
119
|
-
fields: optionalJson(ctx, "fields"),
|
|
120
|
-
limit: optionalNumber(ctx, "limit"),
|
|
121
|
-
offset: optionalNumber(ctx, "offset"),
|
|
122
|
-
requestId: optionalString(ctx, "request_id"),
|
|
123
|
-
timeoutMinutes: optionalNumber(ctx, "timeout_minutes")
|
|
124
|
-
})
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
// src/commands/te-audience/cluster/create-cluster.ts
|
|
128
|
-
var createCluster = createMcpCommand({
|
|
129
|
-
command: "+create_cluster",
|
|
130
|
-
description: "Create a user cluster definition",
|
|
131
|
-
flags: [
|
|
132
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
133
|
-
{ name: "cluster_name", type: "string", required: true, desc: "Cluster name. Must start with a letter and contain only letters, digits, and underscores. Length: 1-80" },
|
|
134
|
-
{ name: "display_name", type: "string", required: true, desc: "Cluster display name. Length: 1-80" },
|
|
135
|
-
{ name: "type", type: "string", required: false, desc: "Cluster type: condition/sql. Default: condition" },
|
|
136
|
-
{ name: "definition", type: "json", required: true, desc: "Cluster definition JSON. See +get_cluster_definition_schema" },
|
|
137
|
-
{ name: "zone_offset", type: "number", required: false, desc: "Optional time zone offset, valid range: -12 to 14" },
|
|
138
|
-
{ name: "entity_id", type: "number", required: false, desc: "Optional entity ID. Use analysis_meta +list_entities to query" }
|
|
139
|
-
],
|
|
140
|
-
risk: "write",
|
|
141
|
-
buildArgs: (ctx) => ({
|
|
142
|
-
projectId: ctx.num("project_id"),
|
|
143
|
-
clusterName: ctx.str("cluster_name"),
|
|
144
|
-
displayName: ctx.str("display_name"),
|
|
145
|
-
type: optionalString(ctx, "type"),
|
|
146
|
-
definition: requiredJsonString(ctx, "definition"),
|
|
147
|
-
zoneOffset: optionalNumber(ctx, "zone_offset"),
|
|
148
|
-
entityId: optionalNumber(ctx, "entity_id")
|
|
149
|
-
})
|
|
150
|
-
});
|
|
151
|
-
|
|
152
|
-
// src/commands/te-audience/cluster/update-cluster.ts
|
|
153
|
-
var updateCluster = createMcpCommand({
|
|
154
|
-
command: "+update_cluster",
|
|
155
|
-
description: "Update a user cluster definition",
|
|
156
|
-
flags: [
|
|
157
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
158
|
-
{ name: "cluster_name", type: "string", required: true, desc: "Cluster name" },
|
|
159
|
-
{ name: "display_name", type: "string", required: false, desc: "New cluster display name. Length: 1-80" },
|
|
160
|
-
{ name: "remark", type: "string", required: false, desc: "New cluster remark" },
|
|
161
|
-
{ name: "type", type: "string", required: false, desc: "New cluster type: condition/sql. Recommended when updating definition" },
|
|
162
|
-
{ name: "definition", type: "json", required: false, desc: "New cluster definition JSON. See +get_cluster_definition_schema" },
|
|
163
|
-
{ name: "zone_offset", type: "number", required: false, desc: "Optional time zone offset, valid range: -12 to 14" }
|
|
164
|
-
],
|
|
165
|
-
risk: "write",
|
|
166
|
-
buildArgs: (ctx) => ({
|
|
167
|
-
projectId: ctx.num("project_id"),
|
|
168
|
-
clusterName: ctx.str("cluster_name"),
|
|
169
|
-
displayName: optionalString(ctx, "display_name"),
|
|
170
|
-
remark: optionalString(ctx, "remark"),
|
|
171
|
-
type: optionalString(ctx, "type"),
|
|
172
|
-
definition: optionalJsonString(ctx, "definition"),
|
|
173
|
-
zoneOffset: optionalNumber(ctx, "zone_offset")
|
|
174
|
-
})
|
|
175
|
-
});
|
|
176
|
-
|
|
177
|
-
// src/commands/te-audience/cluster/refresh-cluster.ts
|
|
178
|
-
var refreshCluster = createMcpCommand({
|
|
179
|
-
command: "+refresh_cluster",
|
|
180
|
-
description: "Trigger cluster recomputation asynchronously",
|
|
181
|
-
flags: [
|
|
182
|
-
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
183
|
-
{ name: "cluster_name", type: "string", required: true, desc: "Cluster name" }
|
|
184
|
-
],
|
|
185
|
-
risk: "write",
|
|
186
|
-
mcpService: "te_analysis_extend",
|
|
187
|
-
buildArgs: (ctx) => ({
|
|
188
|
-
projectId: ctx.num("project_id"),
|
|
189
|
-
clusterName: ctx.str("cluster_name")
|
|
190
|
-
})
|
|
191
|
-
});
|
|
192
|
-
|
|
193
|
-
// src/commands/te-audience/cluster/index.ts
|
|
194
|
-
var commands = [
|
|
195
|
-
listClusters,
|
|
196
|
-
getClustersByName,
|
|
197
|
-
listClusterMembers,
|
|
198
|
-
createCluster,
|
|
199
|
-
updateCluster,
|
|
200
|
-
refreshCluster
|
|
201
|
-
];
|
|
202
|
-
var cluster_default = commands;
|
|
203
|
-
|
|
204
|
-
// src/commands/te-audience/tag/list-tags.ts
|
|
205
|
-
var listTags = createMcpCommand({
|
|
206
|
-
command: "+list_tags",
|
|
207
|
-
description: "List tag metadata with optional query/fields/limit/offset",
|
|
208
|
-
flags: [
|
|
209
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
210
|
-
{ name: "query", type: "string", required: false, desc: "Keyword filter", alias: "q" },
|
|
211
|
-
{ name: "fields", type: "json", required: false, desc: "Optional return field list JSON array" },
|
|
212
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max 10000" },
|
|
213
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" }
|
|
214
|
-
],
|
|
215
|
-
risk: "read",
|
|
216
|
-
buildArgs: (ctx) => ({
|
|
217
|
-
projectId: ctx.num("project_id"),
|
|
218
|
-
query: optionalString(ctx, "query"),
|
|
219
|
-
fields: optionalJson(ctx, "fields"),
|
|
220
|
-
limit: optionalNumber(ctx, "limit"),
|
|
221
|
-
offset: optionalNumber(ctx, "offset")
|
|
222
|
-
})
|
|
223
|
-
});
|
|
224
|
-
|
|
225
|
-
// src/commands/te-audience/tag/get-tags-by-name.ts
|
|
226
|
-
var getTagsByName = createMcpCommand({
|
|
227
|
-
command: "+get_tags_by_name",
|
|
228
|
-
description: "Get tag definition details in batch by tag names",
|
|
229
|
-
flags: [
|
|
230
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
231
|
-
{ name: "names", type: "json", required: true, desc: 'Tag name list JSON array, e.g. ["tag_a","tag_b"]' }
|
|
232
|
-
],
|
|
233
|
-
risk: "read",
|
|
234
|
-
buildArgs: (ctx) => ({
|
|
235
|
-
projectId: ctx.num("project_id"),
|
|
236
|
-
names: ctx.json("names")
|
|
237
|
-
})
|
|
238
|
-
});
|
|
239
|
-
|
|
240
|
-
// src/commands/te-audience/tag/list-tag-members.ts
|
|
241
|
-
var listTagMembers = createMcpCommand({
|
|
242
|
-
command: "+list_tag_members",
|
|
243
|
-
description: "List members in the specified tag with optional query/fields/limit/offset. For long-running or cancelable queries, provide requestId before starting. For any query that may exceed the CLI or MCP HTTP timeout, preset requestId 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. If provided, 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. The auto-generated requestId is not available when the HTTP request fails before a response, so preset requestId is required for proactive cleanup.",
|
|
244
|
-
flags: [
|
|
245
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
246
|
-
{ name: "tag_name", type: "string", required: true, desc: "Tag name" },
|
|
247
|
-
{ name: "snapshot_date", type: "string", required: false, desc: "Optional tag snapshot date, format YYYY-MM-DD" },
|
|
248
|
-
{ name: "property_names", type: "json", required: false, desc: "Optional user property name list JSON array" },
|
|
249
|
-
{ name: "use_cache", type: "boolean", required: false, desc: "Whether to use cache, default true" },
|
|
250
|
-
{ name: "query", type: "string", required: false, desc: "Optional keyword filter on #user_id and selected properties" },
|
|
251
|
-
{ name: "fields", type: "json", required: false, desc: "Optional return field list JSON array" },
|
|
252
|
-
{ name: "limit", type: "number", required: false, desc: "Optional page size, default 20, max 10000" },
|
|
253
|
-
{ name: "offset", type: "number", required: false, desc: "Optional page offset, default 0" },
|
|
254
|
-
{ name: "request_id", type: "string", required: false, desc: "Optional unique request ID used for tracking and cancellation. If provided, it must use mcp_<32 lowercase hex UUID>, for example mcp_0123456789abcdef0123456789abcdef. For long-running or cancelable queries, 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. The auto-generated requestId is not available when the HTTP request fails before a response, so preset requestId is required for proactive cleanup. Generated automatically if omitted. The response metadata.requestId can also be passed to cancel_query when the query is no longer needed." },
|
|
255
|
-
{ name: "timeout_minutes", type: "number", required: false, desc: "Query timeout in minutes. If omitted, 30 minutes is used." }
|
|
256
|
-
],
|
|
257
|
-
risk: "read",
|
|
258
|
-
buildArgs: (ctx) => ({
|
|
259
|
-
projectId: ctx.num("project_id"),
|
|
260
|
-
tagName: ctx.str("tag_name"),
|
|
261
|
-
snapshotDate: optionalString(ctx, "snapshot_date"),
|
|
262
|
-
propertyNames: optionalJson(ctx, "property_names"),
|
|
263
|
-
useCache: optionalBoolean(ctx, "use_cache"),
|
|
264
|
-
query: optionalString(ctx, "query"),
|
|
265
|
-
fields: optionalJson(ctx, "fields"),
|
|
266
|
-
limit: optionalNumber(ctx, "limit"),
|
|
267
|
-
offset: optionalNumber(ctx, "offset"),
|
|
268
|
-
requestId: optionalString(ctx, "request_id"),
|
|
269
|
-
timeoutMinutes: optionalNumber(ctx, "timeout_minutes")
|
|
270
|
-
})
|
|
271
|
-
});
|
|
272
|
-
|
|
273
|
-
// src/commands/te-audience/tag/create-tag.ts
|
|
274
|
-
var createTag = createMcpCommand({
|
|
275
|
-
command: "+create_tag",
|
|
276
|
-
description: "Create a user tag definition",
|
|
277
|
-
flags: [
|
|
278
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
279
|
-
{ name: "tag_name", type: "string", required: true, desc: "Tag name. Must start with a letter and contain only letters, digits, and underscores. Length: 1-80" },
|
|
280
|
-
{ name: "display_name", type: "string", required: true, desc: "Tag display name. Length: 1-80" },
|
|
281
|
-
{ name: "type", type: "string", required: false, desc: "Tag type: condition/metric/first_last/sql. Default: condition" },
|
|
282
|
-
{ name: "definition", type: "json", required: true, desc: "Tag definition JSON. See +get_tag_definition_schema" },
|
|
283
|
-
{ name: "zone_offset", type: "number", required: false, desc: "Optional time zone offset, valid range: -12 to 14" },
|
|
284
|
-
{ name: "entity_id", type: "number", required: false, desc: "Optional entity ID. Use analysis_meta +list_entities to query" }
|
|
285
|
-
],
|
|
286
|
-
risk: "write",
|
|
287
|
-
buildArgs: (ctx) => ({
|
|
288
|
-
projectId: ctx.num("project_id"),
|
|
289
|
-
tagName: ctx.str("tag_name"),
|
|
290
|
-
displayName: ctx.str("display_name"),
|
|
291
|
-
type: optionalString(ctx, "type"),
|
|
292
|
-
definition: requiredJsonString(ctx, "definition"),
|
|
293
|
-
zoneOffset: optionalNumber(ctx, "zone_offset"),
|
|
294
|
-
entityId: optionalNumber(ctx, "entity_id")
|
|
295
|
-
})
|
|
296
|
-
});
|
|
297
|
-
|
|
298
|
-
// src/commands/te-audience/tag/update-tag.ts
|
|
299
|
-
var updateTag = createMcpCommand({
|
|
300
|
-
command: "+update_tag",
|
|
301
|
-
description: "Update a user tag definition",
|
|
302
|
-
flags: [
|
|
303
|
-
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
304
|
-
{ name: "tag_name", type: "string", required: true, desc: "Tag name" },
|
|
305
|
-
{ name: "display_name", type: "string", required: false, desc: "New tag display name. Length: 1-80" },
|
|
306
|
-
{ name: "remark", type: "string", required: false, desc: "New tag remark" },
|
|
307
|
-
{ name: "type", type: "string", required: false, desc: "New tag type: condition/metric/first_last/sql" },
|
|
308
|
-
{ name: "definition", type: "json", required: false, desc: "New tag definition JSON. See +get_tag_definition_schema" },
|
|
309
|
-
{ name: "zone_offset", type: "number", required: false, desc: "Optional time zone offset, valid range: -12 to 14" }
|
|
310
|
-
],
|
|
311
|
-
risk: "write",
|
|
312
|
-
buildArgs: (ctx) => ({
|
|
313
|
-
projectId: ctx.num("project_id"),
|
|
314
|
-
tagName: ctx.str("tag_name"),
|
|
315
|
-
displayName: optionalString(ctx, "display_name"),
|
|
316
|
-
remark: optionalString(ctx, "remark"),
|
|
317
|
-
type: optionalString(ctx, "type"),
|
|
318
|
-
definition: optionalJsonString(ctx, "definition"),
|
|
319
|
-
zoneOffset: optionalNumber(ctx, "zone_offset")
|
|
320
|
-
})
|
|
321
|
-
});
|
|
322
|
-
|
|
323
|
-
// src/commands/te-audience/tag/refresh-tag.ts
|
|
324
|
-
var refreshTag = createMcpCommand({
|
|
325
|
-
command: "+refresh_tag",
|
|
326
|
-
description: "Trigger tag recomputation asynchronously",
|
|
327
|
-
flags: [
|
|
328
|
-
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
329
|
-
{ name: "tag_name", type: "string", required: true, desc: "Tag name" }
|
|
330
|
-
],
|
|
331
|
-
risk: "write",
|
|
332
|
-
mcpService: "te_analysis_extend",
|
|
333
|
-
buildArgs: (ctx) => ({
|
|
334
|
-
projectId: ctx.num("project_id"),
|
|
335
|
-
tagName: ctx.str("tag_name")
|
|
336
|
-
})
|
|
337
|
-
});
|
|
338
|
-
|
|
339
|
-
// src/commands/te-audience/tag/index.ts
|
|
340
|
-
var commands2 = [
|
|
341
|
-
listTags,
|
|
342
|
-
getTagsByName,
|
|
343
|
-
listTagMembers,
|
|
344
|
-
createTag,
|
|
345
|
-
updateTag,
|
|
346
|
-
refreshTag
|
|
347
|
-
];
|
|
348
|
-
var tag_default = commands2;
|
|
349
|
-
|
|
350
|
-
// src/commands/te-audience/schema/get-cluster-definition-schema.ts
|
|
351
|
-
var getClusterDefinitionSchema = createMcpCommand({
|
|
352
|
-
command: "+get_cluster_definition_schema",
|
|
353
|
-
description: "Get the cluster definition schema by type and optional response mode",
|
|
354
|
-
flags: [
|
|
355
|
-
{ name: "cluster_type", type: "string", required: true, desc: "Cluster type: condition/sql" },
|
|
356
|
-
{ name: "response_mode", type: "string", required: false, desc: "Optional response mode: base/examples/full" },
|
|
357
|
-
{ name: "condition_subtype", type: "string", required: false, desc: "Optional subtype when cluster_type=condition: core/behavior_seq/all" }
|
|
358
|
-
],
|
|
359
|
-
risk: "read",
|
|
360
|
-
buildArgs: (ctx) => ({
|
|
361
|
-
clusterType: ctx.str("cluster_type"),
|
|
362
|
-
responseMode: optionalString(ctx, "response_mode"),
|
|
363
|
-
conditionSubtype: optionalString(ctx, "condition_subtype")
|
|
364
|
-
})
|
|
365
|
-
});
|
|
366
|
-
|
|
367
|
-
// src/commands/te-audience/schema/get-tag-definition-schema.ts
|
|
368
|
-
var getTagDefinitionSchema = createMcpCommand({
|
|
369
|
-
command: "+get_tag_definition_schema",
|
|
370
|
-
description: "Get the tag definition schema by type and optional response mode",
|
|
371
|
-
flags: [
|
|
372
|
-
{ name: "type", type: "string", required: true, desc: "Tag type: condition/metric/first_last/sql" },
|
|
373
|
-
{ name: "response_mode", type: "string", required: false, desc: "Optional response mode: base/examples/full" },
|
|
374
|
-
{ name: "condition_subtype", type: "string", required: false, desc: "Optional subtype when type=condition: core/behavior_seq/all" }
|
|
375
|
-
],
|
|
376
|
-
risk: "read",
|
|
377
|
-
buildArgs: (ctx) => ({
|
|
378
|
-
type: ctx.str("type"),
|
|
379
|
-
responseMode: optionalString(ctx, "response_mode"),
|
|
380
|
-
conditionSubtype: optionalString(ctx, "condition_subtype")
|
|
381
|
-
})
|
|
382
|
-
});
|
|
383
|
-
|
|
384
|
-
// src/commands/te-audience/schema/index.ts
|
|
385
|
-
var commands3 = [
|
|
386
|
-
getClusterDefinitionSchema,
|
|
387
|
-
getTagDefinitionSchema
|
|
388
|
-
];
|
|
389
|
-
var schema_default = commands3;
|
|
390
|
-
|
|
391
|
-
// src/commands/te-audience/index.ts
|
|
392
|
-
var commands4 = [
|
|
393
|
-
...cluster_default,
|
|
394
|
-
...tag_default,
|
|
395
|
-
...schema_default
|
|
396
|
-
];
|
|
397
|
-
var te_audience_default = commands4;
|
|
398
|
-
export {
|
|
399
|
-
te_audience_default as default
|
|
400
|
-
};
|