@thinkingai/ae-cli 6.0.48-workbuddy → 6.0.49

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 (333) hide show
  1. package/README.md +2 -0
  2. package/README.zh.md +2 -0
  3. package/dist/{auth-HJG2L6DR.js → auth-XZNXFRJS.js} +5 -341
  4. package/dist/{capability-JHYVQNQ4.js → capability-RJZ4KRGP.js} +42 -12
  5. package/dist/{chunk-QYJ252CT.js → chunk-4NRCTUZJ.js} +27041 -474
  6. package/dist/{chunk-KSQGGXGA.js → chunk-57RRFUEZ.js} +23 -7
  7. package/dist/{chunk-ARTIHWVD.js → chunk-7FTTULED.js} +12 -14
  8. package/dist/{chunk-Y3S2KNNR.js → chunk-7XGFSUOM.js} +3 -3
  9. package/dist/{chunk-UL6SJDYE.js → chunk-DVMLWQD4.js} +8 -186
  10. package/dist/{chunk-ZCM47ROU.js → chunk-DX5CDO34.js} +28 -7
  11. package/dist/chunk-EQ255HKO.js +38248 -0
  12. package/dist/{chunk-DU5MZQFQ.js → chunk-HBGADCKA.js} +3 -3
  13. package/dist/{chunk-6MXFJVNP.js → chunk-HFGZGYCG.js} +10 -6
  14. package/dist/{chunk-2BDQB42E.js → chunk-JOCDD4ON.js} +1 -1
  15. package/dist/{chunk-TKHSULJT.js → chunk-KPQY44JQ.js} +6 -0
  16. package/dist/chunk-L2QUIZTS.js +155 -0
  17. package/dist/{chunk-NXRKDG6E.js → chunk-MAPZ7VB6.js} +23 -21
  18. package/dist/chunk-V2NUHPXF.js +196 -0
  19. package/dist/{chunk-JFOGWBAT.js → chunk-WEPZ5M3Z.js} +5 -5
  20. package/dist/{community-report-client-QE4RC2XG.js → community-report-client-CU22W53K.js} +1 -1
  21. package/dist/{config-XMRP5NDA.js → config-XO3LI3SA.js} +4 -4
  22. package/dist/context-IFJI3LIT.js +46 -0
  23. package/dist/{data-integration-SGRITHJS.js → data-integration-HNGUKFIC.js} +47 -37
  24. package/dist/index.js +103 -62
  25. package/dist/{local-data-upload-client-LMVS7YAR.js → local-data-upload-client-GTRIT64F.js} +3 -2
  26. package/dist/{memory-5ZC73XBC.js → memory-QGPSNCQS.js} +4 -4
  27. package/dist/{metadata-LBX6O24P.js → metadata-JAQW7KGZ.js} +8 -8
  28. package/dist/{model-CRDIVYN5.js → model-RNPQXIBI.js} +4 -4
  29. package/dist/{personal-semantic-preference-7FVUTJZF.js → personal-semantic-preference-QCZ2IZTK.js} +11 -8
  30. package/dist/project-semantic-64JURXKF.js +372 -0
  31. package/dist/{sync-VVNDHU7R.js → sync-O45NXEQY.js} +10 -9
  32. package/dist/{te-agent-4T5TFHD6.js → te-agent-K5MSPNHJ.js} +5 -5
  33. package/dist/{te-analysis-TPYFOIFD.js → te-analysis-KQKCAI5H.js} +1086 -354
  34. package/dist/{te-community-PWOTHSEC.js → te-community-4OYU3BDA.js} +4 -4
  35. package/dist/{te-dataops-ZJV5QVJU.js → te-dataops-NFIPB6FX.js} +5 -5
  36. package/dist/{te-engage-WVHBZAXH.js → te-engage-HSVSRW22.js} +7 -7
  37. package/dist/{te-kb-PNM2ZKBP.js → te-kb-3TS73NO6.js} +454 -194
  38. package/dist/{te-system-MRCMLAWW.js → te-system-STMHLS5J.js} +12 -7
  39. package/dist/{te-team-Y36TG6AQ.js → te-team-3I5AOX3N.js} +6 -6
  40. package/dist/{update-UNKCZ5U5.js → update-RZXLPCRH.js} +4 -4
  41. package/package.json +22 -17
  42. package/skills/ae-analysis/SKILL.md +91 -91
  43. package/skills/ae-analysis/references/adhoc_export.md +11 -18
  44. package/skills/ae-analysis/references/adhoc_run.md +15 -7
  45. package/skills/ae-analysis/references/agent_review_detail.md +11 -0
  46. package/skills/ae-analysis/references/agent_review_evidence.md +46 -0
  47. package/skills/ae-analysis/references/agent_review_list.md +9 -0
  48. package/skills/ae-analysis/references/agent_review_preflight.md +96 -0
  49. package/skills/ae-analysis/references/agent_review_priorities_comparisons.md +76 -0
  50. package/skills/ae-analysis/references/agent_review_records.md +9 -0
  51. package/skills/ae-analysis/references/agent_review_retry.md +12 -0
  52. package/skills/ae-analysis/references/agent_review_review.md +16 -0
  53. package/skills/ae-analysis/references/agent_review_submit_to_page.md +184 -0
  54. package/skills/ae-analysis/references/ai_models/attribution.md +29 -0
  55. package/skills/ae-analysis/references/ai_models/distribution.md +40 -0
  56. package/skills/ae-analysis/references/ai_models/event.md +108 -0
  57. package/skills/ae-analysis/references/ai_models/funnel.md +46 -0
  58. package/skills/ae-analysis/references/ai_models/heat_map.md +26 -0
  59. package/skills/ae-analysis/references/ai_models/interval.md +20 -0
  60. package/skills/ae-analysis/references/ai_models/path.md +38 -0
  61. package/skills/ae-analysis/references/ai_models/prop_analysis.md +39 -0
  62. package/skills/ae-analysis/references/ai_models/rank_list.md +25 -0
  63. package/skills/ae-analysis/references/ai_models/retention.md +70 -0
  64. package/skills/ae-analysis/references/ai_models/revenue.md +28 -0
  65. package/skills/ae-analysis/references/ai_models/sql.md +74 -0
  66. package/skills/ae-analysis/references/ai_models/tag.md +19 -0
  67. package/skills/ae-analysis/references/ai_models.md +32 -473
  68. package/skills/ae-analysis/references/alert_create.md +7 -7
  69. package/skills/ae-analysis/references/alert_delete.md +4 -6
  70. package/skills/ae-analysis/references/alert_detail_list.md +7 -9
  71. package/skills/ae-analysis/references/alert_get.md +5 -7
  72. package/skills/ae-analysis/references/alert_job_list.md +4 -6
  73. package/skills/ae-analysis/references/alert_list.md +6 -8
  74. package/skills/ae-analysis/references/alert_notice_config_list.md +4 -6
  75. package/skills/ae-analysis/references/alert_start.md +5 -7
  76. package/skills/ae-analysis/references/alert_stop.md +5 -7
  77. package/skills/ae-analysis/references/alert_update.md +8 -8
  78. package/skills/ae-analysis/references/analysis_data_export.md +72 -0
  79. package/skills/ae-analysis/references/analysis_data_retrieval.md +32 -196
  80. package/skills/ae-analysis/references/analysis_gateway_assets.md +23 -180
  81. package/skills/ae-analysis/references/analysis_interpretation.md +37 -17
  82. package/skills/ae-analysis/references/asset_abnormal_get.md +0 -1
  83. package/skills/ae-analysis/references/asset_abnormal_list.md +0 -1
  84. package/skills/ae-analysis/references/asset_authentication_export.md +4 -0
  85. package/skills/ae-analysis/references/asset_authentication_list.md +7 -1
  86. package/skills/ae-analysis/references/asset_authentication_update.md +5 -1
  87. package/skills/ae-analysis/references/asset_batch_dashboard_schedule_freeze.md +8 -6
  88. package/skills/ae-analysis/references/asset_batch_delete.md +6 -6
  89. package/skills/ae-analysis/references/asset_batch_disable_auto_backup.md +4 -5
  90. package/skills/ae-analysis/references/asset_batch_disable_auto_update.md +5 -6
  91. package/skills/ae-analysis/references/asset_batch_handover.md +4 -5
  92. package/skills/ae-analysis/references/asset_batch_info_export.md +4 -5
  93. package/skills/ae-analysis/references/asset_batch_sql_export.md +5 -6
  94. package/skills/ae-analysis/references/asset_dependency_list.md +4 -5
  95. package/skills/ae-analysis/references/asset_export.md +4 -5
  96. package/skills/ae-analysis/references/asset_impact_list.md +5 -9
  97. package/skills/ae-analysis/references/asset_lineage_get.md +5 -6
  98. package/skills/ae-analysis/references/asset_list.md +4 -5
  99. package/skills/ae-analysis/references/asset_query_history_list.md +4 -8
  100. package/skills/ae-analysis/references/asset_recent_list.md +0 -1
  101. package/skills/ae-analysis/references/asset_search.md +12 -9
  102. package/skills/ae-analysis/references/asset_url_get.md +3 -4
  103. package/skills/ae-analysis/references/bi_panel_copy.md +2 -2
  104. package/skills/ae-analysis/references/bi_panel_page_data_export.md +4 -12
  105. package/skills/ae-analysis/references/bi_panel_page_data_run.md +2 -0
  106. package/skills/ae-analysis/references/catalog_export.md +4 -17
  107. package/skills/ae-analysis/references/catalog_list.md +4 -4
  108. package/skills/ae-analysis/references/check_delete.md +5 -7
  109. package/skills/ae-analysis/references/check_export.md +11 -11
  110. package/skills/ae-analysis/references/check_get.md +8 -10
  111. package/skills/ae-analysis/references/check_list.md +4 -6
  112. package/skills/ae-analysis/references/check_retry.md +8 -10
  113. package/skills/ae-analysis/references/check_run.md +2 -4
  114. package/skills/ae-analysis/references/command_index.md +44 -26
  115. package/skills/ae-analysis/references/dashboard_report_data_export.md +5 -13
  116. package/skills/ae-analysis/references/dashboard_report_data_run.md +1 -1
  117. package/skills/ae-analysis/references/dashboard_update.md +14 -3
  118. package/skills/ae-analysis/references/datatable_columns_get.md +0 -1
  119. package/skills/ae-analysis/references/datatable_influence_list.md +0 -1
  120. package/skills/ae-analysis/references/datatable_version_get.md +0 -1
  121. package/skills/ae-analysis/references/datatable_version_list.md +0 -1
  122. package/skills/ae-analysis/references/debug_device_add.md +1 -2
  123. package/skills/ae-analysis/references/drilldown_entities_export.md +3 -3
  124. package/skills/ae-analysis/references/drilldown_events_export.md +3 -2
  125. package/skills/ae-analysis/references/drilldown_user_events_export.md +2 -2
  126. package/skills/ae-analysis/references/entity_detail_export.md +3 -2
  127. package/skills/ae-analysis/references/entity_detail_run.md +1 -0
  128. package/skills/ae-analysis/references/event_blacklist_add.md +5 -7
  129. package/skills/ae-analysis/references/event_blacklist_list.md +4 -6
  130. package/skills/ae-analysis/references/event_blacklist_update.md +6 -8
  131. package/skills/ae-analysis/references/event_changelog_list.md +0 -1
  132. package/skills/ae-analysis/references/event_create.md +0 -1
  133. package/skills/ae-analysis/references/event_detail_export.md +3 -2
  134. package/skills/ae-analysis/references/event_detail_run.md +1 -0
  135. package/skills/ae-analysis/references/event_export.md +0 -1
  136. package/skills/ae-analysis/references/event_get.md +0 -1
  137. package/skills/ae-analysis/references/event_hide_update.md +0 -1
  138. package/skills/ae-analysis/references/event_influence_list.md +0 -1
  139. package/skills/ae-analysis/references/event_list.md +0 -1
  140. package/skills/ae-analysis/references/event_property_bundle_export.md +5 -14
  141. package/skills/ae-analysis/references/event_property_bundle_import.md +2 -6
  142. package/skills/ae-analysis/references/event_relation_update.md +0 -1
  143. package/skills/ae-analysis/references/event_update.md +0 -1
  144. package/skills/ae-analysis/references/exchange_config_update.md +0 -1
  145. package/skills/ae-analysis/references/exchange_rate_refresh.md +0 -1
  146. package/skills/ae-analysis/references/exchange_rule_list.md +0 -1
  147. package/skills/ae-analysis/references/exchange_rule_update.md +0 -1
  148. package/skills/ae-analysis/references/exchange_rule_validate.md +0 -1
  149. package/skills/ae-analysis/references/governance_recommendation_decisions.md +23 -0
  150. package/skills/ae-analysis/references/governance_recommendation_export.md +108 -0
  151. package/skills/ae-analysis/references/governance_recommendation_submit.md +41 -0
  152. package/skills/ae-analysis/references/history_tag_data_drilldown_export.md +4 -4
  153. package/skills/ae-analysis/references/history_tag_data_export.md +3 -3
  154. package/skills/ae-analysis/references/ingest_error_list.md +7 -9
  155. package/skills/ae-analysis/references/ingest_summary.md +6 -8
  156. package/skills/ae-analysis/references/live_data_export.md +10 -10
  157. package/skills/ae-analysis/references/live_data_list.md +7 -9
  158. package/skills/ae-analysis/references/metadata_resolution.md +78 -0
  159. package/skills/ae-analysis/references/metric_export.md +0 -1
  160. package/skills/ae-analysis/references/metric_get.md +0 -1
  161. package/skills/ae-analysis/references/metric_list.md +4 -5
  162. package/skills/ae-analysis/references/metric_update.md +0 -1
  163. package/skills/ae-analysis/references/operation_record_export.md +4 -5
  164. package/skills/ae-analysis/references/operation_record_list.md +4 -5
  165. package/skills/ae-analysis/references/personal_semantic_preference_list.md +18 -1
  166. package/skills/ae-analysis/references/plan_change_log_export.md +10 -10
  167. package/skills/ae-analysis/references/plan_change_log_list.md +4 -6
  168. package/skills/ae-analysis/references/plan_delete_items.md +2 -4
  169. package/skills/ae-analysis/references/plan_export.md +9 -9
  170. package/skills/ae-analysis/references/plan_generate.md +2 -4
  171. package/skills/ae-analysis/references/plan_get.md +4 -6
  172. package/skills/ae-analysis/references/plan_import_excel.md +6 -8
  173. package/skills/ae-analysis/references/plan_save_items.md +2 -4
  174. package/skills/ae-analysis/references/plan_sync_from_meta.md +4 -6
  175. package/skills/ae-analysis/references/project_access_detail_get.md +0 -1
  176. package/skills/ae-analysis/references/project_data_power_get.md +0 -1
  177. package/skills/ae-analysis/references/project_data_power_list.md +0 -1
  178. package/skills/ae-analysis/references/project_data_power_upsert.md +0 -1
  179. package/skills/ae-analysis/references/project_entity_create.md +0 -1
  180. package/skills/ae-analysis/references/project_entity_event_list.md +0 -1
  181. package/skills/ae-analysis/references/project_entity_get.md +0 -1
  182. package/skills/ae-analysis/references/project_entity_list.md +0 -1
  183. package/skills/ae-analysis/references/project_entity_update.md +0 -1
  184. package/skills/ae-analysis/references/project_function_list.md +0 -1
  185. package/skills/ae-analysis/references/project_info_get.md +0 -1
  186. package/skills/ae-analysis/references/project_info_list.md +0 -1
  187. package/skills/ae-analysis/references/project_info_update.md +0 -1
  188. package/skills/ae-analysis/references/project_mark_time_create.md +0 -1
  189. package/skills/ae-analysis/references/project_mark_time_list.md +0 -1
  190. package/skills/ae-analysis/references/project_mark_time_update.md +0 -1
  191. package/skills/ae-analysis/references/project_member_add.md +6 -5
  192. package/skills/ae-analysis/references/project_member_batch_update.md +0 -1
  193. package/skills/ae-analysis/references/project_member_candidate_list.md +4 -3
  194. package/skills/ae-analysis/references/project_member_handover_run.md +2 -3
  195. package/skills/ae-analysis/references/project_member_list.md +0 -1
  196. package/skills/ae-analysis/references/project_member_receiver_list.md +0 -1
  197. package/skills/ae-analysis/references/project_member_update.md +0 -1
  198. package/skills/ae-analysis/references/project_owner_update.md +0 -1
  199. package/skills/ae-analysis/references/project_permission_binding_list.md +0 -1
  200. package/skills/ae-analysis/references/project_role_function_list.md +0 -1
  201. package/skills/ae-analysis/references/project_role_get.md +0 -1
  202. package/skills/ae-analysis/references/project_role_list.md +0 -1
  203. package/skills/ae-analysis/references/project_role_upsert.md +32 -2
  204. package/skills/ae-analysis/references/project_role_user_list.md +0 -1
  205. package/skills/ae-analysis/references/project_semantic_knowledge_wiki.md +214 -0
  206. package/skills/ae-analysis/references/project_semantic_knowledge_wiki_plan_schema.md +93 -0
  207. package/skills/ae-analysis/references/project_timezone_get.md +0 -1
  208. package/skills/ae-analysis/references/project_timezone_overview.md +0 -1
  209. package/skills/ae-analysis/references/project_timezone_update.md +0 -1
  210. package/skills/ae-analysis/references/project_user_id_items_update.md +0 -1
  211. package/skills/ae-analysis/references/property_changelog_list.md +0 -1
  212. package/skills/ae-analysis/references/property_create.md +0 -1
  213. package/skills/ae-analysis/references/property_export.md +0 -1
  214. package/skills/ae-analysis/references/property_get.md +0 -1
  215. package/skills/ae-analysis/references/property_hide_update.md +0 -1
  216. package/skills/ae-analysis/references/property_influence_list.md +0 -1
  217. package/skills/ae-analysis/references/property_list.md +3 -4
  218. package/skills/ae-analysis/references/property_related_events.md +0 -1
  219. package/skills/ae-analysis/references/property_relation_update.md +0 -1
  220. package/skills/ae-analysis/references/property_update.md +0 -1
  221. package/skills/ae-analysis/references/report_create.md +4 -2
  222. package/skills/ae-analysis/references/report_data_export.md +11 -9
  223. package/skills/ae-analysis/references/report_data_run.md +14 -7
  224. package/skills/ae-analysis/references/report_get.md +5 -3
  225. package/skills/ae-analysis/references/report_list.md +2 -0
  226. package/skills/ae-analysis/references/report_update.md +5 -3
  227. package/skills/ae-analysis/references/rule_create.md +5 -6
  228. package/skills/ae-analysis/references/rule_delete.md +5 -5
  229. package/skills/ae-analysis/references/rule_list.md +3 -4
  230. package/skills/ae-analysis/references/rule_schema.md +3 -4
  231. package/skills/ae-analysis/references/rule_update.md +5 -6
  232. package/skills/ae-analysis/references/sdk_sample_generate.md +2 -4
  233. package/skills/ae-analysis/references/sql_table_columns.md +1 -1
  234. package/skills/ae-analysis/references/super_metadata_batch_create.md +1 -1
  235. package/skills/ae-analysis/references/super_metadata_batch_edit.md +1 -1
  236. package/skills/ae-analysis/references/system_member_add.md +1 -2
  237. package/skills/ae-analysis/references/system_member_status_update.md +1 -1
  238. package/skills/ae-analysis/references/system_ops_alert_contact_list.md +1 -1
  239. package/skills/ae-analysis/references/system_ops_alert_contact_test.md +0 -1
  240. package/skills/ae-analysis/references/system_query_monitor_overview.md +3 -3
  241. package/skills/ae-analysis/references/system_query_task_export.md +4 -14
  242. package/skills/ae-analysis/references/system_query_task_get.md +1 -1
  243. package/skills/ae-analysis/references/system_query_task_list.md +5 -6
  244. package/skills/ae-analysis/references/system_receiver_address_upsert.md +3 -3
  245. package/skills/ae-analysis/references/system_receiver_detection_get.md +1 -1
  246. package/skills/ae-analysis/references/system_third_party_login_disable.md +1 -1
  247. package/skills/ae-analysis/references/system_usage_trend_export.md +3 -12
  248. package/skills/ae-analysis/references/user_cluster_list.md +1 -1
  249. package/skills/ae-analysis/references/user_cluster_member_export.md +4 -4
  250. package/skills/ae-analysis/references/user_tag_list.md +1 -1
  251. package/skills/ae-analysis/references/user_tag_member_export.md +4 -4
  252. package/skills/ae-analysis/references/virtual_event_create.md +10 -5
  253. package/skills/ae-analysis/references/virtual_event_get.md +0 -1
  254. package/skills/ae-analysis/references/virtual_property_create.md +0 -1
  255. package/skills/ae-analysis/references/virtual_property_sql_rule_update.md +0 -1
  256. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/build-project-semantic-wiki.mjs +1054 -0
  257. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/company-kb.mjs +112 -0
  258. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/default-compile-rules.md +30 -0
  259. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/generate-build-ir.mjs +2735 -0
  260. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/package-wiki-source-zip.mjs +376 -0
  261. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/plan-kb-source-sync.mjs +264 -0
  262. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/precompiled-source.mjs +49 -0
  263. package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/upload-kb-sources-concurrently.mjs +200 -0
  264. package/skills/ae-analysis/scripts/read_results.py +197 -0
  265. package/skills/ae-analysis-global/SKILL.md +1 -1
  266. package/skills/ae-capability/SKILL.md +1 -1
  267. package/skills/ae-community/SKILL.md +1 -1
  268. package/skills/ae-current-context/SKILL.md +53 -0
  269. package/skills/ae-data-integration/SKILL.md +5 -4
  270. package/skills/ae-data-integration/references/lark-bitable-source.md +288 -0
  271. package/skills/ae-data-integration/references/lark-sheet-source.md +130 -0
  272. package/skills/ae-data-integration/references/manual-export-source.md +83 -0
  273. package/skills/ae-data-integration/references/reuse.md +2 -0
  274. package/skills/ae-data-integration/references/sink-upload.md +32 -0
  275. package/skills/ae-data-integration/references/tracking-plan.md +4 -1
  276. package/skills/ae-data-integration/references/ue-mapping.md +2 -2
  277. package/skills/ae-data-integration-helper/SKILL.md +5 -5
  278. package/skills/ae-data-integration-helper/references/android_sdk_faq.md +3 -3
  279. package/skills/ae-data-integration-helper/references/c_sdk_faq.md +3 -3
  280. package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +1 -1
  281. package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +3 -3
  282. package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +1 -1
  283. package/skills/ae-data-integration-helper/references/java_sdk_faq.md +3 -3
  284. package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +1 -1
  285. package/skills/ae-data-integration-helper/references/logbus2_guide.md +1 -1
  286. package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +2 -2
  287. package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +2 -2
  288. package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +1 -1
  289. package/skills/ae-data-integration-helper/references/python_sdk_faq.md +2 -2
  290. package/skills/ae-data-integration-helper/references/restful_api_notes.md +2 -2
  291. package/skills/ae-data-integration-helper/references/sdk_log_guide.md +3 -3
  292. package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +11 -11
  293. package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +1 -1
  294. package/skills/ae-dataops/SKILL.md +1 -1
  295. package/skills/ae-engage/SKILL.md +4 -3
  296. package/skills/ae-engage/references/build-task-save-guide.md +3 -0
  297. package/skills/ae-engage/references/flow-metric-update.md +115 -1
  298. package/skills/ae-engage/references/save-flow.md +3 -0
  299. package/skills/ae-engage/references/save-task.md +21 -0
  300. package/skills/ae-engage/references/task-metric-update.md +151 -0
  301. package/skills/ae-generate-tracking-code/SKILL.md +2 -1
  302. package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +1 -1
  303. package/skills/ae-generate-tracking-code/references/datax-config.md +1 -1
  304. package/skills/ae-generate-tracking-code/references/logbus-config.md +1 -1
  305. package/skills/ae-generate-tracking-code/references/modes.md +1 -1
  306. package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +5 -5
  307. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +3 -3
  308. package/skills/ae-generate-tracking-plan/SKILL.md +2 -2
  309. package/skills/ae-generate-tracking-plan/references/te-api.md +1 -0
  310. package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +3 -2
  311. package/skills/ae-kb/SKILL.md +41 -2
  312. package/skills/ae-kb/references/analysis-workflow.md +292 -0
  313. package/skills/ae-kb/references/source-mutations.md +95 -0
  314. package/skills/ae-kb-discovery/SKILL.md +5 -1
  315. package/skills/ae-metadata/SKILL.md +1 -1
  316. package/skills/ae-migrate-tracking-code/SKILL.md +195 -0
  317. package/skills/ae-migrate-tracking-code/references/ae-preset-properties.md +76 -0
  318. package/skills/ae-migrate-tracking-code/references/ir.md +167 -0
  319. package/skills/ae-migrate-tracking-code/references/mapping-framework.md +112 -0
  320. package/skills/ae-migrate-tracking-code/references/providers/README.md +58 -0
  321. package/skills/ae-migrate-tracking-code/references/providers/amplitude.md +208 -0
  322. package/skills/ae-migrate-tracking-code/references/providers/firebase.md +160 -0
  323. package/skills/ae-migrate-tracking-code/references/providers/ga4.md +92 -0
  324. package/skills/ae-migrate-tracking-code/references/providers/mixpanel.md +150 -0
  325. package/skills/ae-migrate-tracking-code/references/providers/sensors-data.md +146 -0
  326. package/skills/ae-system/SKILL.md +4 -4
  327. package/skills/ae-team/SKILL.md +2 -2
  328. package/skills/ae-use-agent/references/local-agent.md +1 -1
  329. package/assets/workbuddy-host-page/thinkingai.png +0 -0
  330. package/assets/workbuddy-host-page/workbuddy.png +0 -0
  331. package/bin/ae-cli-workbuddy.js +0 -7
  332. package/dist/chunk-QSO4SA6C.js +0 -72
  333. package/skills/ae-analysis/metadata_resolution.md +0 -184
