@thinkingai/ae-cli 1.0.28 → 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 (360) hide show
  1. package/README.md +1 -16
  2. package/README.zh.md +1 -16
  3. package/dist/{auth-H2376DEF.js → auth-DYC2BGLM.js} +2 -2
  4. package/dist/{auth-5NSDQFQB.js → auth-GHBMJ5ZR.js} +31 -12
  5. package/dist/{chunk-CLJF7MQA.js → chunk-2DUEAXV3.js} +1 -1
  6. package/dist/chunk-5OC7CYCG.js +98 -0
  7. package/dist/{chunk-SRJIAOBN.js → chunk-6W4QOZAL.js} +10 -0
  8. package/dist/{chunk-LU7SXK4Q.js → chunk-BJX3GXWC.js} +2 -2
  9. package/dist/{chunk-WCHI7725.js → chunk-DMMEPCST.js} +47 -6
  10. package/dist/{chunk-IMBKVXKY.js → chunk-EGEIXA2Z.js} +82 -10
  11. package/dist/{chunk-AD5V3ZPJ.js → chunk-I5CRVM2S.js} +98 -10
  12. package/dist/chunk-NOO24N7W.js +11 -0
  13. package/dist/{chunk-GSJGPNKK.js → chunk-PN3OS34E.js} +1 -1
  14. package/dist/{chunk-CAQYQA4R.js → chunk-RSHMZ3LG.js} +15 -1
  15. package/dist/{client-FCMK3XEK.js → client-2UJ63MVQ.js} +3 -3
  16. package/dist/{config-64G36TJL.js → config-NCUGK6NS.js} +3 -3
  17. package/dist/index.js +2553 -29
  18. package/dist/{model-EZ6K7FXI.js → model-SJSOZTRS.js} +5 -7
  19. package/dist/{raw-VEF3D6UD.js → raw-7NVWSVJP.js} +4 -4
  20. package/dist/{sync-NRODEVNH.js → sync-GRVO4K3U.js} +120 -23
  21. package/dist/{te-agent-7U7JLJKU.js → te-agent-KZRIEN4N.js} +468 -47
  22. package/dist/{te-analysis-A2OSGHQ4.js → te-analysis-VAR4KUOK.js} +145 -28
  23. package/dist/{te-audience-LI67PPGO.js → te-audience-KMKYI2YJ.js} +23 -14
  24. package/dist/{te-common-35WVU3C5.js → te-common-WNCZB7R7.js} +5 -4
  25. package/dist/{te-community-LEAP6PWT.js → te-community-JEEFXPB3.js} +11 -10
  26. package/dist/{te-dataops-N2LGZBOX.js → te-dataops-GD3XBYCS.js} +33 -32
  27. package/dist/{te-engage-H7C72Z46.js → te-engage-4XHCTS6I.js} +5 -4
  28. package/dist/{te-kb-I2OKTBAI.js → te-kb-B62KFP2A.js} +97 -7
  29. package/dist/{te-meta-HBTIEDRO.js → te-meta-EPZGQN56.js} +10 -9
  30. package/dist/{te-team-EM5OWRQL.js → te-team-YY24VORI.js} +16 -12
  31. package/dist/tracking/i18n/resources/cli/en.json +153 -0
  32. package/dist/tracking/i18n/resources/cli/ja.json +153 -0
  33. package/dist/tracking/i18n/resources/cli/ko.json +153 -0
  34. package/dist/tracking/i18n/resources/cli/zh.json +153 -0
  35. package/package.json +9 -3
  36. package/skills/ae-agent/SKILL.md +66 -26
  37. package/skills/ae-analysis/SKILL.md +108 -8
  38. package/skills/ae-analysis/references/cancel_query.md +39 -0
  39. package/skills/ae-analysis/references/drilldown_user_events.md +4 -2
  40. package/skills/ae-analysis/references/drilldown_users.md +4 -2
  41. package/skills/ae-analysis/references/get_bi_panel_detail.md +35 -0
  42. package/skills/ae-analysis/references/list_alerts.md +1 -1
  43. package/skills/ae-analysis/references/list_bi_panels.md +35 -0
  44. package/skills/ae-analysis/references/list_cluster_members.md +4 -1
  45. package/skills/ae-analysis/references/list_dashboards.md +1 -1
  46. package/skills/ae-analysis/references/list_entities.md +1 -1
  47. package/skills/ae-analysis/references/list_events.md +1 -1
  48. package/skills/ae-analysis/references/list_metrics.md +1 -1
  49. package/skills/ae-analysis/references/list_project_mark_times.md +1 -1
  50. package/skills/ae-analysis/references/list_properties.md +1 -1
  51. package/skills/ae-analysis/references/list_public_access_links.md +1 -1
  52. package/skills/ae-analysis/references/list_reports.md +1 -1
  53. package/skills/ae-analysis/references/list_tag_members.md +4 -1
  54. package/skills/ae-analysis/references/query_adhoc.md +6 -5
  55. package/skills/ae-analysis/references/query_bi_panel_data.md +58 -0
  56. package/skills/ae-analysis/references/query_dashboard_report_data.md +4 -1
  57. package/skills/ae-analysis/references/query_entity_details.md +5 -2
  58. package/skills/ae-analysis/references/query_event_details.md +4 -1
  59. package/skills/ae-analysis/references/query_report_data.md +2 -2
  60. package/skills/ae-analysis-global/SKILL.md +3 -1
  61. package/skills/ae-analysis-intent/SKILL.md +132 -0
  62. package/skills/ae-data-integration-helper/SKILL.md +242 -0
  63. package/skills/ae-data-integration-helper/references/android_sdk_faq.md +179 -0
  64. package/skills/ae-data-integration-helper/references/c_sdk_compilation.md +83 -0
  65. package/skills/ae-data-integration-helper/references/c_sdk_faq.md +416 -0
  66. package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +123 -0
  67. package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +365 -0
  68. package/skills/ae-data-integration-helper/references/index.md +56 -0
  69. package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +118 -0
  70. package/skills/ae-data-integration-helper/references/java_sdk_faq.md +406 -0
  71. package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +129 -0
  72. package/skills/ae-data-integration-helper/references/logbus2_guide.md +309 -0
  73. package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +348 -0
  74. package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +115 -0
  75. package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +118 -0
  76. package/skills/ae-data-integration-helper/references/python_sdk_faq.md +232 -0
  77. package/skills/ae-data-integration-helper/references/restful_api_notes.md +74 -0
  78. package/skills/ae-data-integration-helper/references/sdk_log_guide.md +316 -0
  79. package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +107 -0
  80. package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +115 -0
  81. package/skills/ae-generate-tracking-code/SKILL.md +629 -0
  82. package/skills/ae-generate-tracking-code/references/autotrack-enum.md +183 -0
  83. package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +202 -0
  84. package/skills/ae-generate-tracking-code/references/datax-config.md +43 -0
  85. package/skills/ae-generate-tracking-code/references/debug-script.md +102 -0
  86. package/skills/ae-generate-tracking-code/references/logbus-config.md +200 -0
  87. package/skills/ae-generate-tracking-code/references/modes.md +83 -0
  88. package/skills/ae-generate-tracking-code/references/restful-call.md +36 -0
  89. package/skills/ae-generate-tracking-code/references/sdk-index.md +128 -0
  90. package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +206 -0
  91. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +394 -0
  92. package/skills/ae-generate-tracking-code/references/te-api.md +181 -0
  93. package/skills/ae-generate-tracking-plan/SKILL.md +1083 -0
  94. package/skills/ae-generate-tracking-plan/references/autotrack-events.md +273 -0
  95. package/skills/ae-generate-tracking-plan/references/business-dimension-mapping.md +425 -0
  96. package/skills/ae-generate-tracking-plan/references/te-api.md +100 -0
  97. package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +152 -0
  98. package/skills/ae-kb/SKILL.md +38 -5
  99. 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
  100. 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
  101. 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
  102. 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
  103. package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +72 -0
  104. package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  105. 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
  106. 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
  107. package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +80 -0
  108. package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  109. 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
  110. 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
  111. package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.md +40 -0
  112. package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.xlsx +0 -0
  113. 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
  114. 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
  115. 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
  116. 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
  117. 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
  118. 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
  119. 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
  120. 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
  121. 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
  122. 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
  123. 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
  124. 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
  125. 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
  126. 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
  127. 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
  128. 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
  129. 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
  130. 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
  131. 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
  132. 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
  133. 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
  134. 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
  135. 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
  136. 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
  137. 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
  138. 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
  139. package/wiki/te-docs/index.md +225 -0
  140. package/wiki/te-docs/raw/advanced-data-type/first-event-check.md +66 -0
  141. package/wiki/te-docs/raw/advanced-data-type/updated-event.md +87 -0
  142. package/wiki/te-docs/raw/advanced-data-type.md +16 -0
  143. package/wiki/te-docs/raw/data-ingestion-guide/about-gdpr.md +55 -0
  144. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/automatic-event-tracking.md +431 -0
  145. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/debugging-and-logging.md +49 -0
  146. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/multi-instance.md +66 -0
  147. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/preset-properties.md +466 -0
  148. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/third-party-integration.md +127 -0
  149. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced.md +513 -0
  150. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/compliance.md +24 -0
  151. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/release-notes.md +177 -0
  152. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android.md +228 -0
  153. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/c-advanced.md +419 -0
  154. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/release-notes.md +45 -0
  155. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c.md +110 -0
  156. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/client-side-sdk-faq.md +52 -0
  157. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/cpp-advanced.md +366 -0
  158. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/release-notes.md +103 -0
  159. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp.md +201 -0
  160. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/compliance.md +26 -0
  161. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/automatically-track-events.md +117 -0
  162. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/debugging-and-logging.md +47 -0
  163. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/preset-properties.md +52 -0
  164. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced.md +267 -0
  165. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/release-notes.md +82 -0
  166. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter.md +139 -0
  167. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/compliance.md +26 -0
  168. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/automatically-track-events.md +121 -0
  169. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/debugging-and-logging.md +54 -0
  170. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/preset-properties.md +18 -0
  171. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced.md +305 -0
  172. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/release-notes.md +79 -0
  173. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native.md +137 -0
  174. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/release-notes.md +24 -0
  175. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/automatically-track-events.md +54 -0
  176. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/debugging-and-logging.md +53 -0
  177. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/multi-instance.md +42 -0
  178. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/preset-properties.md +119 -0
  179. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/support-native.md +81 -0
  180. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced.md +331 -0
  181. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app.md +156 -0
  182. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform.md +12 -0
  183. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/automatic-event-tracking.md +29 -0
  184. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/debugging-and-logging.md +47 -0
  185. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/multi-instance.md +21 -0
  186. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/preset-properties.md +249 -0
  187. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced.md +301 -0
  188. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/compliance.md +24 -0
  189. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/release-notes.md +51 -0
  190. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x.md +281 -0
  191. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/automatic-event-tracking.md +70 -0
  192. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/debugging-and-logging.md +57 -0
  193. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/native-support.md +104 -0
  194. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/preset-properties.md +91 -0
  195. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance.md +374 -0
  196. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/compliance.md +35 -0
  197. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/release-notes.md +109 -0
  198. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator.md +170 -0
  199. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/compliance.md +28 -0
  200. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/automatic-event-tracking.md +29 -0
  201. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/debugging-and-logging.md +58 -0
  202. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/preset-properties.md +43 -0
  203. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced.md +204 -0
  204. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/release-notes.md +29 -0
  205. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona.md +269 -0
  206. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/compliance.md +24 -0
  207. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/release-notes.md +177 -0
  208. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/automatic-event-tracking.md +119 -0
  209. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/debugging-and-logging.md +47 -0
  210. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/multi-instance.md +50 -0
  211. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/native-pluggable.md +43 -0
  212. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/preset-properties.md +212 -0
  213. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/third-party-integration.md +77 -0
  214. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced.md +396 -0
  215. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity.md +176 -0
  216. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/compliance.md +24 -0
  217. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/release-notes.md +81 -0
  218. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/automatic-event-tracking.md +79 -0
  219. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/debugging-and-logging.md +31 -0
  220. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/preset-properties.md +25 -0
  221. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/third-party-integrations.md +141 -0
  222. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced.md +278 -0
  223. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal.md +190 -0
  224. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine.md +14 -0
  225. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/h5-and-app-sdk-connection.md +147 -0
  226. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/instant-app-and-game.md +24 -0
  227. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/compliance.md +24 -0
  228. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/automatic-event-tracking.md +272 -0
  229. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/debugging-and-logging.md +77 -0
  230. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/multi-instance.md +142 -0
  231. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/preset-properties.md +484 -0
  232. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/third-party-integrations.md +132 -0
  233. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced.md +682 -0
  234. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/release-notes.md +163 -0
  235. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios.md +304 -0
  236. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/compliance.md +29 -0
  237. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/automatic-event-tracking.md +136 -0
  238. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/debugging-and-logging.md +48 -0
  239. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/multi-instance.md +50 -0
  240. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/preset-properties.md +132 -0
  241. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced.md +462 -0
  242. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/release-notes.md +107 -0
  243. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript.md +208 -0
  244. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/debugging-and-logging.md +62 -0
  245. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/preset-properties.md +118 -0
  246. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced.md +556 -0
  247. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos.md +231 -0
  248. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk.md +25 -0
  249. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/filebeat-logstash-user-guide.md +610 -0
  250. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/logbus2-user-guide.md +1215 -0
  251. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/ta-datax-writer-plugin-user-guide.md +278 -0
  252. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools.md +15 -0
  253. package/wiki/te-docs/raw/data-ingestion-guide/privacy-policy.md +38 -0
  254. package/wiki/te-docs/raw/data-ingestion-guide/restful-api-user-guide.md +155 -0
  255. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-FM9Cwz.md +37 -0
  256. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-RSyfw7.md +41 -0
  257. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging.md +89 -0
  258. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-OxzWw.md +126 -0
  259. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-VuE3wr.md +126 -0
  260. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties.md +126 -0
  261. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-IauKwI.md +175 -0
  262. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-YAilwk.md +210 -0
  263. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced.md +211 -0
  264. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-PVazwa.md +62 -0
  265. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-TADbwY.md +50 -0
  266. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes.md +69 -0
  267. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-V2W3wv.md +131 -0
  268. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-Zf9Jwl.md +179 -0
  269. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c.md +189 -0
  270. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/debugging-and-logging.md +38 -0
  271. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/preset-properties.md +126 -0
  272. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced.md +113 -0
  273. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/release-notes.md +34 -0
  274. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang.md +155 -0
  275. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/debugging-and-logging.md +42 -0
  276. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/preset-properties.md +126 -0
  277. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced.md +157 -0
  278. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/release-notes.md +72 -0
  279. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang.md +148 -0
  280. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/debugging-and-logging.md +49 -0
  281. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/preset-properties.md +126 -0
  282. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced.md +223 -0
  283. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/release-notes.md +88 -0
  284. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java.md +174 -0
  285. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/debugging-and-logging.md +46 -0
  286. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/preset-properties.md +126 -0
  287. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced.md +182 -0
  288. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/release-notes.md +61 -0
  289. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua.md +121 -0
  290. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/debugging-and-logging.md +55 -0
  291. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/preset-properties.md +126 -0
  292. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced.md +225 -0
  293. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/release-notes.md +45 -0
  294. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs.md +141 -0
  295. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/debugging-and-logging.md +41 -0
  296. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/preset-properties.md +126 -0
  297. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced.md +216 -0
  298. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/release-notes.md +45 -0
  299. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php.md +173 -0
  300. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/debugging-and-logging.md +40 -0
  301. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/preset-properties.md +126 -0
  302. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced.md +206 -0
  303. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/release-notes.md +51 -0
  304. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python.md +116 -0
  305. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/release-notes.md +44 -0
  306. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/debugging-and-logging.md +47 -0
  307. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/preset-properties.md +126 -0
  308. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced.md +189 -0
  309. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby.md +142 -0
  310. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk.md +22 -0
  311. package/wiki/te-docs/raw/data-ingestion-guide/thinkingdata-privacy-policy.md +37 -0
  312. package/wiki/te-docs/raw/data-ingestion-guide.md +48 -0
  313. package/wiki/te-docs/raw/preparations-before-data-ingestion/data-rules.md +396 -0
  314. package/wiki/te-docs/raw/preparations-before-data-ingestion/preset-properties-and-system-fields.md +957 -0
  315. package/wiki/te-docs/raw/preparations-before-data-ingestion/user-identification-rules.md +723 -0
  316. package/wiki/te-docs/raw/preparations-before-data-ingestion.md +203 -0
  317. 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
  318. 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
  319. 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
  320. 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
  321. 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
  322. 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
  323. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony.md +172 -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//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -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//346/233/264/346/226/260/346/227/245/345/277/227.md +209 -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//345/244/232/345/256/236/344/276/213.md +71 -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//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
  328. 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
  329. 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
  330. 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
  331. 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
  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//345/220/210/350/247/204/346/214/207/345/215/227.md +26 -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//346/233/264/346/226/260/346/227/245/345/277/227.md +32 -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//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
  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/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
  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/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
  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/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227.md +236 -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/cocos2d-lua.md +200 -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//346/233/264/346/226/260/346/227/245/345/277/227.md +83 -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/native/346/224/257/346/214/201.md +66 -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//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
  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/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
  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/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
  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/egret//350/277/233/351/230/266/346/214/207/345/215/227.md +615 -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/egret.md +166 -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//346/233/264/346/226/260/346/227/245/345/277/227.md +87 -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/native/346/224/257/346/214/201.md +71 -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//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
  349. 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
  350. 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
  351. 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
  352. 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
  353. package/wiki/te-docs/schema.md +16 -0
  354. package/wiki/te-docs/synthesis/batch-ingest-comparison.md +324 -0
  355. package/wiki/te-docs/synthesis/js-sdk-cheatsheet.md +538 -0
  356. package/wiki/te-docs/synthesis/restful-api-reference.md +363 -0
  357. package/wiki/te-docs/synthesis/sdk-selection.md +372 -0
  358. package/wiki/te-docs/synthesis/server-sdk-overview.md +449 -0
  359. package/dist/chunk-KAEZTSXN.js +0 -99
  360. package/dist/chunk-OJDNO5QY.js +0 -63
