@thinkingai/ae-cli 1.0.30 → 6.0.16-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/dist/{auth-U25QJU5D.js → auth-DYC2BGLM.js} +2 -3
  2. package/dist/{auth-H3GJD55A.js → auth-GHBMJ5ZR.js} +33 -17
  3. package/dist/{chunk-CLJF7MQA.js → chunk-2DUEAXV3.js} +1 -1
  4. package/dist/{chunk-SF3KTPIC.js → chunk-5OC7CYCG.js} +2 -2
  5. package/dist/{chunk-SRJIAOBN.js → chunk-6W4QOZAL.js} +10 -0
  6. package/dist/{chunk-I42JGQ2J.js → chunk-BJX3GXWC.js} +3 -5
  7. package/dist/{chunk-GLNZSDKO.js → chunk-DMMEPCST.js} +4 -6
  8. package/dist/{chunk-VJFUB3H3.js → chunk-I5CRVM2S.js} +3 -3
  9. package/dist/{chunk-GSJGPNKK.js → chunk-PN3OS34E.js} +1 -1
  10. package/dist/{chunk-JM34JPCO.js → chunk-RSHMZ3LG.js} +178 -4
  11. package/dist/{client-IN42F223.js → client-2UJ63MVQ.js} +3 -4
  12. package/dist/{config-64G36TJL.js → config-NCUGK6NS.js} +3 -3
  13. package/dist/index.js +2530 -28
  14. package/dist/{model-VZCYNIOG.js → model-SJSOZTRS.js} +2 -2
  15. package/dist/{raw-WJIWC6YP.js → raw-7NVWSVJP.js} +5 -7
  16. package/dist/{sync-NVASAISS.js → sync-GRVO4K3U.js} +3 -3
  17. package/dist/{te-agent-YV4DXEXK.js → te-agent-KZRIEN4N.js} +468 -46
  18. package/dist/{te-analysis-CB3DA5I5.js → te-analysis-VAR4KUOK.js} +144 -29
  19. package/dist/{te-audience-W7SCQFC7.js → te-audience-KMKYI2YJ.js} +22 -15
  20. package/dist/{te-common-FBXVWBSI.js → te-common-WNCZB7R7.js} +4 -5
  21. package/dist/{te-community-LNVDZSGW.js → te-community-JEEFXPB3.js} +10 -11
  22. package/dist/{te-dataops-IPCSSWYH.js → te-dataops-GD3XBYCS.js} +11 -12
  23. package/dist/{te-engage-KARARMIR.js → te-engage-4XHCTS6I.js} +4 -5
  24. package/dist/{te-kb-2Z2CARN3.js → te-kb-B62KFP2A.js} +96 -8
  25. package/dist/{te-meta-PDKLMWXN.js → te-meta-EPZGQN56.js} +9 -10
  26. package/dist/{te-team-SW5B7DHO.js → te-team-YY24VORI.js} +6 -7
  27. package/dist/tracking/i18n/resources/cli/en.json +153 -0
  28. package/dist/tracking/i18n/resources/cli/ja.json +153 -0
  29. package/dist/tracking/i18n/resources/cli/ko.json +153 -0
  30. package/dist/tracking/i18n/resources/cli/zh.json +153 -0
  31. package/package.json +9 -3
  32. package/skills/ae-agent/SKILL.md +65 -25
  33. package/skills/ae-analysis/SKILL.md +108 -8
  34. package/skills/ae-analysis/references/cancel_query.md +39 -0
  35. package/skills/ae-analysis/references/drilldown_user_events.md +4 -2
  36. package/skills/ae-analysis/references/drilldown_users.md +4 -2
  37. package/skills/ae-analysis/references/get_bi_panel_detail.md +35 -0
  38. package/skills/ae-analysis/references/list_alerts.md +1 -1
  39. package/skills/ae-analysis/references/list_bi_panels.md +35 -0
  40. package/skills/ae-analysis/references/list_cluster_members.md +4 -1
  41. package/skills/ae-analysis/references/list_dashboards.md +1 -1
  42. package/skills/ae-analysis/references/list_entities.md +1 -1
  43. package/skills/ae-analysis/references/list_events.md +1 -1
  44. package/skills/ae-analysis/references/list_metrics.md +1 -1
  45. package/skills/ae-analysis/references/list_project_mark_times.md +1 -1
  46. package/skills/ae-analysis/references/list_properties.md +1 -1
  47. package/skills/ae-analysis/references/list_public_access_links.md +1 -1
  48. package/skills/ae-analysis/references/list_reports.md +1 -1
  49. package/skills/ae-analysis/references/list_tag_members.md +4 -1
  50. package/skills/ae-analysis/references/query_adhoc.md +6 -5
  51. package/skills/ae-analysis/references/query_bi_panel_data.md +58 -0
  52. package/skills/ae-analysis/references/query_dashboard_report_data.md +4 -1
  53. package/skills/ae-analysis/references/query_entity_details.md +5 -2
  54. package/skills/ae-analysis/references/query_event_details.md +4 -1
  55. package/skills/ae-analysis/references/query_report_data.md +2 -2
  56. package/skills/ae-analysis-global/SKILL.md +3 -1
  57. package/skills/ae-analysis-intent/SKILL.md +132 -0
  58. package/skills/ae-data-integration-helper/SKILL.md +242 -0
  59. package/skills/ae-data-integration-helper/references/android_sdk_faq.md +179 -0
  60. package/skills/ae-data-integration-helper/references/c_sdk_compilation.md +83 -0
  61. package/skills/ae-data-integration-helper/references/c_sdk_faq.md +416 -0
  62. package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +123 -0
  63. package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +365 -0
  64. package/skills/ae-data-integration-helper/references/index.md +56 -0
  65. package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +118 -0
  66. package/skills/ae-data-integration-helper/references/java_sdk_faq.md +406 -0
  67. package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +129 -0
  68. package/skills/ae-data-integration-helper/references/logbus2_guide.md +309 -0
  69. package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +348 -0
  70. package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +115 -0
  71. package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +118 -0
  72. package/skills/ae-data-integration-helper/references/python_sdk_faq.md +232 -0
  73. package/skills/ae-data-integration-helper/references/restful_api_notes.md +74 -0
  74. package/skills/ae-data-integration-helper/references/sdk_log_guide.md +316 -0
  75. package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +107 -0
  76. package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +115 -0
  77. package/skills/ae-generate-tracking-code/SKILL.md +629 -0
  78. package/skills/ae-generate-tracking-code/references/autotrack-enum.md +183 -0
  79. package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +202 -0
  80. package/skills/ae-generate-tracking-code/references/datax-config.md +43 -0
  81. package/skills/ae-generate-tracking-code/references/debug-script.md +102 -0
  82. package/skills/ae-generate-tracking-code/references/logbus-config.md +200 -0
  83. package/skills/ae-generate-tracking-code/references/modes.md +83 -0
  84. package/skills/ae-generate-tracking-code/references/restful-call.md +36 -0
  85. package/skills/ae-generate-tracking-code/references/sdk-index.md +128 -0
  86. package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +206 -0
  87. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +394 -0
  88. package/skills/ae-generate-tracking-code/references/te-api.md +181 -0
  89. package/skills/ae-generate-tracking-plan/SKILL.md +1083 -0
  90. package/skills/ae-generate-tracking-plan/references/autotrack-events.md +273 -0
  91. package/skills/ae-generate-tracking-plan/references/business-dimension-mapping.md +425 -0
  92. package/skills/ae-generate-tracking-plan/references/te-api.md +100 -0
  93. package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +152 -0
  94. package/skills/ae-kb/SKILL.md +38 -5
  95. package/tracking-plan-template/MMO/346/211/213/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +104 -0
  96. package/tracking-plan-template/MMO/346/211/213/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  97. package/tracking-plan-template/MMO/351/241/265/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v2.md +117 -0
  98. package/tracking-plan-template/MMO/351/241/265/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v2.xlsx +0 -0
  99. package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +72 -0
  100. package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  101. package/tracking-plan-template/SLG/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +86 -0
  102. package/tracking-plan-template/SLG/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  103. package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +80 -0
  104. package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  105. package/tracking-plan-template/TE /345/237/213/347/202/271/347/244/272/344/276/213/346/250/241/346/235/277.md" +40 -0
  106. package/tracking-plan-template/TE /345/237/213/347/202/271/347/244/272/344/276/213/346/250/241/346/235/277.xlsx +0 -0
  107. package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.md +40 -0
  108. package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.xlsx +0 -0
  109. package/tracking-plan-template//344/274/221/351/227/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v2.md +92 -0
  110. package/tracking-plan-template//344/274/221/351/227/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v2.xlsx +0 -0
  111. package/tracking-plan-template//345/215/241/347/211/214/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +119 -0
  112. package/tracking-plan-template//345/215/241/347/211/214/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  113. package/tracking-plan-template//345/241/224/351/230/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_V1.md +130 -0
  114. package/tracking-plan-template//345/241/224/351/230/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_V1.xlsx +0 -0
  115. package/tracking-plan-template//345/276/256/344/277/241/345/260/217/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +52 -0
  116. package/tracking-plan-template//345/276/256/344/277/241/345/260/217/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  117. package/tracking-plan-template//346/215/225/351/261/274/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +68 -0
  118. package/tracking-plan-template//346/215/225/351/261/274/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  119. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/215/241/347/211/214/346/270/270/346/210/217_/345/237/213/347/202/271/346/250/241/347/211/210v1.md +108 -0
  120. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/215/241/347/211/214/346/270/270/346/210/217_/345/237/213/347/202/271/346/250/241/347/211/210v1.xlsx +0 -0
  121. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +119 -0
  122. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  123. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/346/226/227/345/234/260/344/270/273/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +63 -0
  124. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/346/226/227/345/234/260/344/270/273/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  125. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/351/272/273/345/260/206/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v2.md +101 -0
  126. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/351/272/273/345/260/206/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v2.xlsx +0 -0
  127. package/tracking-plan-template//347/224/265/345/225/206/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.md +84 -0
  128. package/tracking-plan-template//347/224/265/345/225/206/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.xlsx +0 -0
  129. package/tracking-plan-template//347/237/255/345/211/247/344/272/247/345/223/201/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.md +79 -0
  130. package/tracking-plan-template//347/237/255/345/211/247/344/272/247/345/223/201/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.xlsx +0 -0
  131. package/tracking-plan-template//347/244/276/344/272/244/350/201/212/345/244/251/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +105 -0
  132. package/tracking-plan-template//347/244/276/344/272/244/350/201/212/345/244/251/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  133. package/tracking-plan-template//351/230/205/350/257/273/347/261/273APP/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +83 -0
  134. package/tracking-plan-template//351/230/205/350/257/273/347/261/273APP/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  135. package/wiki/te-docs/index.md +225 -0
  136. package/wiki/te-docs/raw/advanced-data-type/first-event-check.md +66 -0
  137. package/wiki/te-docs/raw/advanced-data-type/updated-event.md +87 -0
  138. package/wiki/te-docs/raw/advanced-data-type.md +16 -0
  139. package/wiki/te-docs/raw/data-ingestion-guide/about-gdpr.md +55 -0
  140. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/automatic-event-tracking.md +431 -0
  141. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/debugging-and-logging.md +49 -0
  142. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/multi-instance.md +66 -0
  143. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/preset-properties.md +466 -0
  144. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/third-party-integration.md +127 -0
  145. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced.md +513 -0
  146. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/compliance.md +24 -0
  147. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/release-notes.md +177 -0
  148. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android.md +228 -0
  149. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/c-advanced.md +419 -0
  150. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/release-notes.md +45 -0
  151. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c.md +110 -0
  152. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/client-side-sdk-faq.md +52 -0
  153. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/cpp-advanced.md +366 -0
  154. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/release-notes.md +103 -0
  155. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp.md +201 -0
  156. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/compliance.md +26 -0
  157. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/automatically-track-events.md +117 -0
  158. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/debugging-and-logging.md +47 -0
  159. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/preset-properties.md +52 -0
  160. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced.md +267 -0
  161. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/release-notes.md +82 -0
  162. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter.md +139 -0
  163. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/compliance.md +26 -0
  164. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/automatically-track-events.md +121 -0
  165. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/debugging-and-logging.md +54 -0
  166. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/preset-properties.md +18 -0
  167. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced.md +305 -0
  168. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/release-notes.md +79 -0
  169. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native.md +137 -0
  170. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/release-notes.md +24 -0
  171. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/automatically-track-events.md +54 -0
  172. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/debugging-and-logging.md +53 -0
  173. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/multi-instance.md +42 -0
  174. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/preset-properties.md +119 -0
  175. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/support-native.md +81 -0
  176. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced.md +331 -0
  177. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app.md +156 -0
  178. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform.md +12 -0
  179. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/automatic-event-tracking.md +29 -0
  180. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/debugging-and-logging.md +47 -0
  181. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/multi-instance.md +21 -0
  182. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/preset-properties.md +249 -0
  183. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced.md +301 -0
  184. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/compliance.md +24 -0
  185. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/release-notes.md +51 -0
  186. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x.md +281 -0
  187. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/automatic-event-tracking.md +70 -0
  188. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/debugging-and-logging.md +57 -0
  189. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/native-support.md +104 -0
  190. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/preset-properties.md +91 -0
  191. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance.md +374 -0
  192. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/compliance.md +35 -0
  193. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/release-notes.md +109 -0
  194. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator.md +170 -0
  195. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/compliance.md +28 -0
  196. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/automatic-event-tracking.md +29 -0
  197. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/debugging-and-logging.md +58 -0
  198. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/preset-properties.md +43 -0
  199. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced.md +204 -0
  200. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/release-notes.md +29 -0
  201. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona.md +269 -0
  202. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/compliance.md +24 -0
  203. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/release-notes.md +177 -0
  204. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/automatic-event-tracking.md +119 -0
  205. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/debugging-and-logging.md +47 -0
  206. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/multi-instance.md +50 -0
  207. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/native-pluggable.md +43 -0
  208. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/preset-properties.md +212 -0
  209. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/third-party-integration.md +77 -0
  210. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced.md +396 -0
  211. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity.md +176 -0
  212. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/compliance.md +24 -0
  213. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/release-notes.md +81 -0
  214. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/automatic-event-tracking.md +79 -0
  215. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/debugging-and-logging.md +31 -0
  216. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/preset-properties.md +25 -0
  217. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/third-party-integrations.md +141 -0
  218. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced.md +278 -0
  219. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal.md +190 -0
  220. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine.md +14 -0
  221. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/h5-and-app-sdk-connection.md +147 -0
  222. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/instant-app-and-game.md +24 -0
  223. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/compliance.md +24 -0
  224. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/automatic-event-tracking.md +272 -0
  225. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/debugging-and-logging.md +77 -0
  226. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/multi-instance.md +142 -0
  227. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/preset-properties.md +484 -0
  228. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/third-party-integrations.md +132 -0
  229. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced.md +682 -0
  230. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/release-notes.md +163 -0
  231. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios.md +304 -0
  232. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/compliance.md +29 -0
  233. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/automatic-event-tracking.md +136 -0
  234. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/debugging-and-logging.md +48 -0
  235. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/multi-instance.md +50 -0
  236. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/preset-properties.md +132 -0
  237. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced.md +462 -0
  238. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/release-notes.md +107 -0
  239. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript.md +208 -0
  240. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/debugging-and-logging.md +62 -0
  241. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/preset-properties.md +118 -0
  242. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced.md +556 -0
  243. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos.md +231 -0
  244. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk.md +25 -0
  245. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/filebeat-logstash-user-guide.md +610 -0
  246. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/logbus2-user-guide.md +1215 -0
  247. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/ta-datax-writer-plugin-user-guide.md +278 -0
  248. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools.md +15 -0
  249. package/wiki/te-docs/raw/data-ingestion-guide/privacy-policy.md +38 -0
  250. package/wiki/te-docs/raw/data-ingestion-guide/restful-api-user-guide.md +155 -0
  251. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-FM9Cwz.md +37 -0
  252. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-RSyfw7.md +41 -0
  253. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging.md +89 -0
  254. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-OxzWw.md +126 -0
  255. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-VuE3wr.md +126 -0
  256. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties.md +126 -0
  257. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-IauKwI.md +175 -0
  258. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-YAilwk.md +210 -0
  259. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced.md +211 -0
  260. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-PVazwa.md +62 -0
  261. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-TADbwY.md +50 -0
  262. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes.md +69 -0
  263. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-V2W3wv.md +131 -0
  264. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-Zf9Jwl.md +179 -0
  265. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c.md +189 -0
  266. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/debugging-and-logging.md +38 -0
  267. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/preset-properties.md +126 -0
  268. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced.md +113 -0
  269. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/release-notes.md +34 -0
  270. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang.md +155 -0
  271. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/debugging-and-logging.md +42 -0
  272. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/preset-properties.md +126 -0
  273. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced.md +157 -0
  274. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/release-notes.md +72 -0
  275. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang.md +148 -0
  276. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/debugging-and-logging.md +49 -0
  277. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/preset-properties.md +126 -0
  278. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced.md +223 -0
  279. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/release-notes.md +88 -0
  280. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java.md +174 -0
  281. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/debugging-and-logging.md +46 -0
  282. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/preset-properties.md +126 -0
  283. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced.md +182 -0
  284. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/release-notes.md +61 -0
  285. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua.md +121 -0
  286. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/debugging-and-logging.md +55 -0
  287. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/preset-properties.md +126 -0
  288. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced.md +225 -0
  289. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/release-notes.md +45 -0
  290. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs.md +141 -0
  291. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/debugging-and-logging.md +41 -0
  292. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/preset-properties.md +126 -0
  293. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced.md +216 -0
  294. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/release-notes.md +45 -0
  295. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php.md +173 -0
  296. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/debugging-and-logging.md +40 -0
  297. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/preset-properties.md +126 -0
  298. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced.md +206 -0
  299. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/release-notes.md +51 -0
  300. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python.md +116 -0
  301. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/release-notes.md +44 -0
  302. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/debugging-and-logging.md +47 -0
  303. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/preset-properties.md +126 -0
  304. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced.md +189 -0
  305. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby.md +142 -0
  306. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk.md +22 -0
  307. package/wiki/te-docs/raw/data-ingestion-guide/thinkingdata-privacy-policy.md +37 -0
  308. package/wiki/te-docs/raw/data-ingestion-guide.md +48 -0
  309. package/wiki/te-docs/raw/preparations-before-data-ingestion/data-rules.md +396 -0
  310. package/wiki/te-docs/raw/preparations-before-data-ingestion/preset-properties-and-system-fields.md +957 -0
  311. package/wiki/te-docs/raw/preparations-before-data-ingestion/user-identification-rules.md +723 -0
  312. package/wiki/te-docs/raw/preparations-before-data-ingestion.md +203 -0
  313. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//345/220/210/350/247/204/346/214/207/345/215/227.md +96 -0
  314. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//346/233/264/346/226/260/346/227/245/345/277/227.md +97 -0
  315. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +52 -0
  316. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +48 -0
  317. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +447 -0
  318. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227.md +370 -0
  319. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony.md +172 -0
  320. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
  321. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//346/233/264/346/226/260/346/227/245/345/277/227.md +209 -0
  322. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +71 -0
  323. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +49 -0
  324. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +125 -0
  325. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +498 -0
  326. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227.md +612 -0
  327. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217.md +373 -0
  328. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//345/220/210/350/247/204/346/214/207/345/215/227.md +26 -0
  329. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//346/233/264/346/226/260/346/227/245/345/277/227.md +32 -0
  330. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +48 -0
  331. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +30 -0
  332. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +61 -0
  333. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227.md +236 -0
  334. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua.md +200 -0
  335. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//346/233/264/346/226/260/346/227/245/345/277/227.md +83 -0
  336. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +66 -0
  337. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
  338. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +62 -0
  339. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +358 -0
  340. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227.md +615 -0
  341. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret.md +166 -0
  342. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//346/233/264/346/226/260/346/227/245/345/277/227.md +87 -0
  343. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +71 -0
  344. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
  345. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +61 -0
  346. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +406 -0
  347. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227.md +597 -0
  348. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair.md +179 -0
  349. package/wiki/te-docs/schema.md +16 -0
  350. package/wiki/te-docs/synthesis/batch-ingest-comparison.md +324 -0
  351. package/wiki/te-docs/synthesis/js-sdk-cheatsheet.md +538 -0
  352. package/wiki/te-docs/synthesis/restful-api-reference.md +363 -0
  353. package/wiki/te-docs/synthesis/sdk-selection.md +372 -0
  354. package/wiki/te-docs/synthesis/server-sdk-overview.md +449 -0
  355. package/dist/chunk-U6TKB3IV.js +0 -171