@@ -1,19 +1,27 @@
1
1
  import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
2
2
  import {
3
+ readFileSync,
3
4
  require_excel,
4
5
  require_styles_xform,
5
6
  require_worksheet_reader,
7
+ set_fs,
8
+ utils,
6
9
  validateAndFix,
7
10
  validateDraft
8
- } from "./chunk-QYJ252CT.js";
9
- import "./chunk-UL6SJDYE.js";
10
- import "./chunk-ARTIHWVD.js";
11
+ } from "./chunk-4NRCTUZJ.js";
12
+ import "./chunk-DVMLWQD4.js";
13
+ import {
14
+ require_archiver
15
+ } from "./chunk-EQ255HKO.js";
16
+ import "./chunk-V2NUHPXF.js";
17
+ import {
18
+ getConfigDir
19
+ } from "./chunk-7FTTULED.js";
11
20
  import {
12
21
  CliValidationError,
13
22
  LocalDataUploadError,
14
- __toESM,
15
- getConfigDir
16
- } from "./chunk-NXRKDG6E.js";
23
+ __toESM
24
+ } from "./chunk-MAPZ7VB6.js";
17
25
 
18
26
  // src/commands/data-integration/inspect.ts
19
27
  import { basename as basename3 } from "path";
@@ -111,18 +119,18 @@ var import_exceljs = __toESM(require_excel(), 1);
111
119
  var import_worksheet_reader = __toESM(require_worksheet_reader(), 1);
