@thinkingai/ae-cli 1.0.3 → 1.0.18
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 +42 -72
- package/README.zh.md +202 -0
- package/dist/auth-2UTBG5U3.js +144 -0
- package/dist/{auth-BQC5DBE7.js → auth-ECD46NBA.js} +6 -4
- package/dist/{chunk-3CDLNXTD.js → chunk-4KQ7H7DY.js} +15 -3
- package/dist/{chunk-53FNNCZW.js → chunk-7QBNU44L.js} +101 -3
- package/dist/{chunk-ZYXIGPG7.js → chunk-LAAS6ITR.js} +3 -3
- package/dist/{chunk-EBFUVWIZ.js → chunk-MR57UIKC.js} +42 -0
- package/dist/{client-5QSQBBDB.js → client-O56G2SNJ.js} +3 -3
- package/dist/{config-Q7J3Z7Z2.js → config-BU5FHGGE.js} +23 -8
- package/dist/index.js +15 -15
- package/dist/{raw-G3GKHAPZ.js → raw-A3VN2B6I.js} +4 -4
- package/dist/{te-analysis-CHFTDN55.js → te-analysis-UGKESPBE.js} +62 -24
- package/dist/{te-audience-M6LQY6M7.js → te-audience-THZNVHYB.js} +61 -21
- package/dist/{te-common-BLQ7DVGC.js → te-common-QZOUME3S.js} +6 -33
- package/dist/{community-FVDAWGS4.js → te-community-AZVW3NFX.js} +59 -59
- package/dist/{te-dataops-V4OTKY35.js → te-dataops-OE5PX2K6.js} +3 -28
- package/dist/{te-engage-DXE4R5EW.js → te-engage-RYGEQTYK.js} +4 -22
- package/dist/{te-meta-FMM7KCVI.js → te-meta-MGO5BCMG.js} +88 -18
- package/package.json +3 -3
- package/skills/ae-analysis/SKILL.md +287 -0
- package/skills/{te-meta/references/batch-create-metadata.md → ae-analysis/references/batch_create_metadata.md} +3 -3
- package/skills/{te-meta/references/batch-edit-metadata.md → ae-analysis/references/batch_edit_metadata.md} +2 -2
- package/skills/{te-analysis/references/build-entity-details-sql.md → ae-analysis/references/build_entity_details_sql.md} +9 -9
- package/skills/{te-analysis/references/build-event-details-sql.md → ae-analysis/references/build_event_details_sql.md} +9 -9
- package/skills/{te-analysis/references/create-alert.md → ae-analysis/references/create_alert.md} +4 -4
- package/skills/{te-audience/references/create-cluster.md → ae-analysis/references/create_cluster.md} +23 -19
- package/skills/{te-analysis/references/create-dashboard.md → ae-analysis/references/create_dashboard.md} +4 -4
- package/skills/{te-meta/references/create-metric.md → ae-analysis/references/create_metric.md} +10 -10
- package/skills/{te-analysis/references/create-or-update-dashboard-note.md → ae-analysis/references/create_or_update_dashboard_note.md} +3 -3
- package/skills/{te-meta/references/create-project-mark-time.md → ae-analysis/references/create_project_mark_time.md} +3 -3
- package/skills/{te-analysis/references/create-public-access-link.md → ae-analysis/references/create_public_access_link.md} +3 -3
- package/skills/{te-analysis/references/create-report.md → ae-analysis/references/create_report.md} +9 -9
- package/skills/{te-analysis/references/create-result-cluster.md → ae-analysis/references/create_result_cluster.md} +6 -6
- package/skills/{te-audience/references/create-tag.md → ae-analysis/references/create_tag.md} +16 -15
- package/skills/{te-meta/references/create-virtual-event.md → ae-analysis/references/create_virtual_event.md} +9 -9
- package/skills/{te-meta/references/create-virtual-property.md → ae-analysis/references/create_virtual_property.md} +7 -7
- package/skills/{te-meta/references/delete-project-mark-times.md → ae-analysis/references/delete_project_mark_times.md} +2 -2
- package/skills/{te-meta/references/delete-track-items.md → ae-analysis/references/delete_track_items.md} +2 -2
- package/skills/{te-analysis/references/drilldown-user-events.md → ae-analysis/references/drilldown_user_events.md} +8 -8
- package/skills/{te-analysis/references/drilldown-users.md → ae-analysis/references/drilldown_users.md} +10 -7
- package/skills/ae-analysis/references/generate_track_program.md +51 -0
- package/skills/ae-analysis/references/generate_track_sdk_sample.md +43 -0
- package/skills/{te-analysis/references/get-alert.md → ae-analysis/references/get_alert.md} +2 -2
- package/skills/{te-analysis/references/get-alert-definition-schema.md → ae-analysis/references/get_alert_definition_schema.md} +1 -1
- package/skills/ae-analysis/references/get_analysis_query_schema.md +61 -0
- package/skills/ae-analysis/references/get_cluster_definition_schema.md +53 -0
- package/skills/ae-analysis/references/get_clusters_by_name.md +69 -0
- package/skills/{te-analysis/references/get-filter-schema.md → ae-analysis/references/get_filter_schema.md} +1 -1
- package/skills/{te-analysis/references/get-groupby-schema.md → ae-analysis/references/get_groupby_schema.md} +1 -1
- package/skills/{te-meta/references/get-metric.md → ae-analysis/references/get_metric.md} +2 -2
- package/skills/{te-meta/references/get-project-config.md → ae-analysis/references/get_project_config.md} +2 -2
- package/skills/{te-analysis/references/get-report-definition.md → ae-analysis/references/get_report_definition.md} +2 -2
- package/skills/{te-common/references/get-resource-url.md → ae-analysis/references/get_resource_url.md} +4 -4
- package/skills/{te-analysis/references/get-table-columns.md → ae-analysis/references/get_table_columns.md} +2 -2
- package/skills/ae-analysis/references/get_tag_definition_schema.md +49 -0
- package/skills/ae-analysis/references/get_tags_by_name.md +69 -0
- package/skills/{te-meta/references/get-track-program.md → ae-analysis/references/get_track_program.md} +2 -2
- package/skills/{te-analysis/references/list-alerts.md → ae-analysis/references/list_alerts.md} +10 -3
- package/skills/{te-audience/references/list-cluster-members.md → ae-analysis/references/list_cluster_members.md} +11 -4
- package/skills/{te-audience/references/list-clusters.md → ae-analysis/references/list_clusters.md} +14 -4
- package/skills/{te-analysis/references/list-dashboards.md → ae-analysis/references/list_dashboards.md} +12 -4
- package/skills/{te-meta/references/list-entities.md → ae-analysis/references/list_entities.md} +10 -3
- package/skills/{te-meta/references/list-events.md → ae-analysis/references/list_events.md} +12 -5
- package/skills/ae-analysis/references/list_metrics.md +45 -0
- package/skills/ae-analysis/references/list_project_mark_times.md +42 -0
- package/skills/{te-meta/references/list-project-users.md → ae-analysis/references/list_project_users.md} +2 -2
- package/skills/{te-common/references/list-projects.md → ae-analysis/references/list_projects.md} +6 -4
- package/skills/{te-meta/references/list-properties.md → ae-analysis/references/list_properties.md} +9 -4
- package/skills/ae-analysis/references/list_public_access_links.md +41 -0
- package/skills/{te-analysis/references/list-reports.md → ae-analysis/references/list_reports.md} +12 -4
- package/skills/{te-audience/references/list-tag-members.md → ae-analysis/references/list_tag_members.md} +11 -4
- package/skills/{te-audience/references/list-tags.md → ae-analysis/references/list_tags.md} +14 -4
- package/skills/{te-analysis/references/load-filters.md → ae-analysis/references/load_filters.md} +3 -3
- package/skills/{te-analysis/references/query-adhoc.md → ae-analysis/references/query_adhoc.md} +24 -9
- package/skills/{te-analysis/references/query-dashboard-detail.md → ae-analysis/references/query_dashboard_detail.md} +2 -2
- package/skills/{te-analysis/references/query-dashboard-report-data.md → ae-analysis/references/query_dashboard_report_data.md} +9 -9
- package/skills/{te-analysis/references/query-entity-details.md → ae-analysis/references/query_entity_details.md} +10 -10
- package/skills/{te-analysis/references/query-event-details.md → ae-analysis/references/query_event_details.md} +12 -12
- package/skills/{te-analysis/references/query-report-data.md → ae-analysis/references/query_report_data.md} +11 -11
- package/skills/{te-audience/references/refresh-cluster.md → ae-analysis/references/refresh_cluster.md} +2 -2
- package/skills/{te-audience/references/refresh-tag.md → ae-analysis/references/refresh_tag.md} +2 -2
- package/skills/{te-meta/references/save-track-items.md → ae-analysis/references/save_track_items.md} +2 -2
- package/skills/{te-analysis/references/update-alert.md → ae-analysis/references/update_alert.md} +4 -4
- package/skills/{te-audience/references/update-cluster.md → ae-analysis/references/update_cluster.md} +15 -13
- package/skills/{te-analysis/references/update-dashboard.md → ae-analysis/references/update_dashboard.md} +3 -3
- package/skills/{te-meta/references/update-metric.md → ae-analysis/references/update_metric.md} +9 -9
- package/skills/{te-meta/references/update-project-mark-time.md → ae-analysis/references/update_project_mark_time.md} +3 -3
- package/skills/{te-analysis/references/update-public-access-link.md → ae-analysis/references/update_public_access_link.md} +3 -3
- package/skills/{te-audience/references/update-tag.md → ae-analysis/references/update_tag.md} +15 -14
- package/skills/ae-community/SKILL.md +305 -0
- package/skills/{te-community → ae-community}/references/community-activity-analysis.md +6 -7
- package/skills/{te-community → ae-community}/references/community-analyzing-official-content.md +3 -4
- package/skills/{te-community → ae-community}/references/community-analyzing-theme-comment.md +5 -6
- package/skills/{te-community → ae-community}/references/community-character-analysis.md +5 -6
- package/skills/{te-community → ae-community}/references/community-daily-report.md +7 -8
- package/skills/{te-community → ae-community}/references/community-hottopic-insight.md +4 -5
- package/skills/{te-community → ae-community}/references/community-weekly-report.md +7 -8
- package/skills/{te-community → ae-community}/references/get_channel_info.md +4 -5
- package/skills/{te-community → ae-community}/references/get_comment_tag_analysis.md +3 -4
- package/skills/{te-community → ae-community}/references/get_comments_summary.md +4 -5
- package/skills/{te-community → ae-community}/references/get_corpus_tags.md +3 -4
- package/skills/{te-community → ae-community}/references/get_daily_summary.md +3 -4
- package/skills/{te-community → ae-community}/references/get_hot_topics.md +3 -4
- package/skills/{te-community → ae-community}/references/get_livestream_analysis.md +3 -4
- package/skills/{te-community → ae-community}/references/get_livestream_detail.md +4 -5
- package/skills/{te-community → ae-community}/references/get_livestream_list.md +3 -4
- package/skills/{te-community → ae-community}/references/get_livestream_overview.md +3 -4
- package/skills/{te-community → ae-community}/references/get_livestream_room_metrics.md +3 -4
- package/skills/{te-community → ae-community}/references/get_livestream_rooms.md +3 -4
- package/skills/{te-community → ae-community}/references/get_overview_metrics.md +3 -4
- package/skills/{te-community → ae-community}/references/get_post_detail.md +4 -5
- package/skills/{te-community → ae-community}/references/get_risk_content.md +5 -6
- package/skills/{te-community → ae-community}/references/get_sentiment_overview.md +4 -5
- package/skills/{te-community → ae-community}/references/get_tag_trends.md +3 -4
- package/skills/{te-community → ae-community}/references/get_topic_detail.md +3 -4
- package/skills/{te-community → ae-community}/references/search_posts.md +5 -6
- package/skills/{te-dataops → ae-dataops}/SKILL.md +73 -10
- package/skills/{te-dataops → ae-dataops}/references/dataops-flow-create.md +1 -1
- package/skills/{te-dataops → ae-dataops}/references/dataops-flow-monitor.md +1 -1
- package/skills/{te-dataops → ae-dataops}/references/dataops-integration.md +1 -1
- package/skills/{te-dataops → ae-dataops}/references/dataops-query.md +1 -1
- package/skills/{te-dataops → ae-dataops}/references/dataops-table.md +1 -1
- package/skills/{te-engage → ae-engage}/SKILL.md +106 -6
- package/skills/{te-engage → ae-engage}/references/add-approver.md +2 -2
- package/skills/{te-engage → ae-engage}/references/add-channel.md +2 -2
- package/skills/{te-engage → ae-engage}/references/approver-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/cancel-query-by-request-id.md +2 -2
- package/skills/{te-engage → ae-engage}/references/channel-detail.md +2 -2
- package/skills/{te-engage → ae-engage}/references/channel-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-channel-detail.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-channel-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-item-analysis-report.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-item-detail.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-item-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-item-strategy-comparison.md +2 -2
- package/skills/{te-engage → ae-engage}/references/config-item-trigger-report.md +2 -2
- package/skills/{te-engage → ae-engage}/references/copy-config-template.md +2 -2
- package/skills/{te-engage → ae-engage}/references/delete-channel.md +2 -2
- package/skills/{te-engage → ae-engage}/references/delete-config-channel.md +2 -2
- package/skills/{te-engage → ae-engage}/references/delete-config-item.md +2 -2
- package/skills/{te-engage → ae-engage}/references/delete-flow.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-ab-split-node-report.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-detail.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-node-config-schema.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-node-detail-report.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-node-overview-report.md +2 -2
- package/skills/{te-engage → ae-engage}/references/flow-process-report.md +2 -2
- package/skills/{te-engage → ae-engage}/references/manage-flow.md +2 -2
- package/skills/{te-engage → ae-engage}/references/manage-strategy.md +2 -2
- package/skills/{te-engage → ae-engage}/references/manage-task.md +2 -2
- package/skills/{te-engage → ae-engage}/references/modify-flow-base-info.md +2 -2
- package/skills/{te-engage → ae-engage}/references/save-flow.md +3 -3
- package/skills/{te-engage → ae-engage}/references/strategy-detail.md +2 -2
- package/skills/{te-engage → ae-engage}/references/strategy-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/task-data-detail.md +3 -10
- package/skills/{te-engage → ae-engage}/references/task-data-overview.md +3 -9
- package/skills/{te-engage → ae-engage}/references/task-detail.md +2 -2
- package/skills/{te-engage → ae-engage}/references/task-experiment-report.md +3 -9
- package/skills/{te-engage → ae-engage}/references/task-list.md +2 -2
- package/skills/{te-engage → ae-engage}/references/task-metric-detail.md +3 -9
- package/skills/{te-engage → ae-engage}/references/task-stats.md +2 -2
- package/skills/{te-engage → ae-engage}/references/update-channel-status.md +2 -2
- package/skills/{te-engage → ae-engage}/references/update-config-channel-status.md +2 -2
- package/skills/{te-engage → ae-engage}/references/validate-flow-node-config.md +2 -2
- package/skills/{te-engage → ae-engage}/references/whitelist-list.md +2 -2
- package/dist/auth-DXKYLMO7.js +0 -81
- package/dist/auth-JXELJNDS.js +0 -19
- package/dist/auth-L3G3A74I.js +0 -67
- package/dist/chunk-3GM5LJZR.js +0 -145
- package/dist/chunk-JD5DXMKL.js +0 -172
- package/dist/chunk-OVQOK35G.js +0 -108
- package/dist/chunk-RJNLN3KQ.js +0 -217
- package/dist/client-T4VODLA6.js +0 -16
- package/dist/community-GMALVSRF.js +0 -684
- package/dist/config-V7AXKDMB.js +0 -242
- package/dist/raw-ZNVURYMR.js +0 -59
- package/dist/te-analysis-7NN3SY3I.js +0 -871
- package/dist/te-audience-P43BWMHM.js +0 -350
- package/dist/te-common-H3IPTI2I.js +0 -144
- package/dist/te-dataops-WCGDBJLF.js +0 -1853
- package/dist/te-engage-UTRVNTGU.js +0 -1470
- package/dist/te-meta-HGYNXVGF.js +0 -479
- package/skills/te-analysis/SKILL.md +0 -107
- package/skills/te-analysis/references/get-analysis-query-schema.md +0 -36
- package/skills/te-analysis/references/list-public-access-links.md +0 -31
- package/skills/te-audience/SKILL.md +0 -63
- package/skills/te-audience/references/get-cluster-definition-schema.md +0 -37
- package/skills/te-audience/references/get-clusters-by-name.md +0 -32
- package/skills/te-audience/references/get-tag-definition-schema.md +0 -32
- package/skills/te-audience/references/get-tags-by-name.md +0 -32
- package/skills/te-common/SKILL.md +0 -135
- package/skills/te-community/SKILL.md +0 -125
- package/skills/te-meta/SKILL.md +0 -71
- package/skills/te-meta/references/list-metrics.md +0 -33
- package/skills/te-meta/references/list-project-mark-times.md +0 -33
- package/skills/te-shared/SKILL.md +0 -115
|
@@ -2,9 +2,9 @@ import {
|
|
|
2
2
|
callMcpTool,
|
|
3
3
|
parseMcpResult,
|
|
4
4
|
resolveMcpUrl
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-7QBNU44L.js";
|
|
6
|
+
import "./chunk-4KQ7H7DY.js";
|
|
7
|
+
import "./chunk-MR57UIKC.js";
|
|
8
8
|
|
|
9
9
|
// src/commands/te-meta/shared.ts
|
|
10
10
|
function createMcpCommand(config) {
|
|
@@ -58,34 +58,46 @@ function requiredJsonString(ctx, name) {
|
|
|
58
58
|
// src/commands/te-meta/meta/list-events.ts
|
|
59
59
|
var listEvents = createMcpCommand({
|
|
60
60
|
command: "+list_events",
|
|
61
|
-
description: "
|
|
61
|
+
description: "List events in the project. Query performs fuzzy matching on eventName, eventDesc and aiRemark. Supports fields/limit/offset payload governance.",
|
|
62
62
|
flags: [
|
|
63
63
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
64
|
-
{ name: "query", type: "string", required: false, desc: "Optional keyword filter", alias: "q" }
|
|
64
|
+
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to eventName, eventDesc, and aiRemark; if omitted, all events are returned.", alias: "q" },
|
|
65
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: eventName, eventDesc, aiRemark, eventTag, remark.", alias: "f" },
|
|
66
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum: 50.", alias: "l" },
|
|
67
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" }
|
|
65
68
|
],
|
|
66
69
|
risk: "read",
|
|
67
70
|
buildArgs: (ctx) => ({
|
|
68
71
|
projectId: ctx.num("project_id"),
|
|
69
|
-
query: optionalString(ctx, "query")
|
|
72
|
+
query: optionalString(ctx, "query"),
|
|
73
|
+
fields: optionalJson(ctx, "fields"),
|
|
74
|
+
limit: optionalNumber(ctx, "limit"),
|
|
75
|
+
offset: optionalNumber(ctx, "offset")
|
|
70
76
|
})
|
|
71
77
|
});
|
|
72
78
|
|
|
73
79
|
// src/commands/te-meta/meta/list-properties.ts
|
|
74
80
|
var listProperties = createMcpCommand({
|
|
75
81
|
command: "+list_properties",
|
|
76
|
-
description: "
|
|
82
|
+
description: "List properties in the project. Query performs fuzzy matching on propName, propDesc and aiRemark. Supports fields/limit/offset payload governance.",
|
|
77
83
|
flags: [
|
|
78
84
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
79
85
|
{ name: "scope", type: "string", required: false, desc: "Property scope: event or user" },
|
|
80
86
|
{ name: "event_name", type: "string", required: false, desc: "Optional event name filter" },
|
|
81
|
-
{ name: "query", type: "string", required: false, desc: "Optional keyword filter", alias: "q" }
|
|
87
|
+
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to propName, propDesc, and aiRemark; if omitted, all accessible properties are returned.", alias: "q" },
|
|
88
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: propName, propDesc, aiRemark, selectType, tableType, subTableType.", alias: "f" },
|
|
89
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum: 50.", alias: "l" },
|
|
90
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" }
|
|
82
91
|
],
|
|
83
92
|
risk: "read",
|
|
84
93
|
buildArgs: (ctx) => ({
|
|
85
94
|
projectId: ctx.num("project_id"),
|
|
86
95
|
scope: optionalString(ctx, "scope"),
|
|
87
96
|
eventName: optionalString(ctx, "event_name"),
|
|
88
|
-
query: optionalString(ctx, "query")
|
|
97
|
+
query: optionalString(ctx, "query"),
|
|
98
|
+
fields: optionalJson(ctx, "fields"),
|
|
99
|
+
limit: optionalNumber(ctx, "limit"),
|
|
100
|
+
offset: optionalNumber(ctx, "offset")
|
|
89
101
|
})
|
|
90
102
|
});
|
|
91
103
|
|
|
@@ -186,16 +198,22 @@ var createVirtualProperty = createMcpCommand({
|
|
|
186
198
|
// src/commands/te-meta/meta/list-metrics.ts
|
|
187
199
|
var listMetrics = createMcpCommand({
|
|
188
200
|
command: "+list_metrics",
|
|
189
|
-
description: "List metric metadata in the project",
|
|
201
|
+
description: "List metric metadata in the project. Query performs fuzzy matching on metricName, metricDesc, and metricRemark. Supports fields/limit/offset pagination.",
|
|
190
202
|
flags: [
|
|
191
203
|
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
192
|
-
{ name: "query", type: "string", required: false, alias: "q", desc: "Optional keyword filter" }
|
|
204
|
+
{ name: "query", type: "string", required: false, alias: "q", desc: "Optional keyword filter. Fuzzy match on metricName, metricDesc, metricRemark." },
|
|
205
|
+
{ 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." },
|
|
206
|
+
{ name: "limit", type: "number", required: false, desc: "Optional limit. Default: 20, maximum: 50." },
|
|
207
|
+
{ name: "offset", type: "number", required: false, desc: "Optional offset. Default: 0." }
|
|
193
208
|
],
|
|
194
209
|
risk: "read",
|
|
195
210
|
mcpService: "te_analysis_extend",
|
|
196
211
|
buildArgs: (ctx) => ({
|
|
197
212
|
projectId: ctx.num("project_id"),
|
|
198
|
-
query: optionalString(ctx, "query")
|
|
213
|
+
query: optionalString(ctx, "query"),
|
|
214
|
+
fields: optionalJson(ctx, "fields"),
|
|
215
|
+
limit: optionalNumber(ctx, "limit"),
|
|
216
|
+
offset: optionalNumber(ctx, "offset")
|
|
199
217
|
})
|
|
200
218
|
});
|
|
201
219
|
|
|
@@ -356,6 +374,40 @@ var deleteTrackItems = createMcpCommand({
|
|
|
356
374
|
})
|
|
357
375
|
});
|
|
358
376
|
|
|
377
|
+
// src/commands/te-meta/project/generate-track-program.ts
|
|
378
|
+
var generateTrackProgram = createMcpCommand({
|
|
379
|
+
command: "+generate_track_program",
|
|
380
|
+
description: "Generate a tracking plan from structured business context (async)",
|
|
381
|
+
flags: [
|
|
382
|
+
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
383
|
+
{ name: "language", type: "string", required: true, alias: "l", desc: "Language code (zh-CN, en-US, ja-JP, ko-KR)" },
|
|
384
|
+
{ name: "form_data", type: "json", required: true, desc: "Structured business context JSON object, optional fields for example: account_system, revenue_model, core_gameplay, currency_system, main_entries, predefinedEvent, developmentCarrier" }
|
|
385
|
+
],
|
|
386
|
+
risk: "write",
|
|
387
|
+
mcpService: "te_analysis_extend",
|
|
388
|
+
buildArgs: (ctx) => ({
|
|
389
|
+
projectId: ctx.num("project_id"),
|
|
390
|
+
language: ctx.str("language"),
|
|
391
|
+
formData: ctx.json("form_data")
|
|
392
|
+
})
|
|
393
|
+
});
|
|
394
|
+
|
|
395
|
+
// src/commands/te-meta/project/generate-track-sdk-sample.ts
|
|
396
|
+
var generateTrackSdkSample = createMcpCommand({
|
|
397
|
+
command: "+generate_track_sdk_sample",
|
|
398
|
+
description: "Generate SDK sample files based on tracking plan (async)",
|
|
399
|
+
flags: [
|
|
400
|
+
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
401
|
+
{ name: "sdk_type", type: "json", required: true, desc: "SDK types JSON array. Allowed values: android-java, server-php, ios-swift, server-python, web-js, server-java, server-nodejs, wechat-miniapp, harmonyos-arkts, android-kotlin, unity-csharp, cocos-creator-ts, server-go, server-cpp, ios-objc" }
|
|
402
|
+
],
|
|
403
|
+
risk: "write",
|
|
404
|
+
mcpService: "te_analysis_extend",
|
|
405
|
+
buildArgs: (ctx) => ({
|
|
406
|
+
projectId: ctx.num("project_id"),
|
|
407
|
+
sdkType: ctx.json("sdk_type")
|
|
408
|
+
})
|
|
409
|
+
});
|
|
410
|
+
|
|
359
411
|
// src/commands/te-meta/project/create-project-mark-time.ts
|
|
360
412
|
var createProjectMarkTime = createMcpCommand({
|
|
361
413
|
command: "+create_project_mark_time",
|
|
@@ -405,16 +457,24 @@ var updateProjectMarkTime = createMcpCommand({
|
|
|
405
457
|
// src/commands/te-meta/project/list-project-mark-times.ts
|
|
406
458
|
var listProjectMarkTimes = createMcpCommand({
|
|
407
459
|
command: "+list_project_mark_times",
|
|
408
|
-
description: "List project date markers",
|
|
460
|
+
description: "List project date markers. Query performs fuzzy matching on markContent. Supports fields/limit/offset pagination.",
|
|
409
461
|
flags: [
|
|
410
462
|
{ name: "project_id", type: "number", required: true, alias: "p", desc: "Project ID" },
|
|
411
|
-
{ name: "zone_offset", type: "number", required: false, desc: "Marker time zone offset" }
|
|
463
|
+
{ name: "zone_offset", type: "number", required: false, desc: "Marker time zone offset" },
|
|
464
|
+
{ name: "query", type: "string", required: false, alias: "q", desc: "Optional keyword filter. Fuzzy match on markContent." },
|
|
465
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported: id, projectId, markTime, userZoneTime, zoneOffset, markContent, isShow, creatorName, creatorId, lastModifierName, lastModifierId, createTime, updateTime." },
|
|
466
|
+
{ name: "limit", type: "number", required: false, desc: "Optional limit. Default: 20, maximum: 50." },
|
|
467
|
+
{ name: "offset", type: "number", required: false, desc: "Optional offset. Default: 0." }
|
|
412
468
|
],
|
|
413
469
|
risk: "read",
|
|
414
470
|
mcpService: "te_analysis_extend",
|
|
415
471
|
buildArgs: (ctx) => ({
|
|
416
472
|
projectId: ctx.num("project_id"),
|
|
417
|
-
zoneOffset: optionalNumber(ctx, "zone_offset")
|
|
473
|
+
zoneOffset: optionalNumber(ctx, "zone_offset"),
|
|
474
|
+
query: optionalString(ctx, "query"),
|
|
475
|
+
fields: optionalJson(ctx, "fields"),
|
|
476
|
+
limit: optionalNumber(ctx, "limit"),
|
|
477
|
+
offset: optionalNumber(ctx, "offset")
|
|
418
478
|
})
|
|
419
479
|
});
|
|
420
480
|
|
|
@@ -441,6 +501,8 @@ var commands2 = [
|
|
|
441
501
|
getTrackProgram,
|
|
442
502
|
saveTrackItems,
|
|
443
503
|
deleteTrackItems,
|
|
504
|
+
generateTrackProgram,
|
|
505
|
+
generateTrackSdkSample,
|
|
444
506
|
createProjectMarkTime,
|
|
445
507
|
updateProjectMarkTime,
|
|
446
508
|
listProjectMarkTimes,
|
|
@@ -451,15 +513,23 @@ var project_default = commands2;
|
|
|
451
513
|
// src/commands/te-meta/entity/list-entities.ts
|
|
452
514
|
var listEntities = createMcpCommand({
|
|
453
515
|
command: "+list_entities",
|
|
454
|
-
description: "List entities in the project",
|
|
516
|
+
description: "List entities in the project. Query performs fuzzy matching on entityName, columnName and columnDesc. Supports fields/limit/offset payload governance.",
|
|
455
517
|
flags: [
|
|
456
518
|
{ name: "project_id", type: "number", required: true, desc: "Project ID", alias: "p" },
|
|
457
|
-
{ name: "event_name", type: "string", required: false, desc: "Optional event name filter" }
|
|
519
|
+
{ name: "event_name", type: "string", required: false, desc: "Optional event name filter" },
|
|
520
|
+
{ name: "query", type: "string", required: false, desc: "Optional keyword filter. Fuzzy match is applied to entityName, columnName, and columnDesc; if omitted, all entities are returned.", alias: "q" },
|
|
521
|
+
{ name: "fields", type: "json", required: false, desc: "Optional fields to return. Supported fields: entityId, entityName, columnName, columnDesc, selectType, tableType, entityType.", alias: "f" },
|
|
522
|
+
{ name: "limit", type: "number", required: false, desc: "Optional page size. Default: 20, maximum: 50.", alias: "l" },
|
|
523
|
+
{ name: "offset", type: "number", required: false, desc: "Optional page offset. Default: 0.", alias: "o" }
|
|
458
524
|
],
|
|
459
525
|
risk: "read",
|
|
460
526
|
buildArgs: (ctx) => ({
|
|
461
527
|
projectId: ctx.num("project_id"),
|
|
462
|
-
eventName: optionalString(ctx, "event_name")
|
|
528
|
+
eventName: optionalString(ctx, "event_name"),
|
|
529
|
+
query: optionalString(ctx, "query"),
|
|
530
|
+
fields: optionalJson(ctx, "fields"),
|
|
531
|
+
limit: optionalNumber(ctx, "limit"),
|
|
532
|
+
offset: optionalNumber(ctx, "offset")
|
|
463
533
|
})
|
|
464
534
|
});
|
|
465
535
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thinkingai/ae-cli",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "CLI tool for ThinkingAI
|
|
3
|
+
"version": "1.0.18",
|
|
4
|
+
"description": "CLI tool for ThinkingAI (AE) analytics platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"ae-cli": "bin/ae-cli.js"
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"analytics",
|
|
34
34
|
"cli"
|
|
35
35
|
],
|
|
36
|
-
"author": "
|
|
36
|
+
"author": "ThinkingData",
|
|
37
37
|
"license": "MIT",
|
|
38
38
|
"engines": {
|
|
39
39
|
"node": ">=18.0.0"
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ae-analysis
|
|
3
|
+
version: 3.0.0
|
|
4
|
+
description: "AE/TE/ThinkingEngine/ThinkingAI ae-cli manual for analysis-side tasks in the AE system or analysis platform: reports, dashboards, alerts, ad hoc analysis, drilldown, audience clusters, tags, tag members, metrics and metric definitions, events, properties, virtual events, virtual properties, metadata, project configuration, tracking plans, event tracking, mark times, project lists, and resource links. Use when the user asks to query, create, update, refresh, inspect, troubleshoot, govern, or manage these AE analysis assets. Must use ae-cli, read the matching references/<tool_name>.md command manual before composing commands, and never guess command names, flags, JSON payloads, project_id, resource IDs, or parameter formats."
|
|
5
|
+
metadata:
|
|
6
|
+
requires:
|
|
7
|
+
bins: ["ae-cli"]
|
|
8
|
+
cliHelp: "ae-cli --help"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# ae-analysis
|
|
12
|
+
|
|
13
|
+
> **CRITICAL - This skill is self-contained.** Use the Global AE CLI Rules below; do not require a separate shared skill for analysis-side tasks.
|
|
14
|
+
> **CRITICAL - For all commands that require `project_id`, you MUST satisfy `PROJECT_ID_GATE` first (no guessing): verify the project by ID/name with `analysis_common +list_projects` only when there is no valid project context yet, when the user switches project/host/environment, or when the supplied project is ambiguous. Reuse a project already verified in the same continuous conversation and same host/environment.**
|
|
15
|
+
> **CRITICAL - For write operations in this skill, you MUST complete the post-write link loop when applicable:** after success and extractable `resource_id`, call `analysis_common +get_resource_url` and return the main result + resource link (or explicit link-failure reason).
|
|
16
|
+
> **CRITICAL - Before running any `+<tool_name>` command, you MUST first read the corresponding `references/<tool_name>.md`.** The reference filename always equals the command name without the leading `+`, for example `+query_adhoc` -> `references/query_adhoc.md`.
|
|
17
|
+
|
|
18
|
+
## Global AE CLI Rules
|
|
19
|
+
|
|
20
|
+
AE CLI (`ae-cli`) is the command-line tool for the AE / TE / ThinkingEngine analysis platform. For AE analysis-side requests, prefer `ae-cli` and this skill's reference docs over model memory.
|
|
21
|
+
|
|
22
|
+
Authentication priority:
|
|
23
|
+
1. `TE_TOKEN` environment variable.
|
|
24
|
+
2. Cached token in `~/.ae-cli/tokens.json`, usually valid for 20 hours.
|
|
25
|
+
3. macOS Chrome token extraction via `ae-cli auth login`.
|
|
26
|
+
|
|
27
|
+
Useful authentication commands:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
ae-cli auth login
|
|
31
|
+
ae-cli auth status
|
|
32
|
+
ae-cli auth logout
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Global parameters:
|
|
36
|
+
|
|
37
|
+
| Parameter | Description |
|
|
38
|
+
|---|---|
|
|
39
|
+
| `--host <host>` | Target AE host. Use when the environment is not the default host. |
|
|
40
|
+
| `--format <json|table>` | Output format. Default is JSON. |
|
|
41
|
+
| `--jq <expr>` | jq filter expression for JSON output. |
|
|
42
|
+
| `--dry-run` | Preview the request without executing it. |
|
|
43
|
+
| `--yes` | Skip confirmation for write operations. Use only when the user intent is explicit or automation requires it. |
|
|
44
|
+
|
|
45
|
+
Output and errors:
|
|
46
|
+
- Successful commands return machine-readable JSON by default.
|
|
47
|
+
- Failed commands return `{ "ok": false, "error": { "type": "...", "message": "...", "hint": "..." } }` and exit non-zero.
|
|
48
|
+
- On auth/config errors, check `ae-cli auth status`, host configuration, and the target environment before retrying.
|
|
49
|
+
|
|
50
|
+
Safety constraints:
|
|
51
|
+
- Read commands can execute directly after required IDs and references are verified.
|
|
52
|
+
- Write commands require explicit user intent and normally keep the confirmation prompt.
|
|
53
|
+
- Use `--dry-run` before risky or complex writes.
|
|
54
|
+
- Never invent command names, flags, JSON payloads, `project_id`, resource IDs, field names, event names, property names, metric definitions, or date formats. Read the matching command reference and discover real project metadata first.
|
|
55
|
+
- **NEVER fabricate or guess resource names** (reports, dashboards, events, properties, metrics, clusters, tags, alerts). Always use list commands to discover real resources first. If a resource is not found after fuzzy search and full list fallback, explicitly tell the user "resource not found" and stop - do not proceed with fabricated names.
|
|
56
|
+
|
|
57
|
+
Language consistency:
|
|
58
|
+
- **Input-output language matching**: Always respond in the same language as the user's input.
|
|
59
|
+
- User asks in Chinese → Respond in Chinese, including result interpretation and error messages
|
|
60
|
+
- User asks in English → Respond in English
|
|
61
|
+
- **CLI output handling**: CLI returns JSON in English, but your interpretation and summary MUST match user's language
|
|
62
|
+
- **Resource names**: Keep original resource names as-is (don't translate), but descriptions and explanations should match user's language
|
|
63
|
+
- **Error messages**: Translate CLI error messages to user's language when presenting results
|
|
64
|
+
|
|
65
|
+
## When to Use
|
|
66
|
+
|
|
67
|
+
Use `ae-analysis` for all AE analysis-side work below:
|
|
68
|
+
|
|
69
|
+
- Domain `analysis`: alerts, reports/dashboards, ad-hoc model analysis, drilldown, entity/event details, schema helpers.
|
|
70
|
+
- Domain `analysis_audience`: clusters/tags and definition schemas.
|
|
71
|
+
- Domain `analysis_meta`: metadata governance, metrics, virtual metadata, project config, tracking plans, mark times, entity catalog.
|
|
72
|
+
- Domain `analysis_common`: project listing and post-write resource links.
|
|
73
|
+
|
|
74
|
+
If user intent is Engage/DataOps/Community, switch to `ae-engage` / `ae-dataops` / `ae-community`.
|
|
75
|
+
|
|
76
|
+
## Command Format
|
|
77
|
+
|
|
78
|
+
- `ae-cli analysis +<tool_name> [options]`
|
|
79
|
+
- `ae-cli analysis_audience +<tool_name> [options]`
|
|
80
|
+
- `ae-cli analysis_meta +<tool_name> [options]`
|
|
81
|
+
- `ae-cli analysis_common +<tool_name> [options]`
|
|
82
|
+
|
|
83
|
+
Conventions:
|
|
84
|
+
- CLI flags use underscores, e.g. `--project_id`.
|
|
85
|
+
- MCP params map automatically to camelCase.
|
|
86
|
+
- JSON args pass as JSON string literals.
|
|
87
|
+
- Write operations require confirmation unless `--yes`.
|
|
88
|
+
|
|
89
|
+
## Mandatory Constraints
|
|
90
|
+
|
|
91
|
+
### A. PROJECT_ID_GATE
|
|
92
|
+
|
|
93
|
+
For any command requiring `project_id`:
|
|
94
|
+
1. If the same continuous conversation already has a verified project context (`project_id`, project name when known, and host/environment), reuse it directly for follow-up commands.
|
|
95
|
+
2. Call `analysis_common +list_projects` only when no verified project context exists, the user provides a new project ID/name, the user switches host/environment, the user asks to list projects, or the current project is ambiguous.
|
|
96
|
+
3. Verify any new user-provided ID or name against returned projects before using it.
|
|
97
|
+
4. If the user supplied an exact `project_id` and it uniquely matches one returned project in the intended host/environment, continue with that ID.
|
|
98
|
+
5. If the project is missing, the name is ambiguous, the host/environment is unclear, or the supplied ID/name does not uniquely match, show candidate projects and stop for user choice.
|
|
99
|
+
6. Do not use sample project IDs from reference docs as real IDs.
|
|
100
|
+
7. When reusing verified project context, mention the reused `project_id` briefly if it helps the user understand why `+list_projects` was not called again.
|
|
101
|
+
|
|
102
|
+
### B. Write-operation Post-link Completion
|
|
103
|
+
|
|
104
|
+
When these writes succeed and `resource_id` is extractable, call `analysis_common +get_resource_url` and append link output:
|
|
105
|
+
- `dashboard`: `+create_dashboard`, `+update_dashboard`
|
|
106
|
+
- `report`: `+create_report`
|
|
107
|
+
- `metric`: `+create_metric`, `+update_metric`
|
|
108
|
+
- `alert`: `+create_alert`, `+update_alert`
|
|
109
|
+
- `tag`: `+create_tag`, `+update_tag`
|
|
110
|
+
- `cluster`: `+create_cluster`, `+create_result_cluster`, `+update_cluster`
|
|
111
|
+
- `virtual_event`: `+create_virtual_event`
|
|
112
|
+
- `event_virtual_prop` / `user_virtual_prop`: `+create_virtual_property`
|
|
113
|
+
- `super_event` / `super_prop_event` / `super_prop_user`: `+batch_create_metadata`, `+batch_edit_metadata`
|
|
114
|
+
|
|
115
|
+
Closed-loop check (must be explicit in result):
|
|
116
|
+
- Write result
|
|
117
|
+
- `resource_id` checked
|
|
118
|
+
- `+get_resource_url` called or skipped (no ID)
|
|
119
|
+
- Link completion status
|
|
120
|
+
|
|
121
|
+
### C. FUZZY_SEARCH_FALLBACK
|
|
122
|
+
|
|
123
|
+
For list commands with `--query` parameter (list_reports, list_dashboards, list_events, list_clusters, list_tags, list_alerts, list_metrics):
|
|
124
|
+
|
|
125
|
+
1. **First attempt**: Use `--query` with user-provided keyword for fuzzy search
|
|
126
|
+
2. **If no results found**, retry up to 2 more times with:
|
|
127
|
+
- Broader keywords (remove modifiers, use root words)
|
|
128
|
+
- Alternative terms or synonyms
|
|
129
|
+
3. **After 3 failed fuzzy attempts**, fall back to full list (omit `--query`)
|
|
130
|
+
4. **Present full list** to user and ask them to identify the target resource
|
|
131
|
+
5. **Never proceed** with operations on non-existent resources
|
|
132
|
+
|
|
133
|
+
**Example workflow:**
|
|
134
|
+
- User asks: "Find active user report"
|
|
135
|
+
- Attempt 1: `--query "active user"` → no results
|
|
136
|
+
- Attempt 2: `--query "active"` → no results
|
|
137
|
+
- Attempt 3: `--query "user"` → no results
|
|
138
|
+
- Fallback: list all reports, show to user, ask for selection
|
|
139
|
+
|
|
140
|
+
### D. QUERY_EXISTING_FIRST
|
|
141
|
+
|
|
142
|
+
Before executing ad-hoc queries (`query_adhoc`), MUST check for existing reports/dashboards first:
|
|
143
|
+
|
|
144
|
+
**Mandatory workflow for data queries:**
|
|
145
|
+
|
|
146
|
+
1. **Identify user intent** - Extract what metrics/dimensions/filters the user wants
|
|
147
|
+
2. **Search existing reports** - Use `list_reports --query <keyword>` to find matching reports
|
|
148
|
+
3. **Search existing dashboards** - Use `list_dashboards --query <keyword>` to find matching dashboards
|
|
149
|
+
4. **If found** - Use `query_report_data` or `query_dashboard_report_data` to get data from existing assets
|
|
150
|
+
5. **If not found** - Only then use `query_adhoc` for ad-hoc analysis
|
|
151
|
+
|
|
152
|
+
**Rationale:**
|
|
153
|
+
- **Performance**: Existing reports are pre-computed and faster
|
|
154
|
+
- **Consistency**: Reports have business-defined metrics and calibrated logic
|
|
155
|
+
- **Resource efficiency**: Avoid redundant computation
|
|
156
|
+
- **Permissions**: Users may have report access but not ad-hoc query permissions
|
|
157
|
+
|
|
158
|
+
**Example:**
|
|
159
|
+
- User: "Query active users in last 7 days"
|
|
160
|
+
- Step 1: `list_reports --query "active user"` → found "DAU Active Users Report"
|
|
161
|
+
- Step 2: `query_report_data --report_id <id>` → return data
|
|
162
|
+
- ❌ WRONG: Directly use `query_adhoc` without checking existing reports
|
|
163
|
+
|
|
164
|
+
**Exceptions (when ad-hoc is acceptable):**
|
|
165
|
+
- User explicitly requests "ad-hoc query" or "ad-hoc analysis"
|
|
166
|
+
- User wants custom filters/groupings not available in existing reports
|
|
167
|
+
- User is exploring data for new insights (exploratory analysis)
|
|
168
|
+
- No matching reports found after search + fallback
|
|
169
|
+
|
|
170
|
+
## Tool Groups (69)
|
|
171
|
+
|
|
172
|
+
### analysis (31)
|
|
173
|
+
|
|
174
|
+
Alerts (5):
|
|
175
|
+
- `+get_alert_definition_schema` ([doc](references/get_alert_definition_schema.md))
|
|
176
|
+
- `+list_alerts` ([doc](references/list_alerts.md))
|
|
177
|
+
- `+get_alert` ([doc](references/get_alert.md))
|
|
178
|
+
- `+create_alert` ([doc](references/create_alert.md))
|
|
179
|
+
- `+update_alert` ([doc](references/update_alert.md))
|
|
180
|
+
|
|
181
|
+
Reports and Dashboards (13):
|
|
182
|
+
- `+create_report` ([doc](references/create_report.md))
|
|
183
|
+
- `+get_report_definition` ([doc](references/get_report_definition.md))
|
|
184
|
+
- `+list_reports` ([doc](references/list_reports.md))
|
|
185
|
+
- `+query_report_data` ([doc](references/query_report_data.md))
|
|
186
|
+
- `+create_dashboard` ([doc](references/create_dashboard.md))
|
|
187
|
+
- `+list_dashboards` ([doc](references/list_dashboards.md))
|
|
188
|
+
- `+query_dashboard_detail` ([doc](references/query_dashboard_detail.md))
|
|
189
|
+
- `+query_dashboard_report_data` ([doc](references/query_dashboard_report_data.md))
|
|
190
|
+
- `+update_dashboard` ([doc](references/update_dashboard.md))
|
|
191
|
+
- `+create_or_update_dashboard_note` ([doc](references/create_or_update_dashboard_note.md))
|
|
192
|
+
- `+list_public_access_links` ([doc](references/list_public_access_links.md))
|
|
193
|
+
- `+create_public_access_link` ([doc](references/create_public_access_link.md))
|
|
194
|
+
- `+update_public_access_link` ([doc](references/update_public_access_link.md))
|
|
195
|
+
|
|
196
|
+
Model Analysis (6):
|
|
197
|
+
- `+query_adhoc` ([doc](references/query_adhoc.md))
|
|
198
|
+
- `+drilldown_users` ([doc](references/drilldown_users.md))
|
|
199
|
+
- `+drilldown_user_events` ([doc](references/drilldown_user_events.md))
|
|
200
|
+
- `+create_result_cluster` ([doc](references/create_result_cluster.md))
|
|
201
|
+
- `+load_filters` ([doc](references/load_filters.md))
|
|
202
|
+
- `+get_table_columns` ([doc](references/get_table_columns.md))
|
|
203
|
+
|
|
204
|
+
Entity/Event Details (4):
|
|
205
|
+
- `+query_entity_details` ([doc](references/query_entity_details.md))
|
|
206
|
+
- `+query_event_details` ([doc](references/query_event_details.md))
|
|
207
|
+
- `+build_entity_details_sql` ([doc](references/build_entity_details_sql.md))
|
|
208
|
+
- `+build_event_details_sql` ([doc](references/build_event_details_sql.md))
|
|
209
|
+
|
|
210
|
+
Schema (3):
|
|
211
|
+
- `+get_analysis_query_schema` ([doc](references/get_analysis_query_schema.md))
|
|
212
|
+
- `+get_filter_schema` ([doc](references/get_filter_schema.md))
|
|
213
|
+
- `+get_groupby_schema` ([doc](references/get_groupby_schema.md))
|
|
214
|
+
|
|
215
|
+
### analysis_audience (14)
|
|
216
|
+
|
|
217
|
+
Clusters (6):
|
|
218
|
+
- `+create_cluster` ([doc](references/create_cluster.md))
|
|
219
|
+
- `+get_clusters_by_name` ([doc](references/get_clusters_by_name.md))
|
|
220
|
+
- `+list_cluster_members` ([doc](references/list_cluster_members.md))
|
|
221
|
+
- `+list_clusters` ([doc](references/list_clusters.md))
|
|
222
|
+
- `+update_cluster` ([doc](references/update_cluster.md))
|
|
223
|
+
- `+refresh_cluster` ([doc](references/refresh_cluster.md))
|
|
224
|
+
|
|
225
|
+
Tags (6):
|
|
226
|
+
- `+create_tag` ([doc](references/create_tag.md))
|
|
227
|
+
- `+get_tags_by_name` ([doc](references/get_tags_by_name.md))
|
|
228
|
+
- `+list_tag_members` ([doc](references/list_tag_members.md))
|
|
229
|
+
- `+list_tags` ([doc](references/list_tags.md))
|
|
230
|
+
- `+update_tag` ([doc](references/update_tag.md))
|
|
231
|
+
- `+refresh_tag` ([doc](references/refresh_tag.md))
|
|
232
|
+
|
|
233
|
+
Schema Definitions (2):
|
|
234
|
+
- `+get_cluster_definition_schema` ([doc](references/get_cluster_definition_schema.md))
|
|
235
|
+
- `+get_tag_definition_schema` ([doc](references/get_tag_definition_schema.md))
|
|
236
|
+
|
|
237
|
+
### analysis_meta (20)
|
|
238
|
+
|
|
239
|
+
Metadata and Governance (10):
|
|
240
|
+
- `+list_events` ([doc](references/list_events.md))
|
|
241
|
+
- `+list_properties` ([doc](references/list_properties.md))
|
|
242
|
+
- `+list_metrics` ([doc](references/list_metrics.md))
|
|
243
|
+
- `+get_metric` ([doc](references/get_metric.md))
|
|
244
|
+
- `+create_metric` ([doc](references/create_metric.md))
|
|
245
|
+
- `+update_metric` ([doc](references/update_metric.md))
|
|
246
|
+
- `+batch_edit_metadata` ([doc](references/batch_edit_metadata.md))
|
|
247
|
+
- `+batch_create_metadata` ([doc](references/batch_create_metadata.md))
|
|
248
|
+
- `+create_virtual_event` ([doc](references/create_virtual_event.md))
|
|
249
|
+
- `+create_virtual_property` ([doc](references/create_virtual_property.md))
|
|
250
|
+
|
|
251
|
+
Project and Tracking (11):
|
|
252
|
+
- `+get_project_config` ([doc](references/get_project_config.md))
|
|
253
|
+
- `+list_project_users` ([doc](references/list_project_users.md))
|
|
254
|
+
- `+get_track_program` ([doc](references/get_track_program.md))
|
|
255
|
+
- `+save_track_items` ([doc](references/save_track_items.md))
|
|
256
|
+
- `+delete_track_items` ([doc](references/delete_track_items.md))
|
|
257
|
+
- `+generate_track_program` ([doc](references/generate_track_program.md))
|
|
258
|
+
- `+generate_track_sdk_sample` ([doc](references/generate_track_sdk_sample.md))
|
|
259
|
+
- `+create_project_mark_time` ([doc](references/create_project_mark_time.md))
|
|
260
|
+
- `+update_project_mark_time` ([doc](references/update_project_mark_time.md))
|
|
261
|
+
- `+list_project_mark_times` ([doc](references/list_project_mark_times.md))
|
|
262
|
+
- `+delete_project_mark_times` ([doc](references/delete_project_mark_times.md))
|
|
263
|
+
|
|
264
|
+
Entity Catalog (1):
|
|
265
|
+
- `+list_entities` ([doc](references/list_entities.md))
|
|
266
|
+
|
|
267
|
+
### analysis_common (2)
|
|
268
|
+
|
|
269
|
+
- `+list_projects` ([doc](references/list_projects.md))
|
|
270
|
+
- `+get_resource_url` ([doc](references/get_resource_url.md))
|
|
271
|
+
|
|
272
|
+
## Quick Verification
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
ae-cli analysis --help
|
|
276
|
+
ae-cli analysis_audience --help
|
|
277
|
+
ae-cli analysis_meta --help
|
|
278
|
+
ae-cli analysis_common --help
|
|
279
|
+
npm run verify:analysis-tools
|
|
280
|
+
npm run verify:analysis-audience-tools
|
|
281
|
+
npm run verify:analysis-meta-tools
|
|
282
|
+
npm run verify:analysis-common-tools
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
## Reference Docs
|
|
286
|
+
|
|
287
|
+
See the unified `references/` directory (69 command docs total).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# analysis_meta +batch_create_metadata (Batch Create Metadata)
|
|
2
2
|
|
|
3
|
-
> **Prerequisite:**
|
|
3
|
+
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
4
|
|
|
5
5
|
Domain: **Metadata Query**
|
|
6
6
|
|
|
@@ -9,8 +9,8 @@ Domain: **Metadata Query**
|
|
|
9
9
|
|
|
10
10
|
## Commands
|
|
11
11
|
```bash
|
|
12
|
-
ae-cli analysis_meta +batch_create_metadata --project_id
|
|
13
|
-
ae-cli analysis_meta +batch_create_metadata --project_id
|
|
12
|
+
ae-cli analysis_meta +batch_create_metadata --project_id <project_id>
|
|
13
|
+
ae-cli analysis_meta +batch_create_metadata --project_id <project_id> --events '[{"eventName":"purchase"}]' --event_properties '[{"propName":"price","selectType":"number"}]' --user_properties '[{"propName":"vip_level","selectType":"string"}]'
|
|
14
14
|
ae-cli analysis_meta +batch_create_metadata --dry-run
|
|
15
15
|
```
|
|
16
16
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# analysis_meta +batch_edit_metadata (Batch Edit Metadata)
|
|
2
2
|
|
|
3
|
-
> **Prerequisite:**
|
|
3
|
+
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
4
|
|
|
5
5
|
Domain: **Metadata Query**
|
|
6
6
|
|
|
@@ -10,7 +10,7 @@ Domain: **Metadata Query**
|
|
|
10
10
|
|
|
11
11
|
## Command
|
|
12
12
|
```bash
|
|
13
|
-
ae-cli analysis_meta +batch_edit_metadata --project_id
|
|
13
|
+
ae-cli analysis_meta +batch_edit_metadata --project_id <project_id> --type event --items '[{"eventName":"purchase","eventDesc":"Purchase"}]'
|
|
14
14
|
ae-cli analysis_meta +batch_edit_metadata --dry-run
|
|
15
15
|
```
|
|
16
16
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# analysis +build_entity_details_sql (Generate Entity Details SQL)
|
|
2
2
|
|
|
3
|
-
> **Prerequisite:**
|
|
3
|
+
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
4
|
|
|
5
5
|
Domain: **Entity details SQL queries**
|
|
6
6
|
|
|
@@ -11,22 +11,22 @@ Domain: **Entity details SQL queries**
|
|
|
11
11
|
|
|
12
12
|
## Mandatory prerequisites (MUST)
|
|
13
13
|
- Before constructing `--definition` / `--properties`, you must first read and follow these reference documents:
|
|
14
|
-
- [
|
|
15
|
-
- [
|
|
16
|
-
- [
|
|
14
|
+
- [`./get_cluster_definition_schema.md`](./get_cluster_definition_schema.md)
|
|
15
|
+
- [`./list_events.md`](./list_events.md)
|
|
16
|
+
- [`./list_properties.md`](./list_properties.md)
|
|
17
17
|
- Do not generate the final `definition` / `properties` until the documentation review and prerequisite command calls are complete.
|
|
18
18
|
|
|
19
19
|
## Prerequisite call chain (required for constructing definition/properties)
|
|
20
20
|
1. First confirm the cluster type (condition / sql).
|
|
21
|
-
2. Read `
|
|
22
|
-
3. Read `
|
|
23
|
-
4. Read `
|
|
21
|
+
2. Read `get_cluster_definition_schema.md`, then call `ae-cli analysis_audience +get_cluster_definition_schema --cluster_type <condition|sql>` to get the structure.
|
|
22
|
+
3. Read `list_events.md`, then call `ae-cli analysis_meta +list_events --project_id <project_id>`.
|
|
23
|
+
4. Read `list_properties.md`, then call `ae-cli analysis_meta +list_properties --project_id <project_id>`.
|
|
24
24
|
5. Build `definition` (and optional `properties`) from the schema + metadata, then call `+build_entity_details_sql`.
|
|
25
25
|
|
|
26
26
|
## Command
|
|
27
27
|
```bash
|
|
28
|
-
ae-cli analysis +build_entity_details_sql --project_id
|
|
29
|
-
ae-cli analysis +build_entity_details_sql --project_id
|
|
28
|
+
ae-cli analysis +build_entity_details_sql --project_id <project_id> --definition '{}'
|
|
29
|
+
ae-cli analysis +build_entity_details_sql --project_id <project_id> --entity_id 1001 --definition '{}' --properties '{}' --sort_by time --sort_order desc --limit 100 --zone_offset 8
|
|
30
30
|
ae-cli analysis +build_entity_details_sql --dry-run
|
|
31
31
|
```
|
|
32
32
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# analysis +build_event_details_sql (generate event detail SQL)
|
|
2
2
|
|
|
3
|
-
> **Prerequisite:**
|
|
3
|
+
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
4
|
|
|
5
5
|
Domain: **Event Detail SQL Queries**
|
|
6
6
|
|
|
@@ -11,21 +11,21 @@ Domain: **Event Detail SQL Queries**
|
|
|
11
11
|
|
|
12
12
|
## Mandatory Prerequisites (MUST)
|
|
13
13
|
- Before building `--filters` / `--properties`, you must first read and follow the following reference docs:
|
|
14
|
-
- [`./
|
|
15
|
-
- [
|
|
16
|
-
- [
|
|
14
|
+
- [`./get_filter_schema.md`](./get_filter_schema.md)
|
|
15
|
+
- [`./list_events.md`](./list_events.md)
|
|
16
|
+
- [`./list_properties.md`](./list_properties.md)
|
|
17
17
|
- Do not generate final `filters` / `properties` until the above docs have been read and the prerequisite commands have been called.
|
|
18
18
|
|
|
19
19
|
## Prerequisite Call Chain (required for filters/properties)
|
|
20
|
-
1. Read `
|
|
21
|
-
2. Read `
|
|
22
|
-
3. Read `
|
|
20
|
+
1. Read `get_filter_schema.md`, then call `ae-cli analysis +get_filter_schema` to get the filter structure.
|
|
21
|
+
2. Read `list_events.md`, then call `ae-cli analysis_meta +list_events --project_id <project_id>` to confirm available event names.
|
|
22
|
+
3. Read `list_properties.md`, then call `ae-cli analysis_meta +list_properties --project_id <project_id>` to get available properties.
|
|
23
23
|
4. Build `filters` / `properties` based on the schema and metadata, then call `+build_event_details_sql`.
|
|
24
24
|
|
|
25
25
|
## Commands
|
|
26
26
|
```bash
|
|
27
|
-
ae-cli analysis +build_event_details_sql --project_id
|
|
28
|
-
ae-cli analysis +build_event_details_sql --project_id
|
|
27
|
+
ae-cli analysis +build_event_details_sql --project_id <project_id> --event_name login --start_time '2026-04-08 00:00:00' --end_time '2026-04-08 23:59:59'
|
|
28
|
+
ae-cli analysis +build_event_details_sql --project_id <project_id> --event_name login --relative_date_range 0-7 --filters '{}' --properties '{}' --sort_by time --sort_order desc --limit 100 --zone_offset 8
|
|
29
29
|
ae-cli analysis +build_event_details_sql --dry-run
|
|
30
30
|
```
|
|
31
31
|
|
package/skills/{te-analysis/references/create-alert.md → ae-analysis/references/create_alert.md}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# analysis +create_alert (Create Alert)
|
|
2
2
|
|
|
3
|
-
> **Prerequisite:**
|
|
3
|
+
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
4
|
|
|
5
5
|
Domain: **Metadata queries**
|
|
6
6
|
|
|
@@ -11,17 +11,17 @@ Domain: **Metadata queries**
|
|
|
11
11
|
|
|
12
12
|
## Mandatory prerequisites (MUST)
|
|
13
13
|
- Before constructing `--definition`, you must first read and follow:
|
|
14
|
-
- [`./
|
|
14
|
+
- [`./get_alert_definition_schema.md`](./get_alert_definition_schema.md)
|
|
15
15
|
- Do not generate the final `definition` until the documentation review and schema call are complete.
|
|
16
16
|
|
|
17
17
|
## Prerequisite call chain (required for constructing definition)
|
|
18
|
-
1. Read `
|
|
18
|
+
1. Read `get_alert_definition_schema.md` to understand the return structure of `+get_alert_definition_schema`.
|
|
19
19
|
2. Call `ae-cli analysis +get_alert_definition_schema` to get the schema.
|
|
20
20
|
3. Build `definition` from the schema, then call `+create_alert`.
|
|
21
21
|
|
|
22
22
|
## Command
|
|
23
23
|
```bash
|
|
24
|
-
ae-cli analysis +create_alert --project_id
|
|
24
|
+
ae-cli analysis +create_alert --project_id <project_id> --definition '{}'
|
|
25
25
|
ae-cli analysis +create_alert --dry-run
|
|
26
26
|
```
|
|
27
27
|
|