@@ -1,11 +1,12 @@
1
1
  ---
2
2
  name: ae-analysis
3
- version: 3.0.0
3
+ version: 3.1.0
4
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
5
  ---
6
6
 
7
7
  # ae-analysis
8
8
 
9
+ > **CRITICAL - This skill is self-contained.** Use the Global AE CLI Rules below; do not require a separate shared skill for analysis-side tasks.
9
10
  > **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.**
10
11
  > **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).
11
12
  > **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`.
@@ -195,9 +196,102 @@ Legacy query_adhoc chain:
195
196
  3. Build QP manually from the documented schema and verified project metadata.
196
197
  4. Call `+query_adhoc`.
197
198
 
198
- ## Tool Groups (73)
199
+ ### F. ABSOLUTE_CONTRIBUTION_ATTRIBUTION
199
200
 
200
- ### analysis (35)
201
+ **When attributing a metric change to dimensions, you MUST use Absolute Contribution Decomposition. Never judge the primary driver based solely on relative change percentage.**
202
+
203
+ #### Problem Definition
204
+
205
+ Base rate fallacy causes inaccurate attribution:
206
+
207
+ | Dimension | Baseline | Comparison | Absolute Δ | Relative Δ | Contribution |
208
+ |-----------|----------|------------|-----------|-----------|-------------|
209
+ | A | 1 | 5 | +4 | +400% | **40%** |
210
+ | B | 50 | 55 | +5 | +10% | **50%** |
211
+ | C | 49 | 50 | +1 | +2% | **10%** |
212
+
213
+ Wrong: "Dimension A grew 400%, it is the main driver."
214
+ Correct: "Dimension B contributed 50% of the absolute increase (+5), making it the primary driver."
215
+
216
+ #### Algorithm
217
+
218
+ ##### Scenario 1: Additive Metrics
219
+
220
+ Use this for count-based metrics such as DAU, event counts, and payment amounts.
221
+
222
+ ```
223
+ delta_total = V_total(comparison) - V_total(baseline)
224
+ delta_dim_i = V_dim_i(comparison) - V_dim_i(baseline)
225
+ contribution_pct_i = delta_dim_i / delta_total * 100%
226
+ ```
227
+
228
+ - Sort by `|delta_dim_i|` in descending order.
229
+ - Do not sort by `delta_dim_i / V_dim_i(baseline)`.
230
+
231
+ ##### Scenario 2: Ratio / Conversion Metrics
232
+
233
+ Ratio changes come from two components:
234
+ - **Composition effect**: changes in subgroup weight.
235
+ - **Rate effect**: changes in each subgroup's own rate.
236
+
237
+ Simplified mode is the default:
238
+
239
+ ```
240
+ rate_change = R_total(comparison) - R_total(baseline)
241
+ ```
242
+
243
+ Report subgroup rates hierarchically and call out structural impact in the conclusion.
244
+
245
+ Precise decomposition is only required when the user explicitly requests structural breakdown:
246
+
247
+ ```
248
+ contribution_rate_i = w_i(baseline) * [R_i(comparison) - R_i(baseline)]
249
+ contribution_weight_i = [w_i(comparison) - w_i(baseline)] * R_i(baseline)
250
+ ```
251
+
252
+ Where `w_i` is the subgroup's share of total users.
253
+
254
+ #### Execution Workflow
255
+
256
+ 1. Identify metric type: additive uses Scenario 1, ratio uses Scenario 2.
257
+ 2. Fetch baseline total and dimension values with `query_adhoc` and grouped dimensions.
258
+ 3. Fetch comparison total and dimension values with the same scope.
259
+ 4. Compute `delta_dim_i` for each dimension.
260
+ 5. Compute `contribution_pct_i = delta_dim_i / delta_total * 100%`.
261
+ 6. Sort by absolute contribution magnitude and preserve sign.
262
+ 7. Present the conclusion.
263
+
264
+ If the builder supports comparison mode for both periods in one query, prefer it to avoid two `query_adhoc` calls.
265
+
266
+ #### Output Format
267
+
268
+ ```
269
+ Core conclusion: [Metric] from [baseline] to [comparison], changed by [±][absolute] ([±][percent])
270
+
271
+ Dimension contribution ranking (by absolute contribution, descending):
272
+ 1. [dimension value] -> [±][absolute delta] (contributed [xx]%), relative change [±][percent]
273
+ 2. [dimension value] -> [±][absolute delta] (contributed [xx]%), relative change [±][percent]
274
+ ...
275
+
276
+ Conclusion: "[Metric] [increase/decrease] was primarily driven by [top dimension] (contributed [xx]% of the change), followed by [second dimension] ([xx]%)"
277
+ ```
278
+
279
+ If any dimension shows a cross-effect, such as positive contribution but negative relative change, call it out explicitly.
280
+
281
+ #### Exceptions
282
+
283
+ Skip absolute contribution decomposition when:
284
+ - The user explicitly asks for growth-rate or percentage-change ranking only.
285
+ - The user asks for a single dimension's trend without cross-dimension comparison.
286
+ - A dimension baseline is zero; mark it as a new dimension separately.
287
+
288
+ #### Self-Check
289
+
290
+ After outputting attribution results, verify that dimension contributions sum to approximately 100%. If the sum deviates from 100% by more than 5 percentage points, flag that some dimensions may be missing or data scoping may be inconsistent.
291
+
292
+ ## Tool Groups (79)
293
+
294
+ ### analysis (40)
201
295
 
202
296
  Alerts (5):
203
297
  - `+get_alert_definition_schema` ([doc](references/get_alert_definition_schema.md))
@@ -206,11 +300,12 @@ Alerts (5):
206
300
  - `+create_alert` ([doc](references/create_alert.md))
207
301
  - `+update_alert` ([doc](references/update_alert.md))
208
302
 
209
- Reports and Dashboards (13):
303
+ Reports and Dashboards (17):
210
304
  - `+create_report` ([doc](references/create_report.md))
211
305
  - `+get_report_definition` ([doc](references/get_report_definition.md))
212
306
  - `+list_reports` ([doc](references/list_reports.md))
213
307
  - `+query_report_data` ([doc](references/query_report_data.md))
308
+ - `+create_space` ([doc](references/create_space.md))
214
309
  - `+create_dashboard` ([doc](references/create_dashboard.md))
215
310
  - `+list_dashboards` ([doc](references/list_dashboards.md))
216
311
  - `+query_dashboard_detail` ([doc](references/query_dashboard_detail.md))
@@ -220,13 +315,17 @@ Reports and Dashboards (13):
220
315
  - `+list_public_access_links` ([doc](references/list_public_access_links.md))
221
316
  - `+create_public_access_link` ([doc](references/create_public_access_link.md))
222
317
  - `+update_public_access_link` ([doc](references/update_public_access_link.md))
318
+ - `+list_bi_panels` ([doc](references/list_bi_panels.md))
319
+ - `+get_bi_panel_detail` ([doc](references/get_bi_panel_detail.md))
320
+ - `+query_bi_panel_data` ([doc](references/query_bi_panel_data.md))
223
321
 
224
- Model Analysis (10):
322
+ Model Analysis (11):
225
323
  - `+build_event_analysis_qp` ([doc](references/build_event_analysis_qp.md))
226
324
  - `+build_retention_analysis_qp` ([doc](references/build_retention_analysis_qp.md))
227
325
  - `+build_funnel_analysis_qp` ([doc](references/build_funnel_analysis_qp.md))
228
326
  - `+build_prop_analysis_qp` ([doc](references/build_prop_analysis_qp.md))
229
327
  - `+query_adhoc` ([doc](references/query_adhoc.md))
328
+ - `+cancel_query` ([doc](references/cancel_query.md))
230
329
  - `+drilldown_users` ([doc](references/drilldown_users.md))
231
330
  - `+drilldown_user_events` ([doc](references/drilldown_user_events.md))
232
331
  - `+create_result_cluster` ([doc](references/create_result_cluster.md))
@@ -266,7 +365,7 @@ Schema Definitions (2):
266
365
  - `+get_cluster_definition_schema` ([doc](references/get_cluster_definition_schema.md))
267
366
  - `+get_tag_definition_schema` ([doc](references/get_tag_definition_schema.md))
268
367
 
269
- ### analysis_meta (20)
368
+ ### analysis_meta (23)
270
369
 
271
370
  Metadata and Governance (10):
272
371
  - `+list_events` ([doc](references/list_events.md))
@@ -293,7 +392,8 @@ Project and Tracking (11):
293
392
  - `+list_project_mark_times` ([doc](references/list_project_mark_times.md))
294
393
  - `+delete_project_mark_times` ([doc](references/delete_project_mark_times.md))
295
394
 
296
- Entity Catalog (1):
395
+ Entity Catalog (2):
396
+ - `+create_entity` ([doc](references/create_entity.md))
297
397
  - `+list_entities` ([doc](references/list_entities.md))
298
398
 
299
399
  ### analysis_common (2)
@@ -316,4 +416,4 @@ npm run verify:analysis-common-tools
316
416
 
317
417
  ## Reference Docs
318
418
 
319
- See the unified `references/` directory (73 command docs total).
419
+ See the unified `references/` directory (79 command docs total).
@@ -0,0 +1,39 @@
1
+ # analysis +cancel_query (cancel MCP query)
2
+
3
+ > **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
4
+
5
+ Domain: **Query lifecycle**
6
+
7
+ ## Use Cases
8
+ - Cancel a running MCP query when the user asks to stop waiting.
9
+ - Cancel a query when the caller or agent timed out before the query returned but it may still be running on the server.
10
+ - Cancel a query by the same `requestId` that was supplied to or returned by a previous query command.
11
+ - For proactive cancellation, pass `requestId` to the query tool before starting it, then call `cancel_query` with the same value if you stop waiting.
12
+ - If a query returns `fetch failed`, hits an HTTP timeout, or the caller stops waiting, the backend query may still be running; call `+cancel_query --request_id <same value>` with the preset `requestId`.
13
+ - auto-generated requestId is not available when the HTTP request fails before a response, so preset `requestId` before any query that may exceed the CLI/MCP HTTP timeout.
14
+
15
+ ## Command
16
+ ```bash
17
+ ae-cli analysis +cancel_query --request_id mcp_0123456789abcdef0123456789abcdef --yes
18
+ ae-cli analysis +cancel_query --request_id mcp_0123456789abcdef0123456789abcdef --reason "agent timeout" --yes
19
+ ae-cli analysis +cancel_query --request_id mcp_0123456789abcdef0123456789abcdef --dry-run
20
+ ```
21
+
22
+ ## Parameters
23
+ | Parameter | Required | Description |
24
+ |---|---|---|
25
+ | `--request_id` | Yes | Request ID returned by a query tool in `metadata.requestId`, or the requestId supplied before starting the query. It must use `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`. |
26
+ | `--reason` | No | Optional cancellation reason. Default: `MCP_CANCEL_QUERY_TOOL`. |
27
+
28
+ ## Decision Rules
29
+ - This is a write operation. Use `--yes` only when the user clearly asked to cancel or stop a running query.
30
+ - The request must belong to the current MCP user. Otherwise the service returns `REQUEST_NOT_FOUND_OR_NOT_OWNED`.
31
+ - Do not invent a request ID. Use the ID from the query response or the ID explicitly supplied to the original query.
32
+ - This command cancels by request ID only. It does not cancel by SQL text, report ID, dashboard ID, BI panel ID, run ID, or tool call ID.
33
+ - For query commands that expose `--request_id`, prefer supplying a stable ID before execution using `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`, so proactive cancellation does not depend on waiting for the response metadata.
34
+ - For query commands that may exceed the CLI/MCP HTTP timeout, preset `--request_id`; if `fetch failed`, HTTP timeout, or caller timeout happens, immediately call `+cancel_query --request_id <same value> --yes`.
35
+ - For commands that do not expose caller-supplied `request_id`, cancel only if the response includes a request ID.
36
+
37
+ ## Next Steps on Failure
38
+ - If `REQUEST_NOT_FOUND_OR_NOT_OWNED` appears, verify the request ID, user identity, host, and whether the original query already finished.
39
+ - If cancellation succeeds but the UI still shows stale data, refresh the query status/result surface rather than sending another cancel blindly.
@@ -31,7 +31,7 @@ Domain: **Model analysis**
31
31
  ## Command
32
32
  ```bash