112
120
  var import_styles_xform = __toESM(require_styles_xform(), 1);
113
121
  import { createHash } from "crypto";
122
+ import * as nodeFs from "fs";
114
123
  import { createReadStream as createReadStream2, statSync } from "fs";
115
124
  import { extname, basename } from "path";
116
125
  import { createInterface } from "readline";
117
126
  import { StringDecoder } from "string_decoder";
118
127
  import { pipeline } from "stream/promises";
119
- import XLSXMod from "xlsx";
120
128
  import { parse as parseCsv } from "csv-parse";
121
129
  import { parse as parseCsvSync } from "csv-parse/sync";
122
130
  import createJsonParser from "stream-json";
123
- import Pick from "stream-json/filters/Pick.js";
124
- import StreamArray from "stream-json/streamers/StreamArray.js";
125
- import StreamValues from "stream-json/streamers/StreamValues.js";
131
+ import pick from "stream-json/filters/pick.js";
132
+ import streamArray from "stream-json/streamers/stream-array.js";
133
+ import streamValues from "stream-json/streamers/stream-values.js";
126
134
  import * as unzipper from "unzipper";
127
135
  import { SaxesParser } from "saxes";
128
136
 
@@ -547,7 +555,9 @@ function buildObjectChildren(objects, parentPath) {
547
555
  }