@@ -0,0 +1,629 @@
1
+ ---
2
+ name: ae-generate-tracking-code
3
+ description: Interactive generation of AE tracking code, LogBus2 configuration, and debug scripts from a tracking plan. Trigger words: 代码埋点、埋点代码、tracking code、埋点落地、logbus 配置、AE 上报代码、generate tracking code、insert tracking、トラッキングコード、트래킹 코드. Supports independent output mode selection per platform (insert/snippet). Server-side defaults to LoggerConsumer + LogBus2 architecture.
4
+ ---
5
+
6
+ # ae-generate-tracking-code
7
+
8
+ > **Conversation language**: This skill document is in English, but **all output to the user MUST be in the user's input language**.
9
+ > English input → English reply; Chinese input → Chinese reply; Japanese input → Japanese reply.
10
+ > If uncertain, default to English.
11
+ > This applies to all output: section titles, phase names, template prompts, code comments, etc.
12
+ > **⚠️ CRITICAL: Many reference documents (wiki SDK docs, code examples) contain Chinese text. When reading Chinese source material to answer an English/Japanese user, you MUST translate headings, descriptions, and comments to the user's language. The source document's language is NOT the user's language. Use the Terminology Glossary above to map terms accurately.**
13
+ > Do NOT copy Chinese text verbatim from this document into English/Japanese replies.
14
+ >
15
+ > **Document link language**: When providing official documentation URLs, use `lan=zh-CN` for Chinese users, `lan=en-US` for all others.
16
+
17
+ ## Terminology Glossary
18
+
19
+ | 中文 | English | Notes |
20
+ |------|---------|-------|
21
+ | 埋点方案 | Tracking Plan | AE project-level event/property definitions |
22
+ | 代码埋点 | Tracking Code Generation | Generating SDK/LogBus code from a plan |
23
+ | 埋点代码 | Tracking Code | The generated SDK init + track() calls + helpers |
24
+ | 输出方式 | Output Mode | insert (inject) or snippet (file delivery) |
25
+ | 插入 | Insert | Direct code injection into the user's project |
26
+ | 片段 / 代码片段 | Snippet | Code delivered as files under `.ae-cli/output/` |
27
+ | 采集端 | Collection Platform / Platform | Where events are sent from: client, server, or both |
28
+ | 客户端 | Client | Client-side SDK (Android/iOS/Web/etc.) |
29
+ | 服务端 | Server | Server-side SDK (Java/Python/Go/etc.) |
30
+ | 两端都采集 | Both | Events collected from both client and server |
31
+ | SDK 集成模式 | SDK Integration Mode | `client_only` / `server_only` / `both` |
32
+ | 用户体系 | User Identity System | distinct_id / account_id strategy |
33
+ | 校验脚本 | Validation / Debug Script | Test code to verify tracking works |
34
+ | LogBus2 配置 | LogBus2 Configuration | `daemon.json` for LogBus2 log sync tool |
35
+ | LoggerConsumer | LoggerConsumer | Server SDK consumer that writes events to local log files |
36
+ | BatchConsumer | BatchConsumer | Server SDK consumer that uploads events in batches |
37
+ | 公共属性 | Super Property | Properties attached to all events automatically |
38
+ | 预置属性 | Preset Property | System properties prefixed with `#` (e.g. `#device_id`, `#time`) |
39
+ | 事件属性 | Event Property | Custom properties on specific events |
40
+ | 用户属性 | User Property | Properties set on the user profile |
41
+ | 上报地址 | SERVER_URL | Data ingestion endpoint (different from web URL!) |
42
+ | APP_ID | APP_ID | Application ID from AE Admin → "Integration Config" |
43
+ | project_id | Project ID | AE project identifier (≠ APP_ID) |
44
+ | 自动采集 | Auto-track | Auto-collected events (app install, start, view, click) |
45
+ | 埋点方案上传 | Plan Upload | Upload tracking plan xlsx to AE |
46
+
47
+ ## When to Trigger
48
+
49
+ Trigger when user says: "generate tracking code / help me add web tracking / generate logbus config / server-side reporting code" etc. Supports multiple platforms with independent output mode selection per platform.
50
+
51
+ ## Phase 0 — Anchor (one question per message)
52
+
53
+ ### Pre-check: Read existing configuration from draft.json
54
+
55
+ First, check if `.ae-cli/draft.json` exists and read existing configuration:
56
+
57
+ | Config Item | draft.json Field | Handling |
58
+ |---|---|---|
59
+ | AE projectId | `meta.project_id` | Has value → confirm; missing → ask |
60
+ | AE web address | `meta.host` | Has value → confirm; missing → ask |
61
+ | **SERVER_URL** | `meta.server_url` | **Must ask**. Data ingestion endpoint — different from web address |
62
+ | **APP_ID** | `meta.app_id` | **Must ask**. Obtained from AE Admin → "Integration Config" |
63
+ | SDK integration mode | `meta.sdk_integration_mode` | Has value → use directly |
64
+ | Client SDK type | `meta.client_platforms` (preferred) or `meta.client_sdk_type` | Has value → use directly |
65
+ | Server language | `meta.server_language` | Has value → use directly |
66
+ | User identity system | `meta.user_identity` | Has value → use directly |
67
+
68
+ **Important**: `project_id` ≠ `APP_ID`, and `host` ≠ `SERVER_URL`. Even if project_id and host are already set, SERVER_URL and APP_ID must still be asked separately.
69
+
70
+ **Multi-platform support**:
71
+ - If `client_platforms` exists (array): multi-platform scenario — generate code for each platform
72
+ - If only `client_sdk_type` exists: single platform (backward compatible)
73
+ - Example: `client_platforms: ["android", "openharmony"]` → generate code for Android + OpenHarmony
74
+
75
+ **Language support**:
76
+ - Android SDK: supports Java / Kotlin (can generate both)
77
+ - iOS SDK: supports Objective-C / Swift (can generate both)
78
+ - Other SDKs: fixed language, no selection needed
79
+
80
+ **Language configuration source**:
81
+ - Prefer `meta.client_platform_languages` (e.g. `{"android": ["java", "kotlin"]}`)
82
+ - If not configured, ask user for Android/iOS platforms only
83
+
84
+ **Confirmation flow**:
85
+ - Has value → ask **"Confirm using draft.json config: <value>? yes / enter new value"**
86
+ - User says `yes` → use draft value
87
+ - User enters new value → update draft.json and use new value
88
+
89
+ ### Required configuration (must confirm each item)
90
+
91
+ **⚠️ Key: SERVER_URL and APP_ID are independent config items. Even if draft.json has project_id and host, you MUST ask. `project_id` ≠ `APP_ID`, `host` ≠ `SERVER_URL`.**
92
+
93
+ 1. **SERVER_URL** — Data ingestion endpoint (**different from web URL**; go to AE Admin → "Project Settings" → "Integration Config" → fill in "Public URL")
94
+ - ⚠️ "Public URL" only shows if previously filled in; if empty, this field won't display
95
+ - Solution: ask ops for the URL, or **skip this step** (use `SERVER_URL` or `PUSH_URL` placeholder in code)
96
+ 2. **APP_ID** — Go to AE Admin → "Project Settings" → "Integration Config" → copy "APP_ID"
97
+
98
+ **host handling** (optional):
99
+ - If you need to fetch plan from AE (no local draft.json) → ask for host
100
+ - If local draft.json exists → host is not required; only hint user to open AE Debug page during validation phase
101
+
102
+ ### If only xlsx file exists (no draft.json)
103
+
104
+ First, check if both `.ae-cli/draft.json` and `.ae-cli/draft.xlsx` exist:
105
+
106
+ **If both are missing** — the current environment hasn't generated a tracking plan yet. Remind user of two options:
107
+
108
+ 1. **Do you need to generate a tracking plan first?**
109
+ - Yes → suggest using `ae-generate-tracking-plan` skill
110
+ - Reference: tracking plan document (Feishu: https://www.feishu.cn/docx/Jt0VdhNB6oSJ4TxISs1cq2Ebnmg)
111
+
112
+ 2. **If you already have a tracking plan**
113
+ - Provide the xlsx file path and use `ae-cli tracking code import-xlsx` to import
114
+ - Or place the xlsx file at `.ae-cli/draft.xlsx` and re-run
115
+
116
+ **If xlsx file exists** (provided via `ae-cli tracking code import-xlsx` or placed at `.ae-cli/draft.xlsx`):
117
+
118
+ **Step 1: Parse the xlsx file**
119
+
120
+ ```bash
121
+ ae-cli tracking code import-xlsx --xlsx <xlsx-path> --out .ae-cli/draft.json
122
+ ```
123
+
124
+ This command:
125
+ 1. Reads events, event properties, super properties, and user properties from xlsx
126
+ 2. Infers `sdk_integration_mode` from the event `platform` field
127
+ 3. Outputs draft.json (meta section has events and plan_name only)
128
+
129
+ **Step 2: What can be inferred from xlsx**
130
+
131
+ | Field | Can Infer? | Notes |
132
+ |---|---|---|
133
+ | Event list | ✅ | From `#event data` sheet |
134
+ | Event property pool | ✅ | From `#event data` sheet |
135
+ | Super properties | ✅ | From `#super property` sheet |
136
+ | User properties | ✅ | From `#user data` sheet |
137
+ | sdk_integration_mode | ⚠️ Limited | xlsx "Platform" column can infer (client/server/both); if missing, must ask |
138
+ | client_platforms | ❌ | Must ask user |
139
+ | client_platform_languages | ❌ | Must ask user (Android/iOS only) |
140
+ | server_language | ❌ | Must ask user (only if sdk_integration_mode includes server) |
141
+ | user_identity | ❌ | Must ask user |
142
+ | host / project_id | ❌ | Must ask or skip |
143
+
144
+ **"Platform" column parsing rules**:
145
+ - Empty / no column → cannot infer platform; default to client-side code generation (backward compatible)
146
+ - `客户端` / `client` → client-only collection, parsed as `platform: "client"`
147
+ - `服务端` / `server` → server-only collection, parsed as `platform: "server"`
148
+ - `客户端,服务端` / `client,server` / `服务端,客户端` / `server,client` → both platforms, parsed as `platform: "both"`
149
+
150
+ **Internal representation**: xlsx "Platform" column values are parsed by `ae-cli tracking code import-xlsx` into internal `platform` field values:
151
+ - `client` → client-side collection
152
+ - `server` → server-side collection
153
+ - `both` → both platforms
154
+
155
+ **Platform filtering during code generation**:
156
+ - Client code: only generate events where `platform === "client"` or `platform === "both"`
157
+ - Server code: only generate events where `platform === "server"` or `platform === "both"`
158
+ - If xlsx has no platform column: generate all events for both client and server (backward compatible)
159
+
160
+ **Step 3: Ask for missing configuration**
161
+
162
+ Ask in order, one item per message:
163
+
164
+ 1. **SDK integration mode**: ask **"Will tracking be reported via client-side or server-side? client / server / both"**
165
+
166
+ 2. **Client platform(s)** (only if sdk_integration_mode includes client):
167
+ ask **"What platform(s) is your app?"**
168
+ - Android / Android SDK
169
+ - iOS / iOS SDK
170
+ - OpenHarmony / OpenHarmony SDK (Chinese users only)
171
+ - Web / H5 (JavaScript SDK)
172
+ - WeChat Mini-program (Mini-program SDK) (Chinese users only)
173
+ - WeChat Mini-game (Mini-game SDK) (Chinese users only)
174
+ - Unity Game (Unity SDK)
175
+ - Cocos Game (CocosCreator / Cocos2d-x / Cocos2d-Lua / LayaAir — Cocos2d-Lua & LayaAir for Chinese users only)
176
+ - React Native / Flutter / uni-app
177
+ - Other
178
+
179
+ → After user selects, **only if Android or iOS is selected**, follow up:
180
+ - Android → ask **"Which programming language? Java / Kotlin / both"**
181
+ - iOS → ask **"Which programming language? Objective-C / Swift / both"**
182
+
183
+ 3. **Server language** (only if sdk_integration_mode includes server):
184
+ ask **"What is your server-side language?"**
185
+ - Java
186
+ - Python
187
+ - Go
188
+ - Node.js
189
+ - PHP
190
+ - C# / .NET
191
+ - Other
192
+
193
+ 4. **User identity system**:
194
+ - Account ID source: user_account / role_id / none
195
+ - Visitor ID strategy: auto / device_id / custom
196
+
197
+ 5. **SERVER_URL / APP_ID** (skip if already configured)
198
+
199
+ **Step 4: Merge configuration and proceed to Phase 1**
200
+
201
+ Write gathered info to `.ae-cli/draft.json` meta section, then proceed to Phase 1.
202
+
203
+ ---
204
+
205
+ ### If no local plan file
206
+
207
+ Without `.ae-cli/draft.json` or `.ae-cli/remote-plan.json`:
208
+
209
+ 1. **AE projectId** — get from AE Admin
210
+ 2. **AE web address** — needed to fetch plan
211
+ 3. Run `ae-cli tracking plan fetch` to retrieve the tracking plan
212
+
213
+ **Follow-up rules** (determine which platforms need code based on integration mode):
214
+
215
+ | Integration Mode | Platforms/Sides to Generate |
216
+ |---|---|
217
+ | `client_only` | 1 client platform (read from plan's `client_sdk_type` or ask) |
218
+ | `server_only` | 1 server language (read from plan's `server_language` or ask) |
219
+ | `both` | Client platform + server language (both needed) |
220
+
221
+ ---
222
+
223
+ ### Platform Definitions
224
+
225
+ **Client platforms** (corresponding to client SDKs):
226
+
227
+ | plan field | Platform | SDK | Document Path |
228
+ |---|---|---|---|
229
+ | `android` | Android | Android SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android.md` |
230
+ | `ios` | iOS | iOS SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios.md` |
231
+ | `openharmony` | OpenHarmony | OpenHarmony SDK | `~/.ae-cli/wiki/te-docs/raw/客户端-sdk/openharmony.md` |
232
+ | `javascript` | Web / H5 | JavaScript SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript.md` |
233
+ | `miniprogram` | Mini-program | Mini-program SDK | `~/.ae-cli/wiki/te-docs/raw/客户端-sdk/小程序小游戏.md` |
234
+ | `unity` | Unity | Unity SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity.md` |
235
+ | `game_engine` | Game Engine | Cocos / Laya / Unreal | See `references/sdk-index.md` |
236
+
237
+ **Server languages** (corresponding to server SDKs):
238
+
239
+ | plan field | Language | SDK | Document Path |
240
+ |---|---|---|---|
241
+ | `java` | Java | Java SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java.md` |
242
+ | `python` | Python | Python SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python.md` |
243
+ | `go` | Go | Go SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang.md` |
244
+ | `nodejs` | Node.js | Node SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs.md` |
245
+ | `php` | PHP | PHP SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php.md` |
246
+ | `csharp` | C# | C# SDK | `~/.ae-cli/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c.md` |
247
+
248
+ ---
249
+
250
+ ### Output Mode Definitions
251
+
252
+ Each platform can choose between two output modes:
253
+
254
+ | Mode | Description | Parameters | Deliverables |
255
+ |---|---|---|---|
256
+ | **insert** | Direct Edit injection into user project | Requires project path (absolute) | Code written to target directory |
257
+ | **snippet** | Markdown print + generate code file | No path needed | `.ae-cli/output/<platform>-sdk.<ext>` |
258
+
259
+ **Server-side defaults** (always generated for server):
260
+ - LoggerConsumer code (insert or snippet, matching user's choice)
261
+ - LogBus2 config file (`.ae-cli/output/daemon.json`)
262
+ - Official docs link: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
263
+
264
+ **Standalone option**:
265
+ - `debug` — validation script (generates test upload code)
266
+
267
+ ---
268
+
269
+ ## Phase 1 — Load plan
270
+
271
+ ```bash
272
+ ae-cli auth login --host <host>
273
+ ae-cli auth status
274
+ ae-cli tracking plan fetch --project <projectId> --host <host> > .ae-cli/remote-plan.json
275
+ ```
276
+
277
+ Failure fallback:
278
+ - AE unreachable → ask user if they want to use `.ae-cli/draft.json` (local existing plan)
279
+ - Neither available → abort, suggest running `ae-generate-tracking-plan` first
280
+
281
+ **Read SDK integration config**:
282
+ From the plan file, read:
283
+ - `meta.sdk_integration_mode` — SDK integration mode
284
+ - `meta.client_sdk_type` — client SDK type (if `client_only` or `both`)
285
+ - `meta.server_language` — server language (if `server_only` or `both`)
286
+ - `meta.user_identity` — user identity config (used to generate `login()` / `identify()` calls)
287
+
288
+ **Determine list of platforms to generate code for**:
289
+ ```
290
+ platforms = {
291
+ client: [client_sdk_type] // e.g. ['android'] or ['javascript']
292
+ server: [server_language] // e.g. ['java'] or ['python']
293
+ }
294
+ ```
295
+
296
+ ---
297
+
298
+ ## Phase 2 — Route mode (select output mode)
299
+
300
+ ### 2.1 Show platform list
301
+
302
+ Based on Phase 1 config, display the platforms that need code:
303
+
304
+ ```
305
+ Platforms requiring code generation:
306
+
307
+ Client:
308
+ - android (Android SDK)
309
+
310
+ Server:
311
+ - java (Java SDK, default LoggerConsumer + LogBus2)
312
+ ```
313
+
314
+ ### 2.2 Quick options
315
+
316
+ Provide shortcuts to simplify interaction:
317
+
318
+ **Option 1: One-click generation (recommended)**
319
+ - All platforms use `snippet` mode
320
+ - Generate all code files to `.ae-cli/output/` at once
321
+ - **No project path needed** — delivers copy-ready code directly
322
+ - Best for quickly getting code reference to integrate manually
323
+
324
+ **Option 2: Insert into project**
325
+ - Each platform independently chooses `insert` or `snippet`
326
+ - **Project path required** — code is written directly to your project directory
327
+ - Best for existing projects where code should land in specific locations
328
+
329
+ ### 2.3 Per-platform selection flow
330
+
331
+ If user chooses "per-platform selection", ask in platform order:
332
+
333
+ **Client platform prompt**:
334
+ ```
335
+ Client android — choose output mode:
336
+ 1. insert — requires project path
337
+ 2. snippet — no path needed, generates code file
338
+
339
+ Your choice: insert / snippet
340
+ ```
341
+
342
+ - `insert` → ask **"What is the project path? (absolute path)"**
343
+ - `snippet` → no additional parameters
344
+
345
+ **Server language prompt**:
346
+ ```
347
+ Server java — choose output mode:
348
+ 1. insert — requires project path
349
+ 2. snippet — no path needed, generates code file
350
+
351
+ Your choice: insert / snippet
352
+
353
+ (Defaults included: LoggerConsumer + LogBus2 config + official docs link)
354
+ ```
355
+
356
+ - `insert` → ask **"What is the project path? (absolute path)"**
357
+ - `snippet` → no additional parameters
358
+ - Server always gets `.ae-cli/output/daemon.json` regardless of mode
359
+ - **Always provide LogBus2 official docs link**: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
360
+
361
+ ### 2.4 Standalone option
362
+
363
+ After platform selection is done, ask:
364
+
365
+ **"Generate a debug validation script? yes / no"**
366
+
367
+ - `yes` → generate `.ae-cli/output/te-debug.<ext>`
368
+ - `no` → skip
369
+
370
+ ### 2.5 Summary of selections
371
+
372
+ Show final selection summary:
373
+
374
+ ```
375
+ Output mode summary:
376
+
377
+ Client android: snippet
378
+ Deliverables: .ae-cli/output/android-sdk.java
379
+
380
+ Server java: snippet
381
+ Deliverables: .ae-cli/output/java-sdk.java
382
+ .ae-cli/output/daemon.json
383
+
384
+ LogBus2 official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
385
+
386
+ Standalone option: debug
387
+ Deliverable: te-debug.java
388
+
389
+ Confirm? yes / no
390
+ ```
391
+
392
+ ---
393
+
394
+ ## Phase 3 — Execute (per platform)
395
+
396
+ ### 3.1 Pre-execution check
397
+
398
+ Before Phase 3 begins, check:
399
+ ```bash
400
+ test -z "$(git status --porcelain)" || echo "uncommitted changes present"
401
+ ```
402
+
403
+ **Handling rules**:
404
+ - `snippet` / `debug` → no check needed (doesn't touch user code)
405
+ - `insert` selection → check git status
406
+ - git clean → proceed
407
+ - git dirty → pause, wait for user choice:
408
+ ```
409
+ Uncommitted changes detected. Insert mode requires a clean git workspace.
410
+
411
+ Choose:
412
+ 1. Commit / stash first, then tell me and I'll continue with insert
413
+ 2. Switch to snippet mode for code snippets (re-run skill later for insert)
414
+ ```
415
+ - User chooses 1 → after user completes commit/stash, **re-check Phase 3.1**, then proceed with insert
416
+ - User chooses 2 → all `insert` modes switch to `snippet` for this run
417
+
418
+ ### 3.2 Platform dispatch and execution
419
+
420
+ **Event platform filtering rules (important)**:
421
+ - xlsx "Platform" column values map to `platform` field:
422
+ - `客户端` / `client` → `platform: "client"`
423
+ - `服务端` / `server` → `platform: "server"`
424
+ - `客户端,服务端` / `client,server` → `platform: "both"`
425
+ - Client code: only generate events where `platform === "client"` or `platform === "both"`
426
+ - Server code: only generate events where `platform === "server"` or `platform === "both"`
427
+ - If xlsx has no platform column (legacy plan): generate all events (backward compatible)
428
+ - `platform === undefined` (xlsx lacks column) → generate for both sides
429
+
430
+ **Client code generation**:
431
+
432
+ | Output Mode | Execution Flow |
433
+ |---|---|
434
+ | `insert` | Read `references/client-sdk-insert.md` → Explore project → Plan insertion → Edit to write |
435
+ | `snippet` | Read `references/snippet-delivery.md` → Print markdown + generate `.ae-cli/output/<platform>-sdk.<ext>` |
436
+
437
+ **Only generate events where `platform === "client"` or `platform === "both"`**
438
+
439
+ **⚠️ Hard rule: Never guess SDK imports**
440
+ - Before generating, MUST read the corresponding SDK wiki document (see `references/sdk-index.md`)
441
+ - **MUST copy import statements and package names from the wiki main document**, never guess
442
+ - Example: JavaScript SDK npm package is `thinkingdata-browser`, import variable is `ta`
443
+ - If generated code doesn't match wiki docs (e.g. `TDAnalytics`/`te`/`@thinkingdata/web-sdk`), re-read wiki and fix
444
+ - **Re-read docs before every code generation**, never rely on "remembered" code
445
+
446
+ ---
447
+
448
+ **Server code generation**:
449
+
450
+ | Output Mode | Execution Flow |
451
+ |---|---|
452
+ | `insert` | Read `references/server-sdk-insert.md` → Explore project → Plan insertion → Edit to write |
453
+ | `snippet` | Read `references/snippet-delivery.md` → Print markdown + generate `.ae-cli/output/<language>-sdk.<ext>` |
454
+
455
+ **Only generate events where `platform === "server"` or `platform === "both"`**
456
+
457
+ **Server-side defaults** (always included):
458
+ - Generate LoggerConsumer mode code (writes to local log files)
459
+ - Generate `.ae-cli/output/daemon.json` (LogBus2 configuration)
460
+ - **Always provide LogBus2 official docs link**: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
461
+
462
+ **⚠️ Hard rule: Never guess SDK imports**
463
+ - Before generating, MUST read the corresponding SDK wiki document (see `references/sdk-index.md`)
464
+ - **MUST copy import statements and package names from the wiki main document**, never guess
465
+ - **Re-read docs before every code generation**, never rely on "remembered" code
466
+
467
+ ---
468
+
469
+ **Standalone option execution**:
470
+
471
+ | Option | Execution Flow |
472
+ |---|---|
473
+ | `debug` | Read `references/debug-script.md` → Generate `.ae-cli/output/te-debug.<ext>` |
474
+
475
+ ---
476
+
477
+ ## Phase 4 — Deliver (output manifest)
478
+
479
+ Show deliverables based on selected output modes:
480
+
481
+ ### All snippets
482
+
483
+ ```
484
+ Deliverables:
485
+
486
+ Client:
487
+ - .ae-cli/output/android-sdk.java (Android SDK code snippet)
488
+
489
+ Server:
490
+ - .ae-cli/output/java-sdk.java (Java SDK LoggerConsumer code)
491
+ - .ae-cli/output/daemon.json (LogBus2 configuration)
492
+
493
+ LogBus2 official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
494
+
495
+ Standalone:
496
+ - .ae-cli/output/te-debug.java (validation script)
497
+
498
+ README: .ae-cli/output/README.md (usage instructions)
499
+ ```
500
+
501
+ ### Mixed (some insert + some snippet)
502
+
503
+ ```
504
+ Deliverables:
505
+
506
+ Client android (insert):
507
+ - <project-path>/src/main/java/.../TrackingHelper.java (SDK init + event calls)
508
+
509
+ Server java (snippet):
510
+ - .ae-cli/output/java-sdk.java (LoggerConsumer code snippet)
511
+ - .ae-cli/output/daemon.json (LogBus2 configuration)
512
+
513
+ LogBus2 official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
514
+
515
+ Standalone:
516
+ - .ae-cli/output/te-debug.java (validation script)
517
+ ```
518
+
519
+ ### Markdown code snippet display
520
+
521
+ For all `snippet` selections, display code grouped by platform in the markdown response:
522
+
523
+ ```
524
+ ## Client Android
525
+
526
+ ### SDK Initialization
527
+ ```java
528
+ TDAnalytics.init(this, SERVER_URL, APPID);
529
+ ```
530
+
531
+ ### Super Properties
532
+ ```java
533
+ Map<String, Object> superProperties = new HashMap<>();
534
+ superProperties.put("channel", "app_store");
535
+ TDAnalytics.setSuperProperties(superProperties);
536
+ ```
537
+
538
+ ### Event Group: auth
539
+ #### user_login
540
+ ```java
541
+ TDAnalytics.track("user_login", new HashMap<String, Object>() {{
542
+ put("login_method", "phone");
543
+ }});
544
+ ```
545
+ ...
546
+ ```
547
+
548
+ ---
549
+
550
+ ## Phase 5 — Validate hint
551
+
552
+ Provide validation guidance based on selected platforms:
553
+
554
+ ### Validation Steps
555
+
556
+ ```
557
+ Validation steps:
558
+ 1. Run validation script:
559
+ - Client: run .ae-cli/output/te-debug-client.<ext>
560
+ - Server: run .ae-cli/output/te-debug-server.<ext>
561
+
562
+ 2. Open AE Debug page:
563
+ https://<host>/#/data/debug
564
+
565
+ 3. Filter by distinct_id=claude-test to view uploaded data
566
+
567
+ 4. For LogBus2:
568
+ - Copy daemon.json to LogBus2 conf/ directory
569
+ - Start: ./logbus start
570
+ - Official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
571
+ ```
572
+
573
+ ### After validation passes
574
+
575
+ - Remind user to commit changes (if any `insert` was used)
576
+ - Remind user to call `login()` / `identify()` in code to associate user IDs
577
+ - Remind user to copy daemon.json to LogBus2 conf/ directory
578
+
579
+ ### Validation failure
580
+
581
+ - Ask user to paste error text for debugging
582
+ - Check SERVER_URL / appId correctness
583
+ - Check network connectivity
584
+ - Check LogBus2 config file format
585
+
586
+ ---
587
+
588
+ ## Prohibitions
589
+
590
+ - **Any `insert` without running `git status` check first (IMPORTANT: must check first; refuse execution if uncommitted changes exist)**
591
+ - Skipping reference docs in Phase 3 and inserting code arbitrarily
592
+ - Ignoring `// @tracking <event>` comment incremental detection
593
+ - Reusing web host as SERVER_URL (must be separate)
594
+ - **Using LogBus v1 (deprecated — only use LogBus2)**
595
+ - Generating LogBus2 config without providing official documentation link
596
+ - Including `platform === "server"` exclusive events in client code
597
+ - Including `platform === "client"` exclusive events in server code (unless `platform === "both"`)
598
+ - **Skipping SDK main doc read and guessing integration method** — each SDK has different integration approaches; must read wiki main doc's "Integrate SDK" section first, and choose the correct method based on project characteristics (with/without build tools)
599
+ - **Entering Phase 1 before Phase 0.5 is complete** — SDK integration must be confirmed before inserting code, otherwise generated track() calls won't work
600
+
601
+ ---
602
+
603
+ ## Internal Reference
604
+
605
+ All output mode rules are in `references/*.md`. This SKILL.md only handles phase orchestration.
606
+
607
+ **SDK document index**:
608
+ - `references/sdk-index.md` — All SDK wiki document path index (canonical source)
609
+
610
+ **Output mode references**:
611
+ - `references/client-sdk-insert.md` — Client code insertion workflow
612
+ - `references/snippet-delivery.md` — Code snippet generation workflow
613
+ - `references/server-sdk-insert.md` — Server code insertion workflow (LoggerConsumer + LogBus2)
614
+ - `references/logbus-config.md` — LogBus2 configuration generation (includes official docs link)
615
+ - `references/debug-script.md` — Validation script generation
616
+
617
+ **LogBus2 official documentation** (must provide when generating config):
618
+ - User guide: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
619
+ - Download link is in the official doc's "二、Download LogBus2" section
620
+
621
+ **Wiki directory structure** (see `~/.ae-cli/wiki/te-docs/schema.md`):
622
+ - `~/.ae-cli/wiki/te-docs/raw/` — AE official documentation mirror (read-only, maintained by crawler)
623
+ - `~/.ae-cli/wiki/te-docs/synthesis/` — LLM-synthesized overview documents
624
+
625
+ **Document reading order during code generation**:
626
+ 1. Read `references/sdk-index.md` to find the SDK's wiki document path
627
+ 2. Read wiki main doc (initialization, basic API)
628
+ 3. Read wiki advanced guide (LoggerConsumer, user properties, etc.)
629
+ 4. Check advanced guide sub-documents if needed