33
33
  ae-cli analysis +drilldown_user_events --project_id <project_id> --user_id u_123 --event_names '["login"]' --target_dates '["2026-04-08 00:00:00"]'
34
- ae-cli analysis +drilldown_user_events --project_id <project_id> --user_id u_123 --event_names '["login"]' --target_dates '["2026-04-08 00:00:00"]' --zone_offset 8 --use_cache true --page_num 1 --page_size 20
34
+ ae-cli analysis +drilldown_user_events --project_id <project_id> --user_id u_123 --event_names '["login"]' --target_dates '["2026-04-08 00:00:00"]' --zone_offset 8 --use_cache true --page_num 1 --page_size 20 --request_id mcp_bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
35
35
  ae-cli analysis +drilldown_user_events --dry-run
36
36
  ```
37
37
 
@@ -55,13 +55,15 @@ ae-cli analysis +drilldown_user_events --dry-run
55
55
  | `--entity_value` | No | Optional entity value for multi-entity scenarios |
56
56
  | `--use_cache` | No | Whether to use cache. Default: true |
57
57
  | `--page_num` | No | Start page number, default 1 |
58
- | `--page_size` | No | Page size. Default: 1000, maximum: 100000 |
58
+ | `--page_size` | No | Page size. Default: 1000, maximum: 10000 |
59
+ | `--request_id` | No | 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. |
59
60
  | `--timeout_minutes` | No | Query timeout in minutes |
60
61
 
61
62
  ## Decision Rules
62
63
  - `user_id` / `event_names` / `target_dates` must come from the previous step result and must not be constructed out of thin air.
63
64
  - On the first run, start with only the required parameters (`--project_id`,`--user_id`,`--event_names`,`--target_dates`), and add optional parameters after confirming the path works.
64
65
  - Wrap JSON parameters in single quotes (for example `--event_names '[]'`, `--target_dates '[]'`) to avoid shell escaping issues.
66
+ - For long-running or cancelable drilldowns, supply your own `--request_id` before starting so `+cancel_query` can cancel by the same ID if the caller or user stops waiting. If `fetch failed`, HTTP timeout, or caller timeout happens, the backend query may still be running; call `+cancel_query --request_id <same value>` with the preset ID. The auto-generated requestId is not available when the HTTP request fails before a response. The value must use `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`.
65
67
  - For cross-project troubleshooting, first confirm whether `--project_id` matches the current permissions and target environment.
66
68
 
67
69
  ## Next Steps on Failure
@@ -30,7 +30,7 @@ Domain: **Model Analysis**
30
30
  ## Commands
31
31
  ```bash