548
556
  function buildNode(path, name, values, nonEmpty) {
549
557
  const arrays = values.filter(Array.isArray);
550
- const objects = values.filter((value) => value !== null && typeof value === "object" && !Array.isArray(value));
558
+ const objects = values.filter(
559
+ (value) => value !== null && typeof value === "object" && !Array.isArray(value)
560
+ );
551
561
  const structural = arrays.length + objects.length;
552
562
  if (structural > 0 && structural >= values.length - structural) {
553
563
  if (arrays.length > objects.length) {
@@ -632,7 +642,7 @@ function isStrongDateTime(value) {
632
642
  }
633
643
 
634
644
  // src/commands/data-integration/input.ts
635
- var XLSX = XLSXMod.default ?? XLSXMod;
645
+ set_fs(nodeFs);
636
646
  function resolveLocalDataInputMeta(filePath) {
637
647
  let format = resolveFormat(filePath);
638
648
  let delimiter;
@@ -918,7 +928,7 @@ async function discoverDataSets(filePath, format) {
918
928
  return { visible: [{ id: "$", kind: "file", label: basename(filePath), selector: "$" }], hidden: [] };
919
929
  }
920
930
  if (format === "xls") {
921
- const workbook = XLSX.readFile(filePath, { dense: true });
931
+ const workbook = readFileSync(filePath, { dense: true });
922
932
  return {
923
933
  visible: workbook.SheetNames.map((name) => ({ id: `sheet:${name}`, kind: "sheet", label: name, selector: name })),
924
934
  hidden: []
@@ -1054,9 +1064,9 @@ async function streamJsonLines(filePath, onRow, options) {
1054
1064
  async function streamJson(filePath, selector, onRow, options) {
1055
1065
  let count = 0;
1056
1066
  const parser = createJsonParser();
1057
- const streamer = selector === "$object" ? StreamValues.streamValues() : StreamArray.streamArray();
1067
+ const streamer = selector === "$object" ? streamValues.asStream() : streamArray.asStream();
1058
1068
  const source = decodeTextStream(filePath, options.encoding ?? "utf-8");
1059
- const chain = selector === "$" || selector === "$object" ? source.pipe(parser).pipe(streamer) : source.pipe(parser).pipe(Pick.pick({ filter: selector })).pipe(streamer);
1069
+ const chain = selector === "$" || selector === "$object" ? source.pipe(parser).pipe(streamer) : source.pipe(parser).pipe(pick.asStream({ filter: selector })).pipe(streamer);
1060
1070
  for await (const item of chain) {
1061
1071
  count += 1;
1062
1072
  await onRow(flattenLocalDataRow(item.value, options.flattenRules, options.flattenMisses), count);
@@ -1221,10 +1231,10 @@ async function readExcelSheetHeaders(filePath, format) {
1221
1231
  return format === "xls" ? readXlsSheetHeaders(filePath) : readXlsxSheetHeaders(filePath);
1222
1232
  }
1223
1233
  function readXlsSheetHeaders(filePath) {
1224
- const workbook = XLSX.readFile(filePath, { dense: true });
1234
+ const workbook = readFileSync(filePath, { dense: true });
1225
1235
  return workbook.SheetNames.map((name) => {
1226
1236
  const sheet = workbook.Sheets[name];
1227
- const rows = sheet ? XLSX.utils.sheet_to_json(sheet, { header: 1, raw: true, defval: null }) : [];
1237
+ const rows = sheet ? utils.sheet_to_json(sheet, { header: 1, raw: true, defval: null }) : [];
1228
1238
  return { name, headers: firstRowHeaders(rows[0] ?? []) };
1229
1239
  });
1230
1240
  }
@@ -1486,7 +1496,7 @@ function decodeXml(source) {
1486
1496
  return source.replace(/&quot;/g, '"').replace(/&apos;/g, "'").replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
1487
1497
  }
1488
1498
  async function streamXls(filePath, sheetName, onRow, options) {
1489
- const workbook = XLSX.readFile(filePath, { cellDates: true, dense: true });
1499
+ const workbook = readFileSync(filePath, { cellDates: true, dense: true });
1490
1500
  const names = options.mergeSheets ? workbook.SheetNames : workbook.SheetNames.includes(sheetName) ? [sheetName] : [];
1491
1501
  if (names.length === 0) {
1492
1502
  throw new CliValidationError("The requested Excel Sheet was not found.", { code: "LOCAL_DATA_SET_NOT_FOUND" });
@@ -1496,7 +1506,7 @@ async function streamXls(filePath, sheetName, onRow, options) {
1496
1506
  for (const name of names) {
1497
1507
  const sheet = workbook.Sheets[name];
1498
1508
  if (!sheet) continue;
1499
- const allRows = XLSX.utils.sheet_to_json(sheet, { header: 1, raw: true, defval: null });
1509
+ const allRows = utils.sheet_to_json(sheet, { header: 1, raw: true, defval: null });
1500
1510
  const rows = allRows.slice(skipRows);
1501
1511
  if (rows.length === 0) continue;
1502
1512
  let headers = options.headerNames;
@@ -1675,7 +1685,7 @@ async function firstNonWhitespaceCharacter(filePath, encoding) {
1675
1685
  }
1676
1686
 
1677
1687
  // src/commands/data-integration/mapping.ts
1678
- import { readFileSync } from "fs";
1688
+ import { readFileSync as readFileSync2 } from "fs";
1679
1689
 
1680
1690
  // src/commands/data-integration/types.ts
1681
1691
  var MAPPING_VERSION = "ae-data-integration-mapping/v1";
@@ -1696,7 +1706,7 @@ function readLocalDataMapping(raw, options) {
1696
1706
  text = trimmed;
1697
1707
  } else {
1698
1708
  const filePath = trimmed.startsWith("@") ? trimmed.slice(1) : trimmed;
1699
- text = readFileSync(filePath, "utf8");
1709
+ text = readFileSync2(filePath, "utf8");
1700
1710
  }
1701
1711
  } catch {
1702
1712
  throw new CliValidationError("The local-data mapping could not be read.", {
@@ -3321,7 +3331,7 @@ import {
3321
3331
  existsSync,
3322
3332
  mkdirSync,
3323
3333
  readdirSync,
3324
- readFileSync as readFileSync2,
3334
+ readFileSync as readFileSync3,
3325
3335
  renameSync,
3326
3336
  statSync as statSync2,
3327
3337
  unlinkSync,
@@ -3689,7 +3699,7 @@ function readZoneOffset(row, field) {
3689
3699
  function readSalvageRowNumbers(path) {
3690
3700
  let text;
3691
3701
  try {
3692
- text = readFileSync2(path, "utf8");
3702
+ text = readFileSync3(path, "utf8");
3693
3703
  } catch {
3694
3704
  throw new CliValidationError("The salvage file could not be read.", {
3695
3705
  code: "LOCAL_DATA_SALVAGE_INVALID",
@@ -3711,13 +3721,14 @@ function readSalvageRowNumbers(path) {
3711
3721
  location: { field: "salvage-from", record: lineNumber }
3712
3722
  });
3713
3723
  }
3714
- if (typeof value !== "object" || value === null || Array.isArray(value) || !Number.isInteger(value.row_number) || value.row_number <= 0) {
3724
+ const rowNumber = typeof value === "object" && value !== null && !Array.isArray(value) ? value.row_number : void 0;
3725
+ if (typeof rowNumber !== "number" || !Number.isInteger(rowNumber) || rowNumber <= 0) {
3715
3726
  throw new CliValidationError("The salvage file is not an invalid.rows.jsonl quarantine file.", {
3716
3727
  code: "LOCAL_DATA_SALVAGE_INVALID",
3717
3728
  location: { field: "salvage-from", record: lineNumber }
3718
3729
  });
3719
3730
  }
3720
- rows.add(value.row_number);
3731
+ rows.add(rowNumber);
3721
3732
  }
3722
3733
  if (rows.size === 0) {
3723
3734
  throw new CliValidationError("The salvage file contains no rows.", {
@@ -4090,7 +4101,7 @@ var dataIntegrationConvert = {
4090
4101
  };
4091
4102
 
4092
4103
  // src/commands/data-integration/upload.ts
4093
- import { createReadStream as createReadStream4, readFileSync as readFileSync3, statSync as statSync3 } from "fs";
4104
+ import { createReadStream as createReadStream4, readFileSync as readFileSync4, statSync as statSync3 } from "fs";
4094
4105
  import { basename as basename5, dirname, resolve as resolve2 } from "path";
4095
4106
  import { createInterface as createInterface3 } from "readline";
4096
4107
  var DEFAULT_BATCH_SIZE = 500;
@@ -4324,7 +4335,7 @@ async function prepareUpload(ctx, enforceReady) {
4324
4335
  function readManifest(path) {
4325
4336
  let value;
4326
4337
  try {
4327
- value = JSON.parse(readFileSync3(path, "utf8"));
4338
+ value = JSON.parse(readFileSync4(path, "utf8"));
4328
4339
  } catch {
4329
4340
  throw new CliValidationError("The local-data manifest could not be read as JSON.", {
4330
4341
  code: "LOCAL_DATA_MANIFEST_INVALID",
@@ -4436,18 +4447,18 @@ function isRecord3(value) {
4436
4447
 
4437
4448
  // src/commands/data-integration/handoff.ts
4438
4449
  import { createHash as createHash3 } from "crypto";
4439
- import { chmodSync as chmodSync2, mkdirSync as mkdirSync2, mkdtempSync, readFileSync as readFileSync4, renameSync as renameSync2, rmSync, writeFileSync as writeFileSync2 } from "fs";
4450
+ import { chmodSync as chmodSync2, mkdirSync as mkdirSync2, mkdtempSync, readFileSync as readFileSync5, renameSync as renameSync2, rmSync, writeFileSync as writeFileSync2 } from "fs";
4440
4451
  import { dirname as dirname2, join as join3, resolve as resolve3 } from "path";
4441
4452
  import { tmpdir } from "os";
4442
4453
 
4443
4454
  // src/commands/data-integration/archive.ts
4444
- import archiver from "archiver";
4455
+ var import_archiver = __toESM(require_archiver(), 1);
4445
4456
  import { createWriteStream as createWriteStream2, readdirSync as readdirSync2, statSync as statSync4 } from "fs";
4446
4457
  import { join as join2, relative, sep } from "path";
4447
4458
  async function zipPackage(dir, zipPath) {
4448
4459
  await new Promise((resolvePromise, rejectPromise) => {
4449
4460
  const output = createWriteStream2(zipPath, { mode: 384 });
4450
- const zip = archiver("zip", { zlib: { level: 9 } });
4461
+ const zip = (0, import_archiver.default)("zip", { zlib: { level: 9 } });
4451
4462
  output.on("close", resolvePromise);
4452
4463
  output.on("error", rejectPromise);
4453
4464
  zip.on("error", rejectPromise);
@@ -5368,7 +5379,7 @@ function buildHandoffPackage(outDir, mapping, planFile) {
5368
5379
  function readHandoffIndex(path) {
5369
5380
  let raw;
5370
5381
  try {
5371
- raw = readFileSync4(path, "utf8");
5382
+ raw = readFileSync5(path, "utf8");
5372
5383
  } catch {
5373
5384
  return { version: HANDOFF_INDEX_VERSION, entries: [] };
5374
5385
  }
@@ -5392,7 +5403,7 @@ function readHandoffIndex(path) {
5392
5403
  function readPlanFile(path) {
5393
5404
  let raw;
5394
5405
  try {
5395
- raw = readFileSync4(path, "utf8");
5406
+ raw = readFileSync5(path, "utf8");
5396
5407
  } catch {
5397
5408
  throw new CliValidationError("The tracking-plan file could not be read.", {
5398
5409
  code: "LOCAL_DATA_HANDOFF_PLAN_NOT_FOUND",
@@ -5484,7 +5495,7 @@ var dataIntegrationHandoff = {
5484
5495
  index_file: join3(outDir, "index.json"),
5485
5496
  pipeline_file: join3(outDir, "pipeline.json"),
5486
5497
  shape_file: join3(outDir, "shape.json"),
5487
- zip_path: zipPathFor(outDir, fingerprints[0])
5498
+ zip_path: fingerprints[0] ? zipPathFor(outDir, fingerprints[0]) : void 0
5488
5499
  };
5489
5500
  },
5490
5501
  execute: async (ctx) => {
@@ -5540,7 +5551,6 @@ var dataIntegrationHandoff = {
5540
5551
  }
5541
5552
  };
5542
5553
  function zipPathFor(outDir, fingerprint) {
5543
- if (!fingerprint) return void 0;
5544
5554
  return join3(dirname2(resolve3(outDir)), `ae-data-integration-handoff-${fingerprint.slice(0, 8)}.zip`);
5545
5555
  }
5546
5556
  var RELAY_FILE_PATHS = [
@@ -5601,7 +5611,7 @@ function stageScopedPackage(outDir, mappingDirs, entries, relayFiles) {
5601
5611
  for (const rel of mappingDirFiles(dirName, planFile)) {
5602
5612
  const dest = join3(staging, rel);
5603
5613
  mkdirSync2(dirname2(dest), { recursive: true, mode: 448 });
5604
- writeFileSync2(dest, readFileSync4(join3(outDir, rel), "utf8"), { encoding: "utf8", mode: 384 });
5614
+ writeFileSync2(dest, readFileSync5(join3(outDir, rel), "utf8"), { encoding: "utf8", mode: 384 });
5605
5615
  chmodSync2(dest, 384);
5606
5616
  }
5607
5617
  }
@@ -5609,7 +5619,7 @@ function stageScopedPackage(outDir, mappingDirs, entries, relayFiles) {
5609
5619
  }
5610
5620
 
5611
5621
  // src/commands/data-integration/reuse.ts
5612
- import { readFileSync as readFileSync5 } from "fs";
5622
+ import { readFileSync as readFileSync6 } from "fs";
5613
5623
  import { dirname as dirname4, join as join5, resolve as resolve5 } from "path";
5614
5624
 
5615
5625
  // src/commands/data-integration/handoff-root.ts
@@ -5668,7 +5678,7 @@ function detectReuse(mapping, outDir) {
5668
5678
  function readFrozenEventName(path) {
5669
5679
  let value;
5670
5680
  try {
5671
- value = JSON.parse(readFileSync5(path, "utf8"));
5681
+ value = JSON.parse(readFileSync6(path, "utf8"));
5672
5682
  } catch {
5673
5683
  return {};
5674
5684
  }
package/dist/index.js CHANGED
@@ -1,4 +1,7 @@
1
1
  import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
2
+ import {
3
+ getLocalCliPackageInfo
4
+ } from "./chunk-E2JKXMVO.js";
2
5
  import {
3
6
  requiresConfirmation
4
7
  } from "./chunk-AMBFK2K3.js";
@@ -10,50 +13,52 @@ import {
10
13
  extractErrors,
11
14
  fixDraft,
12
15
  getPackageRoot,
16
+ readFileSync,
17
+ set_fs,
13
18
  t,
19
+ utils,
14
20
  validateAndFix,
15
21
  validateDraft,
16
22
  writeDraftXlsx
17
- } from "./chunk-QYJ252CT.js";
18
- import "./chunk-UL6SJDYE.js";
19
- import {
20
- getLocalCliPackageInfo
21
- } from "./chunk-E2JKXMVO.js";
23
+ } from "./chunk-4NRCTUZJ.js";
24
+ import "./chunk-DVMLWQD4.js";
25
+ import "./chunk-EQ255HKO.js";
26
+ import "./chunk-V2NUHPXF.js";
22
27
  import {
23
28
  resolveHost
24
- } from "./chunk-2BDQB42E.js";
29
+ } from "./chunk-JOCDD4ON.js";
25
30
  import {
26
31
  TeAgentApiError,
27
32
  TeAgentCredentialsError
28
- } from "./chunk-DU5MZQFQ.js";
33
+ } from "./chunk-HBGADCKA.js";
29
34
  import {
30
35
  CapabilityGatewayError,
31
36
  executeCapability,
32
37
  uploadInputFileBytes
33
- } from "./chunk-6MXFJVNP.js";
38
+ } from "./chunk-HFGZGYCG.js";
34
39
  import {
35
40
  formatCapabilityMissCompatHint,
36
41
  printError,
37
42
  printOutput,
38
43
  runHostCompatCheck
39
- } from "./chunk-ZCM47ROU.js";
44
+ } from "./chunk-DX5CDO34.js";
40
45
  import "./chunk-Y74WTIKJ.js";
41
46
  import {
42
47
  SecureStoreAuthError,
43
48
  getCliToken
44
- } from "./chunk-Y3S2KNNR.js";
49
+ } from "./chunk-7XGFSUOM.js";
45
50
  import {
46
51
  getActiveHost,
52
+ getConfigDir,
47
53
  safeJsonParse
48
- } from "./chunk-ARTIHWVD.js";
54
+ } from "./chunk-7FTTULED.js";
49
55
  import {
50
56
  CliValidationError,
51
57
  CommunityReportError,
52
58
  LocalDataUploadError,
53
59
  PermissionError,
54
- getConfigDir,
55
60
  logger
56
- } from "./chunk-NXRKDG6E.js";
61
+ } from "./chunk-MAPZ7VB6.js";
57
62
 
58
63
  // src/index.ts
59
64
  import { Command as CommanderCommand } from "commander";
@@ -208,7 +213,7 @@ async function runCommand(cmd, opts, globalOpts) {
208
213
  await ctx.out(result);
209
214
  } catch (err) {
210
215
  if (err?.type === "validation" && typeof err?.hint === "string" && String(err.message || "").includes("--jq")) {
211
- printError("validation", err.message, err.hint);
216
+ printError("validation", err.message, err.hint, err.code);
212
217
  process.exit(1);
213
218
  }
214
219
  const message = err.message || String(err);
@@ -228,7 +233,7 @@ async function runCommand(cmd, opts, globalOpts) {
228
233
  } else if (err instanceof PermissionError) {
229
234
  printError("permission", message, err.hint, err.code);
230
235
  } else if (err instanceof CapabilityGatewayError) {
231
- printError("api", message, err.hint ?? capabilityGatewayHint(err), err.code, err.meta);
236
+ printError(err.type, message, err.hint ?? capabilityGatewayHint(err), err.code, err.meta);
232
237
  } else if (err instanceof CommunityReportError) {
233
238
  printError("api", message, err.hint, err.code, err.meta, { log: false });
234
239
  } else if (err instanceof LocalDataUploadError) {
@@ -297,14 +302,14 @@ function createRuntimeContext(cmd, opts, globalOpts) {
297
302
  let _communityReportModule = null;
298
303
  async function getCommunityReportClient() {
299
304
  if (!_communityReportModule) {
300
- _communityReportModule = await import("./community-report-client-QE4RC2XG.js");
305
+ _communityReportModule = await import("./community-report-client-CU22W53K.js");
301
306
  }
302
307
  return _communityReportModule;
303
308
  }
304
309
  let _localDataUploadModule = null;
305
310
  async function getLocalDataUploadClient() {
306
311
  if (!_localDataUploadModule) {
307
- _localDataUploadModule = await import("./local-data-upload-client-LMVS7YAR.js");
312
+ _localDataUploadModule = await import("./local-data-upload-client-GTRIT64F.js");
308
313
  }
309
314
  return _localDataUploadModule;
310
315
  }
@@ -1114,7 +1119,8 @@ async function resolveTrackingTemplateByName(name) {
1114
1119
  import { existsSync as existsSync2, statSync } from "fs";
1115
1120
  var HOST_OPTION_DESC = "Override active AE host URL";
1116
1121
  function resolveTrackingHost(program2, opts) {
1117
- const root = program2.root ?? program2;
1122
+ let root = program2;
1123
+ while (root.parent) root = root.parent;
1118
1124
  const globalHost = root.opts()?.host;
1119
1125
  const explicitHost = opts.host || globalHost;
1120
1126
  const host = resolveHost(explicitHost);
@@ -1494,11 +1500,11 @@ async function detectProject(cwd) {
1494
1500
  }
1495
1501
 
1496
1502
  // src/tracking/xlsx/read.ts
1497
- import XLSXMod from "xlsx";
1503
+ import * as nodeFs from "fs";
1498
1504
  import path3 from "path";
1499
- var XLSX = XLSXMod.default ?? XLSXMod;
1505
+ set_fs(nodeFs);
1500
1506
  var VALID_PROP_TYPES = /* @__PURE__ */ new Set(["string", "number", "bool", "datetime", "object", "array_row", "array_string"]);
1501
- var VALID_UPDATE_TYPES = /* @__PURE__ */ new Set(["user_set", "user_setOnce", "user_add"]);
1507
+ var VALID_UPDATE_TYPES = /* @__PURE__ */ new Set(["user_set", "user_setOnce", "user_add", "user_append"]);
1502
1508
  function normalizeHeader(h) {
1503
1509
  return h.trim().replace(/[((]\s*(?:必填|必須|필수|required|Required)\s*[))]/g, "").trim().replace(/名称$/g, "\u540D");
1504
1510
  }
@@ -1801,7 +1807,7 @@ function fillDownMergedCells(rows, merges) {
1801
1807
  async function readTemplateXlsx(filePath) {
1802
1808
  let wb;
1803
1809
  try {
1804
- wb = XLSX.readFile(filePath);
1810
+ wb = readFileSync(filePath);
1805
1811
  } catch (err) {
1806
1812
  throw new Error(t("error.xlsx_read_failed", { path: filePath, error: String(err) }));
1807
1813
  }
@@ -1815,7 +1821,7 @@ async function readTemplateXlsx(filePath) {
1815
1821
  if (!sName.startsWith("#")) continue;
1816
1822
  if (allSheetNames("user_id").includes(sName)) continue;
1817
1823
  const ws = wb.Sheets[sName];
1818
- const rows = XLSX.utils.sheet_to_json(ws, {
1824
+ const rows = utils.sheet_to_json(ws, {
1819
1825
  header: 1,
1820
1826
  raw: false,
1821
1827
  defval: null
@@ -1875,7 +1881,7 @@ function findCol(colIndex, candidates, fallback) {
1875
1881
  }
1876
1882
  return fallback;
1877
1883
  }
1878
- var VALID_UPDATE_TYPES2 = /* @__PURE__ */ new Set(["user_set", "user_setOnce", "user_add"]);
1884
+ var VALID_UPDATE_TYPES2 = /* @__PURE__ */ new Set(["user_set", "user_setOnce", "user_add", "user_append"]);
1879
1885
  function parseType(raw) {
1880
1886
  const canonical = displayToType(raw);
1881
1887
  if (canonical) return canonical;
@@ -2165,13 +2171,13 @@ function registerCode(cmd) {
2165
2171
  }
2166
2172
 
2167
2173
  // src/tracking/wiki-query/query.ts
2168
- import { readFileSync, existsSync as existsSync4 } from "fs";
2174
+ import { readFileSync as readFileSync2, existsSync as existsSync4 } from "fs";
2169
2175
  import { join as join2 } from "path";
2170
2176
  var WIKI_ROOT = join2(getPackageRoot(), "wiki/te-docs");
2171
2177
  function searchIndex(keyword) {
2172
2178
  const indexPath = join2(WIKI_ROOT, "index.md");
2173
2179
  if (!existsSync4(indexPath)) return [];
2174
- const lines = readFileSync(indexPath, "utf8").split("\n");
2180
+ const lines = readFileSync2(indexPath, "utf8").split("\n");
2175
2181
  const kw = keyword.toLowerCase();
2176
2182
  const hits = [];
2177
2183
  for (const line of lines) {
@@ -2323,110 +2329,145 @@ program.name("ae-cli").version(version).description("CLI tool for ThinkingAI (AE
2323
2329
  "Optional: pre-execution preview without business logic (gateway /dry-run; other transports preview). Use alone to confirm a run; do not stack with --validate",
2324
2330
  false
2325
2331
  ).option("--yes", "Skip confirmation for high-risk write operations", false).option("--no-update-check", "Skip host compatibility checks", false);
2332
+ function warnLoadFailure(label, err) {
2333
+ const reason = err instanceof Error ? err.message : String(err);
2334
+ process.stderr.write(`warning: failed to load ${label}: ${reason}
2335
+ `);
2336
+ }
2326
2337
  async function loadCommands() {
2327
2338
  const commands = [];
2328
2339
  try {
2329
- const teAnalysis = await import("./te-analysis-TPYFOIFD.js");
2340
+ const teAnalysis = await import("./te-analysis-KQKCAI5H.js");
2330
2341
  commands.push(...teAnalysis.default);
2331
- } catch {
2342
+ } catch (err) {
2343
+ warnLoadFailure("domain te-analysis", err);
2332
2344
  }
2333
2345
  try {
2334
- const engage = await import("./te-engage-WVHBZAXH.js");
2346
+ const engage = await import("./te-engage-HSVSRW22.js");
2335
2347
  commands.push(...engage.default);
2336
- } catch {
2348
+ } catch (err) {
2349
+ warnLoadFailure("domain te-engage", err);
2337
2350
  }
2338
2351
  try {
2339
- const community = await import("./te-community-PWOTHSEC.js");
2352
+ const community = await import("./te-community-4OYU3BDA.js");
2340
2353
  commands.push(...community.default);
2341
- } catch {
2354
+ } catch (err) {
2355
+ warnLoadFailure("domain te-community", err);
2342
2356
  }
2343
2357
  try {
2344
- const dataops = await import("./te-dataops-ZJV5QVJU.js");
2358
+ const dataops = await import("./te-dataops-NFIPB6FX.js");
2345
2359
  commands.push(...dataops.default);
2346
- } catch {
2360
+ } catch (err) {
2361
+ warnLoadFailure("domain te-dataops", err);
2347
2362
  }
2348
2363
  try {
2349
- const teKb = await import("./te-kb-PNM2ZKBP.js");
2364
+ const teKb = await import("./te-kb-3TS73NO6.js");
2350
2365
  commands.push(...teKb.default);
2351
- } catch {
2366
+ } catch (err) {
2367
+ warnLoadFailure("domain te-kb", err);
2352
2368
  }
2353
2369
  try {
2354
- const teTeam = await import("./te-team-Y36TG6AQ.js");
2370
+ const teTeam = await import("./te-team-3I5AOX3N.js");
2355
2371
  commands.push(...teTeam.default);
2356
- } catch {
2372
+ } catch (err) {
2373
+ warnLoadFailure("domain te-team", err);
2357
2374
  }
2358
2375
  try {
2359
- const teAgent = await import("./te-agent-4T5TFHD6.js");
2376
+ const teAgent = await import("./te-agent-K5MSPNHJ.js");
2360
2377
  commands.push(...teAgent.default);
2361
- } catch {
2378
+ } catch (err) {
2379
+ warnLoadFailure("domain te-agent", err);
2362
2380
  }
2363
2381
  try {
2364
- const memory = await import("./memory-5ZC73XBC.js");
2382
+ const memory = await import("./memory-QGPSNCQS.js");
2365
2383
  commands.push(...memory.default);
2366
- } catch {
2384
+ } catch (err) {
2385
+ warnLoadFailure("domain memory", err);
2367
2386
  }
2368
2387
  try {
2369
- const teSystem = await import("./te-system-MRCMLAWW.js");
2388
+ const teSystem = await import("./te-system-STMHLS5J.js");
2370
2389
  commands.push(...teSystem.default);
2371
- } catch {
2390
+ } catch (err) {
2391
+ warnLoadFailure("domain te-system", err);
2372
2392
  }
2373
2393
  try {
2374
- const metadata = await import("./metadata-LBX6O24P.js");
2394
+ const metadata = await import("./metadata-JAQW7KGZ.js");
2375
2395
  commands.push(...metadata.default);
2376
- } catch {
2396
+ } catch (err) {
2397
+ warnLoadFailure("domain metadata", err);
2377
2398
  }
2378
2399
  try {
2379
- const personalSemanticPreference = await import("./personal-semantic-preference-7FVUTJZF.js");
2400
+ const personalSemanticPreference = await import("./personal-semantic-preference-QCZ2IZTK.js");
2380
2401
  commands.push(...personalSemanticPreference.default);
2381
- } catch {
2402
+ } catch (err) {
2403
+ warnLoadFailure("domain personal-semantic-preference", err);
2382
2404
  }
2383
2405
  try {
2384
- const dataIntegration = await import("./data-integration-SGRITHJS.js");
2406
+ const projectSemantic = await import("./project-semantic-64JURXKF.js");
2407
+ commands.push(...projectSemantic.default);
2408
+ } catch (err) {
2409
+ warnLoadFailure("domain project-semantic", err);
2410
+ }
2411
+ try {
2412
+ const dataIntegration = await import("./data-integration-HNGUKFIC.js");
2385
2413
  commands.push(...dataIntegration.default);
2386
- } catch {
2414
+ } catch (err) {
2415
+ warnLoadFailure("domain data-integration", err);
2416
+ }
2417
+ try {
2418
+ const context = await import("./context-IFJI3LIT.js");
2419
+ commands.push(...context.default);
2420
+ } catch (err) {
2421
+ warnLoadFailure("domain context", err);
2387
2422
  }
2388
2423
  return commands;
2389
2424
  }
2390
2425
  async function registerAuthCommands() {
2391
2426
  try {
2392
- const { registerAuth } = await import("./auth-HJG2L6DR.js");
2427
+ const { registerAuth } = await import("./auth-XZNXFRJS.js");
2393
2428
  registerAuth(program);
2394
- } catch {
2429
+ } catch (err) {
2430
+ warnLoadFailure("auth commands", err);
2395
2431
  }
2396
2432
  }
2397
2433
  async function registerConfigCommands() {
2398
2434
  try {
2399
- const { registerConfig } = await import("./config-XMRP5NDA.js");
2435
+ const { registerConfig } = await import("./config-XO3LI3SA.js");
2400
2436
  registerConfig(program);
2401
- } catch {
2437
+ } catch (err) {
2438
+ warnLoadFailure("config commands", err);
2402
2439
  }
2403
2440
  }
2404
2441
  async function registerCapabilityCommands() {
2405
2442
  try {
2406
- const { registerCapability } = await import("./capability-JHYVQNQ4.js");
2443
+ const { registerCapability } = await import("./capability-RJZ4KRGP.js");
2407
2444
  registerCapability(program);
2408
- } catch {
2445
+ } catch (err) {
2446
+ warnLoadFailure("capability commands", err);
2409
2447
  }
2410
2448
  }
2411
2449
  async function registerSyncCommand() {
2412
2450
  try {
2413
- const { registerSync } = await import("./sync-VVNDHU7R.js");
2451
+ const { registerSync } = await import("./sync-O45NXEQY.js");
2414
2452
  registerSync(program);
2415
- } catch {
2453
+ } catch (err) {
2454
+ warnLoadFailure("sync commands", err);
2416
2455
  }
2417
2456
  }
2418
2457
  async function registerModelCommand() {
2419
2458
  try {
2420
- const { registerModel } = await import("./model-CRDIVYN5.js");
2459
+ const { registerModel } = await import("./model-RNPQXIBI.js");
2421
2460
  registerModel(program);
2422
- } catch {
2461
+ } catch (err) {
2462
+ warnLoadFailure("model commands", err);
2423
2463
  }
2424
2464
  }
2425
2465
  async function registerUpdateCommand() {
2426
2466
  try {
2427
- const { registerUpdate } = await import("./update-UNKCZ5U5.js");
2467
+ const { registerUpdate } = await import("./update-RZXLPCRH.js");
2428
2468
  registerUpdate(program);
2429
- } catch {
2469
+ } catch (err) {
2470
+ warnLoadFailure("update commands", err);
2430
2471
  }
2431
2472
  }
2432
2473
  async function main() {
@@ -2,7 +2,7 @@ import { createRequire as __createRequire } from 'node:module'; const require =
2
2
  import {
3
3
  LocalDataUploadError,
4
4
  logger
5
- } from "./chunk-NXRKDG6E.js";
5
+ } from "./chunk-MAPZ7VB6.js";
6
6
 
7
7
  // src/core/local-data-upload-client.ts
8
8
  import { createHash } from "crypto";
@@ -36,6 +36,7 @@ async function performAttempt(endpoint, body, options) {
36
36
  let response;
37
37
  let responseText = "";
38
38
  try {
39
+ const requestBody = typeof body === "string" ? body : Uint8Array.from(body).buffer;
39
40
  response = await fetchImpl(endpoint, {
40
41
  method: "POST",
41
42
  headers: {
@@ -43,7 +44,7 @@ async function performAttempt(endpoint, body, options) {
43
44
  "Accept": "application/json",
44
45
  ...compress ? { "Content-Encoding": "gzip" } : {}
45
46
  },
46
- body,
47
+ body: requestBody,
47
48
  redirect: "manual",
48
49
  signal: controller.signal
49
50
  });
@@ -2,11 +2,11 @@ import { createRequire as __createRequire } from 'node:module'; const require =
2
2
  import {
3
3
  buildCapabilityGatewayUrl,
4
4
  callCapabilityApi
5
- } from "./chunk-6MXFJVNP.js";
5
+ } from "./chunk-HFGZGYCG.js";
6
6
  import "./chunk-Y74WTIKJ.js";
7
- import "./chunk-Y3S2KNNR.js";
8
- import "./chunk-ARTIHWVD.js";
9
- import "./chunk-NXRKDG6E.js";
7
+ import "./chunk-7XGFSUOM.js";
8
+ import "./chunk-7FTTULED.js";
9
+ import "./chunk-MAPZ7VB6.js";
10
10
 
11
11
  // src/commands/memory/index.ts
12
12
  import fs from "fs/promises";