32
32
  ae-cli analysis +drilldown_users --project_id <project_id> --model_type event --qp '{}'
33
- ae-cli analysis +drilldown_users --project_id <project_id> --model_type retention --qp '{}' --drilldown_date 2026-04-08 --drilldown_groups '[]' --event_index 8 --is_lost true --retention_days 8 --is_churned_user true --funnel_step 8 --interval demo --distribution_bucket 8 --compare_index 8 --include_total true --relation_val demo --limit 10 --offset 0
33
+ ae-cli analysis +drilldown_users --project_id <project_id> --model_type retention --qp '{}' --drilldown_date 2026-04-08 --drilldown_groups '[]' --event_index 8 --is_lost true --retention_days 8 --is_churned_user true --funnel_step 8 --interval demo --distribution_bucket 8 --compare_index 8 --include_total true --relation_val demo --limit 10 --offset 0 --request_id mcp_cccccccccccccccccccccccccccccccc
34
34
  ae-cli analysis +drilldown_users --dry-run
35
35
  ```
36
36
 
@@ -55,14 +55,16 @@ ae-cli analysis +drilldown_users --dry-run
55
55
  | `--include_total` | No | Whether to query users from the total row. Default: false |
56
56
  | `--relation_val` | No | Relation value used in relation analysis scenarios |
57
57
  | `--use_cache` | No | Whether to use cache. Default: true |
58
- | `--limit` | No | Optional limit. Default: 1000, maximum: 100000. |
58
+ | `--limit` | No | Optional limit. Default: 1000, maximum: 10000. |
59
59
  | `--offset` | No | Optional offset. Default: 0. |
60
+ | `--request_id` | No | 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. |
60
61
  | `--timeout_minutes` | No | Query timeout in minutes. If the query exceeds this time, it will be cancelled automatically. |
61
62
 
62
63
  ## Decision Rules
63
64
  - Drilldown positioning parameters must come from upstream analysis results and must not be fabricated.
64
65
  - `qp` must not be rewritten or "simplified"; it should remain consistent with the source analysis.
65
66
  - For pagination, use `--limit` and `--offset` together. Default limit is 1000, maximum 100000.
67
+ - For long-running or cancelable drilldowns, supply your own `--request_id` before starting so `+cancel_query` can cancel by the same ID if the caller or user stops waiting. If `fetch failed`, HTTP timeout, or caller timeout happens, the backend query may still be running; call `+cancel_query --request_id <same value>` with the preset ID. The auto-generated requestId is not available when the HTTP request fails before a response. The value must use `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`.
66
68
  - For the first run, it is recommended to pass only the required parameters (`--project_id`, `--model_type`, `--qp`) and add optional parameters after confirming the chain works.
67
69
  - Wrap JSON parameters in single quotes (for example `--qp '{}'`, `--drilldown_groups '{}'`) to avoid shell escaping issues.
68
70
  - When dates/time ranges are involved, validate with a short range first and then expand gradually.
@@ -0,0 +1,35 @@
1
+ # analysis +get_bi_panel_detail (read BI panel structure)
2
+
3
+ > **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
4
+
5
+ Domain: **BI panel management**
6
+
7
+ ## Use Cases
8
+ - Read a BI panel's released structure without querying data.
9
+ - Inspect pages, queryable charts, summary page metadata, dashboard-level parameter controls, dashboard-level permission controls, and page chart filter controls.
10
+ - Get `pageKey`, `chartId`, `defaultColumns`, and control schemas needed by `+query_bi_panel_data`.
11
+
12
+ ## Command
13
+ ```bash
14
+ ae-cli analysis +get_bi_panel_detail --project_id <project_id> --panel_id <panel_id>
15
+ ae-cli analysis +get_bi_panel_detail --project_id <project_id> --panel_id <panel_id> --fields '["basic","pages","charts","parameterControls","permissionControls","chartFilterControls","summary"]'
16
+ ae-cli analysis +get_bi_panel_detail --project_id <project_id> --panel_id <panel_id> --dry-run
17
+ ```
18
+
19
+ ## Parameters
20
+ | Parameter | Required | Description |
21
+ |---|---|---|
22
+ | `--project_id` / `-p` | Yes | Project ID |
23
+ | `--panel_id` | Yes | BI panel ID returned by `+list_bi_panels` |
24
+ | `--fields` / `-f` | No | Optional detail sections. Supported values: `basic`, `pages`, `charts`, `parameterControls`, `permissionControls`, `chartFilterControls`, `summary`. |
25
+
26
+ ## Decision Rules
27
+ - This command reads the released BI panel version only. It does not expose version selection.
28
+ - Use `charts` and the three control sections when preparing `+query_bi_panel_data`.
29
+ - `parameterControls` are dashboard-level parameter controls and keep single-value semantics.
30
+ - `permissionControls` are dashboard-level permission control values. Their `allowedValues` are hints, not an MCP-side whitelist.
31
+ - `chartFilterControls` are page-level filter controls and apply only to their `boundChartIds`. Some filters are stored as `pageCharts` components and are returned as non-queryable filter controls.
32
+ - Do not infer internal fields such as `paramList`, `permissionFilters`, `visualCfg`, `whereList`, `field`, `columnName`, `userId`, or `openId`.
33
+
34
+ ## Recommended Chaining
35
+ - `+list_bi_panels` -> `+get_bi_panel_detail` -> `+query_bi_panel_data`
@@ -25,7 +25,7 @@ ae-cli analysis +list_alerts --dry-run
25
25
  |---|---|---|
26
26
  | `--project_id` / `-p` | Yes | Project ID |
27
27
  | `--query` / `-q` | No | Optional keyword filter. Performs fuzzy matching against alert names; if omitted, all alerts are returned. |
28
- | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 50. |
28
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
29
29
  | `--offset` / `-o` | No | Optional page offset. Default: 0. |
30
30
 
31
31
  ## Decision Rules
@@ -0,0 +1,35 @@
1
+ # analysis +list_bi_panels (list BI panels)
2
+
3
+ > **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
4
+
5
+ Domain: **BI panel management**
6
+
7
+ ## Use Cases
8
+ - Discover BI panels accessible to the current MCP user in a project.
9
+ - Search BI panels by name before asking for structure or data.
10
+ - Get lightweight panel metadata such as `panelId`, `name`, `pageCount`, and `hasSummary`.
11
+
12
+ ## Command
13
+ ```bash
14
+ ae-cli analysis +list_bi_panels --project_id <project_id>
15
+ ae-cli analysis +list_bi_panels --project_id <project_id> --query "history" --fields '["panelId","name","pageCount","hasSummary"]' --limit 20 --offset 0
16
+ ae-cli analysis +list_bi_panels --project_id <project_id> --dry-run
17
+ ```
18
+
19
+ ## Parameters
20
+ | Parameter | Required | Description |
21
+ |---|---|---|
22
+ | `--project_id` / `-p` | Yes | Project ID |
23
+ | `--query` / `-q` | No | Optional keyword filter. Fuzzy matches BI panel names. |
24
+ | `--fields` / `-f` | No | Optional returned fields. Supported values: `panelId`, `name`, `spaceId`, `spaceName`, `ownerName`, `updatedAt`, `pageCount`, `hasSummary`. |
25
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
26
+ | `--offset` / `-o` | No | Optional page offset. Default: 0. |
27
+
28
+ ## Decision Rules
29
+ - Use this before `+get_bi_panel_detail` unless the target `panel_id` is already verified in the same project and host.
30
+ - Do not use this command to inspect pages, charts, controls, raw config, SQL, or permission rules.
31
+ - Do not pass `userId` or `openId`; the service uses the current MCP user.
32
+ - If no panel is found by keyword, broaden the keyword or list accessible panels and ask the user to choose.
33
+
34
+ ## Recommended Chaining
35
+ - `+list_bi_panels` -> `+get_bi_panel_detail` -> `+query_bi_panel_data`
@@ -13,7 +13,7 @@ Domain: **Cluster Management**
13
13
  ```bash
14
14
  ae-cli analysis_audience +list_cluster_members --project_id <project_id> --cluster_name demo
15
15
  ae-cli analysis_audience +list_cluster_members --project_id <project_id> --cluster_name demo --property_names '["#user_id","name"]' --use_cache false
16
- ae-cli analysis_audience +list_cluster_members --project_id <project_id> --cluster_name demo --query user_001 --fields '["#user_id","name"]' --limit 20 --offset 0
16
+ ae-cli analysis_audience +list_cluster_members --project_id <project_id> --cluster_name demo --query user_001 --fields '["#user_id","name"]' --limit 20 --offset 0 --request_id mcp_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa --timeout_minutes 8
17
17
  ae-cli analysis_audience +list_cluster_members --dry-run
18
18
  ```
19
19
 
@@ -28,10 +28,13 @@ ae-cli analysis_audience +list_cluster_members --dry-run
28
28
  | `--fields` | No | Optional return field list (JSON array). Invalid fields will fail with `INVALID_FIELDS`. |
29
29
  | `--limit` | No | Optional page size. Default: 20, max: 50. |
30
30
  | `--offset` | No | Optional page offset. Default: 0. |
31
+ | `--request_id` | No | 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. |
32
+ | `--timeout_minutes` | No | Query timeout in minutes. If omitted, 30 minutes is used. |
31
33
 
32
34
  ## Decision Rules
33
35
  - For the first execution, it is recommended to pass only the required parameters (`--project_id`, `--cluster_name`) and add optional parameters after confirming the path works.
34
36
  - `--property_names` must be passed as a JSON array (e.g. `--property_names '["#user_id"]'`).
37
+ - For long-running or cancelable member queries, supply your own `--request_id` before starting so `analysis +cancel_query` can cancel by the same ID if the caller or user stops waiting. If `fetch failed`, HTTP timeout, or caller timeout happens, the backend query may still be running; call `+cancel_query --request_id <same value>` with the preset ID. The auto-generated requestId is not available when the HTTP request fails before a response. The value must use `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`.
35
38
  - When troubleshooting across projects, first confirm whether `--project_id` matches the current permissions and target environment.
36
39
 
37
40
  ## Next Step on Failure
@@ -28,7 +28,7 @@ ae-cli analysis +list_dashboards --dry-run
28
28
  | `--project_id` / `-p` | Yes | Project ID |
29
29
  | `--query` / `-q` | No | Optional keyword filter. Performs fuzzy matching against dashboard names and AI remarks; if omitted, all accessible dashboards are returned. |
30
30
  | `--fields` / `-f` | No | Optional fields to return (JSON array). Supported fields: `dashboardId`, `dashboardName`, `aiRemark`. |
31
- | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 50. |
31
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
32
32
  | `--offset` / `-o` | No | Optional page offset. Default: 0. |
33
33
 
34
34
  ## Decision Rules
@@ -24,7 +24,7 @@ ae-cli analysis_meta +list_entities --dry-run
24
24
  | `--event_name` | No | Optional event name filter |
25
25
  | `--query` / `-q` | No | Optional keyword filter. Fuzzy match is applied to entityName, columnName, and columnDesc; if omitted, all accessible dashboards are returned. |
26
26
  | `--fields` / `-f` | No | Optional fields to return (JSON array). Supported fields: `entityId`, `entityName`, `columnName`, `columnDesc`, `selectType`. |
27
- | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 50. |
27
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
28
28
  | `--offset` / `-o` | No | Optional page offset. Default: 0. |
29
29
 
30
30
 
@@ -28,7 +28,7 @@ ae-cli analysis_meta +list_events --dry-run
28
28
  | `--project_id` / `-p` | Yes | Project ID |
29
29
  | `--query` / `-q` | No | Optional keyword filter. Performs fuzzy matching against eventName, eventDesc, and aiRemark; if omitted, all events are returned. |
30
30
  | `--fields` / `-f` | No | Optional fields to return (JSON array). Supported fields: `eventName`, `eventDesc`, `aiRemark`, `eventTag`, `remark`. |
31
- | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 50. |
31
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
32
32
  | `--offset` / `-o` | No | Optional page offset. Default: 0. |
33
33
  ## Decision Rules
34
34
  - For the first run, pass only the required parameter (`--project_id`) to confirm the path works, then add optional parameters.
@@ -30,7 +30,7 @@ ae-cli analysis_meta +list_metrics --dry-run
30
30
  | `--project_id` / `-p` | Yes | Project ID |
31
31
  | `--query` / `-q` | No | Optional keyword filter. Fuzzy match on metricName, metricDesc, metricRemark. |
32
32
  | `--fields` | No | Optional fields to return. Supported: metricId, metricName, metricDesc, metricRemark, metricMode, openId, creator, creatorLoginName, updateOpenId, updateCreator, updateLoginName, createTime, updateTime. Invalid fields cause INVALID_FIELDS error. |
33
- | `--limit` | No | Optional limit. Default: 20, maximum: 50. |
33
+ | `--limit` | No | Optional limit. Default: 20, maximum: 10000. |
34
34
  | `--offset` | No | Optional offset. Default: 0. |
35
35
 
36
36
  ## Decision Rules
@@ -24,7 +24,7 @@ ae-cli analysis_meta +list_project_mark_times --dry-run
24
24
  | `--zone_offset` | No | Marker time zone offset |
25
25
  | `--query` / `-q` | No | Optional keyword filter. Fuzzy match on markContent. |
26
26
  | `--fields` | No | Optional fields to return. Supported: id, projectId, markTime, userZoneTime, zoneOffset, markContent, isShow, creatorName, creatorId, lastModifierName, lastModifierId, createTime, updateTime. Invalid fields cause INVALID_FIELDS error. |
27
- | `--limit` | No | Optional limit. Default: 20, maximum: 50. |
27
+ | `--limit` | No | Optional limit. Default: 20, maximum: 10000. |
28
28
  | `--offset` | No | Optional offset. Default: 0. |
29
29
 
30
30
  ## Decision Rules
@@ -28,7 +28,7 @@ ae-cli analysis_meta +list_properties --dry-run
28
28
  | `--event_name` | No | Optional event name. If provided, only event properties available for that event are returned. |
29
29
  | `--query` / `-q` | No | Optional keyword filter. Fuzzy match is applied to propName, propDesc, and aiRemark; if omitted, all matched properties are returned. |
30
30
  | `--fields` / `-f` | No | Optional fields to return (JSON array). Supported fields: `propName`, `propDesc`, `aiRemark`, `selectType`, `tableType`, `subTableType`. |
31
- | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 50. |
31
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
32
32
  | `--offset` / `-o` | No | Optional page offset. Default: 0. |
33
33
 
34
34
 
@@ -23,7 +23,7 @@ ae-cli analysis +list_public_access_links --dry-run
23
23
  | `--project_id` / `-p` | Yes | Project ID |
24
24
  | `--query` / `-q` | No | Optional keyword filter. Fuzzy match on shorter and remarks. |
25
25
  | `--fields` | No | Optional fields to return. Supported: id, shorter, creator, projectIdAndName, source, accessId, target, options, remarks, accessStatus, effectTime, expireTime, createTime, updateTime. Invalid fields cause INVALID_FIELDS error. |
26
- | `--limit` | No | Optional limit. Default: 20, maximum: 50. |
26
+ | `--limit` | No | Optional limit. Default: 20, maximum: 10000. |
27
27
  | `--offset` | No | Optional offset. Default: 0. |
28
28
 
29
29
  ## Decision Rules
@@ -28,7 +28,7 @@ ae-cli analysis +list_reports --dry-run
28
28
  | `--project_id` / `-p` | Yes | Project ID |
29
29
  | `--query` / `-q` | No | Optional keyword filter. Performs fuzzy matching against report names, descriptions, and AI remarks; if omitted, all accessible reports are returned. |
30
30
  | `--fields` / `-f` | No | Optional fields to return (JSON array). Supported fields: `reportId`, `reportName`, `reportDesc`, `reportModel`, `aiRemark`. |
31
- | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 50. |
31
+ | `--limit` / `-l` | No | Optional page size. Default: 20, maximum: 10000. |
32
32
  | `--offset` / `-o` | No | Optional page offset. Default: 0. |
33
33
 
34
34
  ## Decision Rules
@@ -13,7 +13,7 @@ Domain: **Tag Management**
13
13
  ```bash
14
14
  ae-cli analysis_audience +list_tag_members --project_id <project_id> --tag_name demo
15
15
  ae-cli analysis_audience +list_tag_members --project_id <project_id> --tag_name demo --snapshot_date 2026-04-01 --property_names '["#user_id","name"]' --use_cache false
16
- ae-cli analysis_audience +list_tag_members --project_id <project_id> --tag_name demo --query user_001 --fields '["#user_id","name"]' --limit 20 --offset 0
16
+ ae-cli analysis_audience +list_tag_members --project_id <project_id> --tag_name demo --query user_001 --fields '["#user_id","name"]' --limit 20 --offset 0 --request_id mcp_bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb --timeout_minutes 8
17
17
  ae-cli analysis_audience +list_tag_members --dry-run
18
18
  ```
19
19
 
@@ -29,10 +29,13 @@ ae-cli analysis_audience +list_tag_members --dry-run
29
29
  | `--fields` | No | Optional return field list (JSON array). Invalid fields will fail with `INVALID_FIELDS`. |
30
30
  | `--limit` | No | Optional page size. Default: 20, max: 50. |
31
31
  | `--offset` | No | Optional page offset. Default: 0. |
32
+ | `--request_id` | No | 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. |
33
+ | `--timeout_minutes` | No | Query timeout in minutes. If omitted, 30 minutes is used. |
32
34
 
33
35
  ## Decision Rules
34
36
  - For the first execution, it is recommended to pass only the required parameters (`--project_id`, `--tag_name`) and add optional parameters after confirming the path works.
35
37
  - `--property_names` must be passed as a JSON array (e.g. `--property_names '["#user_id"]'`).
38
+ - For long-running or cancelable member queries, supply your own `--request_id` before starting so `analysis +cancel_query` can cancel by the same ID if the caller or user stops waiting. If `fetch failed`, HTTP timeout, or caller timeout happens, the backend query may still be running; call `+cancel_query --request_id <same value>` with the preset ID. The auto-generated requestId is not available when the HTTP request fails before a response. The value must use `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`.
36
39
  - When troubleshooting across projects, first confirm whether `--project_id` matches the current permissions and target environment.
37
40
 
38
41
  ## Next Step on Failure
@@ -79,7 +79,7 @@ Timezone rule:
79
79
  ## Command Syntax
80
80
  ```bash
81
81
  ae-cli analysis +query_adhoc --project_id <project_id> --model_type <model_type> --qp '<qp_json_from_builder_or_legacy_chain>'
82
- ae-cli analysis +query_adhoc --project_id <project_id> --model_type <model_type> --qp '<qp_json_from_builder_or_legacy_chain>' --fields '["date","event"]' --limit 10 --offset 0 --zone_offset 8 --request_id demo --use_cache true --is_sort_by_columns true --resolve_recent_day true --timeout_minutes 8
82
+ ae-cli analysis +query_adhoc --project_id <project_id> --model_type <model_type> --qp '<qp_json_from_builder_or_legacy_chain>' --fields '["date","event"]' --limit 10 --offset 0 --zone_offset 8 --request_id mcp_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa --use_cache true --is_sort_by_columns true --resolve_recent_day true --timeout_minutes 8
83
83
  ae-cli analysis +query_adhoc --project_id <project_id> --model_type <model_type> --qp '<qp_json_from_builder_or_legacy_chain>' --dry-run
84
84
  ```
85
85
 
@@ -89,18 +89,18 @@ ae-cli analysis +query_adhoc --project_id <project_id> --model_type <model_type>
89
89
  | `--project_id` / `-p` | Yes | Project ID used to identify the analysis project |
90
90
  | `--model_type` | Yes | Model type. Supported values: event, retention, funnel, distribution, attribution, heat_map, interval, path, rank_list, prop_analysis, sql. |
91
91
  | `--qp` | Yes | Query parameter JSON. For `event`/`retention`/`funnel`/`prop_analysis`, pass QP returned by the matching builder tool. For non-builder models, construct QP through the legacy schema/metadata path. |
92
- | `--request_id` | No | Optional unique request ID used for tracking and deduplication. Generated automatically if omitted. |
92
+ | `--request_id` | No | 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. |
93
93
  | `--use_cache` | No | Whether to use result cache. Default: true |
94
94
  | `--zone_offset` | No | Time zone offset in hours. For example, UTC+8 is 8 and UTC-5 is -5 |
95
95
  | `--is_sort_by_columns` | No | Whether to sort query results by columns. Default: false |
96
96
  | `--resolve_recent_day` | No | Whether to resolve relative time expressions such as "last 7 days". If omitted, service auto-resolves when `qp.eventView.recentDay` exists and `startTime`/`endTime` is incomplete; otherwise defaults to false. |
97
97
  | `--fields` | No | Optional fields to return. Must match column names in result. Invalid fields cause INVALID_FIELDS error. |
98
- | `--limit` | No | Optional limit. Default: 1000, maximum: 100000. |
98
+ | `--limit` | No | Optional limit. Default: 1000, maximum: 10000. |
99
99
  | `--offset` | No | Optional offset. Default: 0. |
100
100
  | `--timeout_minutes` | No | Query timeout in minutes. If the query exceeds this time, it will be cancelled automatically. |
101
101
 
102
102
  ## Decision Rules
103
- - On the first run, start with only the required parameters (`--project_id`,`--model_type`,`--qp`), and add optional parameters after confirming the path works.
103
+ - On the first run, start with only the required parameters (`--project_id`,`--model_type`,`--qp`) only when the query is clearly small. For any query that may exceed the CLI/MCP HTTP timeout, include a preset `--request_id` from the first run.
104
104
  - Do not call this command with placeholder QP such as `{}`. For builder-supported models, wait for builder `status=generated`; for non-builder models, build QP from verified schema/metadata first.
105
105
  - For builder-supported models, do not run metadata/schema lookup to "help" the builder. The builder is the metadata resolver.
106
106
  - For pagination, use `--limit` and `--offset` together. Default limit is 1000, maximum 100000.
@@ -116,7 +116,8 @@ ae-cli analysis +query_adhoc --project_id <project_id> --model_type <model_type>
116
116
  - If required parameters are missing, resolve `project_id`, `model_type`, and a real `qp` first. Do not run placeholder calls except explicit `--dry-run` validation.
117
117
  - If a builder returns non-`generated` status for `event`, `retention`, `funnel`, or `prop_analysis`, stop and ask user to clarify before calling `query_adhoc`.
118
118
  - If `Invalid JSON` appears on legacy manual QP paths, first check schema required fields, then verify whether event/property names come from metadata query results for the same `project_id`.
119
- - If the query times out or results are abnormal, first narrow the time range / grouping dimensions, then split the subqueries to locate the issue.
119
+ - If the query returns `fetch failed`, hits an HTTP timeout, or the caller stops waiting after you preset `--request_id`, immediately call `+cancel_query --request_id <same value> --yes`; the backend query may still be running.
120
+ - If the query times out inside the service and returns `QUERY_TIMEOUT`, use the returned `metadata.requestId` for cancellation if further cleanup is needed, then narrow the time range / grouping dimensions and split subqueries to locate the issue.
120
121
 
121
122
  ## Recommended chaining
122
123
  - +build_event_analysis_qp -> +query_adhoc
@@ -0,0 +1,58 @@
1
+ # analysis +query_bi_panel_data (query BI panel data)
2
+
3
+ > **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
4
+
5
+ Domain: **BI panel management**
6
+
7
+ ## Use Cases
8
+ - Query released BI panel chart data as one-dimensional `columns` + `rows`.
9
+ - Query BI panel summary content as `markdown` + paged `blocks`.
10
+ - Apply dashboard-level parameter controls, dashboard-level permission controls, and page chart filter controls using the schema returned by `+get_bi_panel_detail`.
11
+
12
+ ## Mandatory Prerequisite
13
+ Call `+get_bi_panel_detail` first unless you already have verified `pageKey`, queryable `chartIds`, returned columns, and control schemas for the same `project_id`, `panel_id`, host, and released version.
14
+
15
+ ## Command
16
+ ```bash
17
+ ae-cli analysis +query_bi_panel_data --project_id <project_id> --panel_id <panel_id> --page_key <page_key> --result_type charts
18
+ ae-cli analysis +query_bi_panel_data --project_id <project_id> --panel_id <panel_id> --page_key <page_key> --result_type charts --chart_ids '["chart_city"]' --columns '["city","height"]' --row_limit 50 --row_offset 0
19
+ ae-cli analysis +query_bi_panel_data --project_id <project_id> --panel_id <panel_id> --page_key summary --result_type summary --block_limit 20 --block_offset 0
20
+ ae-cli analysis +query_bi_panel_data --project_id <project_id> --panel_id <panel_id> --page_key <page_key> --result_type charts --request_id mcp_1234567890abcdef1234567890abcdef --chart_filter_controls '[{"controlId":"chart_filter_city","value":["上海市","北京市"]}]'
21
+ ae-cli analysis +query_bi_panel_data --project_id <project_id> --panel_id <panel_id> --page_key <page_key> --result_type charts --dry-run
22
+ ```
23
+
24
+ ## Parameters
25
+ | Parameter | Required | Description |
26
+ |---|---|---|
27
+ | `--project_id` / `-p` | Yes | Project ID |
28
+ | `--panel_id` | Yes | BI panel ID returned by `+list_bi_panels` |
29
+ | `--page_key` | Yes | Page key returned by `+get_bi_panel_detail` |
30
+ | `--result_type` | Yes | `charts` or `summary` |
31
+ | `--request_id` | No | 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. |
32
+ | `--chart_ids` | No | JSON array of chart IDs when `result_type=charts`. If omitted, all queryable charts on the page are queried. |
33
+ | `--parameter_controls` | No | JSON array of dashboard-level parameter control overrides. Each item has `controlId` and one scalar `value`. |
34
+ | `--permission_controls` | No | JSON array of dashboard-level permission control values. Each item has `controlId` and `value`; `value` may be one scalar or an array. |
35
+ | `--chart_filter_controls` | No | JSON array of page chart filter control values. Each item has `controlId` and `value`; `value` may be one scalar or an array and applies only to bound charts. |
36
+ | `--columns` | No | Optional returned columns for chart data. Must match columns returned by `+get_bi_panel_detail`. |
37
+ | `--row_limit` | No | Chart row limit. Default: 50, maximum: 10000. |
38
+ | `--row_offset` | No | Chart row offset. Default: 0. |
39
+ | `--block_limit` | No | Summary block limit. Default: 20, maximum: 10000. |
40
+ | `--block_offset` | No | Summary block offset. Default: 0. |
41
+ | `--use_cache` | No | Whether to use cache. Default: true. |
42
+ | `--timeout_minutes` | No | Query timeout in minutes. Default: 3, minimum: 1, maximum: 10. |
43
+
44
+ ## Control Rules
45
+ - `parameter_controls` accept one scalar value only. Arrays are invalid.
46
+ - `permission_controls` accept one scalar value or an array. `allowedValues` from detail are hints only; real data permission is enforced by the BI query path.
47
+ - `chart_filter_controls` accept one scalar value or an array regardless of UI single/multi-select setting. They apply only to `boundChartIds`.
48
+ - PageCharts filter components that have no passed value and no default do not add a filter.
49
+ - Do not pass internal fields such as `paramList`, `permissionFilters`, `visualCfg`, `whereList`, `whereValues`, `field`, `columnName`, `userId`, or `openId`.
50
+
51
+ ## Decision Rules
52
+ - For charts, omit `--chart_ids` on the first run to query all queryable charts on the page.
53
+ - Explicitly querying a non-queryable filter component returns a chart-level unsupported result.
54
+ - Use `--columns`, `--row_limit`, and `--row_offset` to reduce response size.
55
+ - For long-running or cancelable queries, supply your own `--request_id` before starting so `+cancel_query` can cancel by the same ID if the caller or user stops waiting. If `fetch failed`, HTTP timeout, or caller timeout happens, the backend query may still be running; call `+cancel_query --request_id <same value>` with the preset ID. The auto-generated requestId is not available when the HTTP request fails before a response. The value must use `mcp_<32 lowercase hex UUID>`, for example `mcp_0123456789abcdef0123456789abcdef`.
56
+
57
+ ## Recommended Chaining
58
+ - `+list_bi_panels` -> `+get_bi_panel_detail` -> `+query_bi_panel_data`