@thinkingai/ae-cli 6.0.30 → 6.0.32

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 (476) hide show
  1. package/README.md +8 -9
  2. package/README.zh.md +8 -9
  3. package/dist/{auth-7TQRGLBC.js → auth-7H3HAAJ3.js} +10 -10
  4. package/dist/{capability-KVA55RMK.js → capability-QW4AVJHI.js} +49 -10
  5. package/dist/{capability-LKHLZQPD.js → capability-SCRFGODD.js} +49 -10
  6. package/dist/{chunk-GWZ5MYWE.js → chunk-6LEYLOV3.js} +25 -4
  7. package/dist/chunk-7OLGDQQ2.js +71 -0
  8. package/dist/{chunk-THBBNYXI.js → chunk-DYOS6YY7.js} +100 -62
  9. package/dist/{chunk-OJR23CIK.js → chunk-I4A62X3N.js} +100 -61
  10. package/dist/{chunk-7QQ4233A.js → chunk-PKRD2IEM.js} +25 -4
  11. package/dist/{chunk-CWZUGF2J.js → chunk-PTE56QPL.js} +15 -0
  12. package/dist/chunk-TBHBYKXZ.js +71 -0
  13. package/dist/{chunk-ZAOL36CG.js → chunk-TNW2CI4W.js} +46 -30
  14. package/dist/{config-ZVPARN4R.js → config-7UZWDE74.js} +25 -25
  15. package/dist/index.js +182 -63
  16. package/dist/{metadata-6CCFV4K5.js → metadata-BFDL6RUK.js} +6 -43
  17. package/dist/{metadata-PDOIWH5O.js → metadata-FCLDBXX2.js} +6 -43
  18. package/dist/{raw-OHSUK42D.js → raw-CN542NGT.js} +8 -6
  19. package/dist/{sync-ULT5SECP.js → sync-ERNHDPB5.js} +1 -1
  20. package/dist/{te-agent-FAIBM3SA.js → te-agent-FCCWUDTJ.js} +1 -1
  21. package/dist/te-analysis-PUVF5IF4.js +5736 -0
  22. package/dist/te-analysis-UJDOKPAN.js +5736 -0
  23. package/dist/te-common-VUX3VOXZ.js +60 -0
  24. package/dist/te-common-XLAGWNIV.js +60 -0
  25. package/dist/{te-community-6A7LKYUH.js → te-community-PEZ2VEF7.js} +1 -1
  26. package/dist/{te-community-GMWFGILT.js → te-community-TSKJ652U.js} +1 -1
  27. package/dist/{te-dataops-Z53CTG2U.js → te-dataops-F36T656A.js} +32 -12
  28. package/dist/{te-dataops-6LIPYNGH.js → te-dataops-ZNJBQ6VT.js} +33 -12
  29. package/dist/te-engage-K4AEUPK5.js +3894 -0
  30. package/dist/te-engage-QBCCME22.js +3894 -0
  31. package/dist/{te-kb-NT33UHAE.js → te-kb-AYCODNU6.js} +56 -17
  32. package/dist/{te-meta-PKT27OTN.js → te-meta-ARDIW3YI.js} +4 -237
  33. package/dist/{te-meta-FADFLTDM.js → te-meta-UUROEODR.js} +4 -237
  34. package/dist/{te-team-RG75PR5D.js → te-team-OKCOX7OE.js} +5 -5
  35. package/package.json +15 -7
  36. package/skills/ae-agent/SKILL.md +6 -8
  37. package/skills/ae-agent/references/accept-skill-share.md +2 -2
  38. package/skills/ae-agent/references/add-attachment.md +3 -3
  39. package/skills/ae-agent/references/add-mcp.md +2 -3
  40. package/skills/ae-agent/references/add-model.md +3 -5
  41. package/skills/ae-agent/references/add-skill.md +2 -3
  42. package/skills/ae-agent/references/approve-skill.md +2 -2
  43. package/skills/ae-agent/references/auto-provision-mcp-credentials.md +3 -3
  44. package/skills/ae-agent/references/cancel-skill-submission.md +2 -2
  45. package/skills/ae-agent/references/copy-skill.md +3 -3
  46. package/skills/ae-agent/references/create-agent.md +3 -4
  47. package/skills/ae-agent/references/create-automation.md +5 -9
  48. package/skills/ae-agent/references/del-agent.md +3 -2
  49. package/skills/ae-agent/references/del-attachment.md +3 -2
  50. package/skills/ae-agent/references/del-mcp.md +3 -2
  51. package/skills/ae-agent/references/del-model.md +3 -2
  52. package/skills/ae-agent/references/del-skill-asset.md +3 -3
  53. package/skills/ae-agent/references/del-skill-reference.md +3 -3
  54. package/skills/ae-agent/references/del-skill-script.md +3 -3
  55. package/skills/ae-agent/references/del-skill.md +3 -2
  56. package/skills/ae-agent/references/edit-skill.md +4 -4
  57. package/skills/ae-agent/references/mcp-auth-disconnect.md +2 -2
  58. package/skills/ae-agent/references/mcp-auth-start.md +3 -3
  59. package/skills/ae-agent/references/reject-skill-share.md +2 -2
  60. package/skills/ae-agent/references/reject-skill.md +2 -2
  61. package/skills/ae-agent/references/rescan-skills.md +2 -2
  62. package/skills/ae-agent/references/set-mcp-credential.md +3 -3
  63. package/skills/ae-agent/references/set-mcp-meta.md +2 -2
  64. package/skills/ae-agent/references/set-skill-meta.md +2 -2
  65. package/skills/ae-agent/references/share-skill.md +3 -3
  66. package/skills/ae-agent/references/submit-skill.md +3 -3
  67. package/skills/ae-agent/references/toggle-mcp.md +3 -3
  68. package/skills/ae-agent/references/toggle-model.md +3 -3
  69. package/skills/ae-agent/references/toggle-skill.md +3 -3
  70. package/skills/ae-agent/references/update-agent.md +2 -2
  71. package/skills/ae-agent/references/update-automation.md +6 -8
  72. package/skills/ae-agent/references/update-mcp.md +4 -4
  73. package/skills/ae-agent/references/update-model.md +2 -3
  74. package/skills/ae-agent/references/upload-skill-asset.md +3 -3
  75. package/skills/ae-agent/references/upload-skill-reference.md +3 -3
  76. package/skills/ae-agent/references/upload-skill-script.md +3 -3
  77. package/skills/ae-agent/references/upload-skill.md +6 -7
  78. package/skills/ae-analysis/SKILL.md +108 -512
  79. package/skills/ae-analysis/references/adhoc_export.md +68 -0
  80. package/skills/ae-analysis/references/adhoc_run.md +54 -0
  81. package/skills/ae-analysis/references/ai_models.md +475 -0
  82. package/skills/ae-analysis/references/analysis_data_retrieval.md +101 -0
  83. package/skills/ae-analysis/references/analysis_drilldown_contract.md +93 -0
  84. package/skills/ae-analysis/references/analysis_gateway_assets.md +73 -12
  85. package/skills/ae-analysis/references/analysis_interpretation.md +38 -0
  86. package/skills/ae-analysis/references/artifact_download.md +13 -7
  87. package/skills/ae-analysis/references/asset_abnormal_get.md +5 -5
  88. package/skills/ae-analysis/references/asset_abnormal_list.md +5 -5
  89. package/skills/ae-analysis/references/asset_authentication_list.md +5 -5
  90. package/skills/ae-analysis/references/asset_authentication_update.md +6 -6
  91. package/skills/ae-analysis/references/asset_batch_dashboard_schedule_freeze.md +26 -0
  92. package/skills/ae-analysis/references/asset_batch_delete.md +26 -0
  93. package/skills/ae-analysis/references/asset_batch_disable_auto_backup.md +26 -0
  94. package/skills/ae-analysis/references/asset_batch_disable_auto_update.md +26 -0
  95. package/skills/ae-analysis/references/asset_batch_handover.md +26 -0
  96. package/skills/ae-analysis/references/asset_batch_info_export.md +25 -0
  97. package/skills/ae-analysis/references/asset_batch_sql_export.md +25 -0
  98. package/skills/ae-analysis/references/asset_dependency_list.md +30 -0
  99. package/skills/ae-analysis/references/asset_export.md +30 -0
  100. package/skills/ae-analysis/references/asset_impact_list.md +30 -0
  101. package/skills/ae-analysis/references/asset_lineage_get.md +25 -0
  102. package/skills/ae-analysis/references/asset_list.md +30 -0
  103. package/skills/ae-analysis/references/asset_query_history_list.md +30 -0
  104. package/skills/ae-analysis/references/asset_recent_list.md +4 -4
  105. package/skills/ae-analysis/references/asset_search.md +4 -4
  106. package/skills/ae-analysis/references/asset_url_get.md +29 -0
  107. package/skills/ae-analysis/references/audience_models.md +42 -0
  108. package/skills/ae-analysis/references/batch_create_metadata.md +5 -1
  109. package/skills/ae-analysis/references/batch_edit_metadata.md +4 -1
  110. package/skills/ae-analysis/references/bi_panel_copy.md +1 -1
  111. package/skills/ae-analysis/references/bi_panel_create.md +1 -1
  112. package/skills/ae-analysis/references/bi_panel_delete.md +2 -0
  113. package/skills/ae-analysis/references/bi_panel_list.md +4 -2
  114. package/skills/ae-analysis/references/bi_panel_page_data_export.md +8 -4
  115. package/skills/ae-analysis/references/bi_panel_page_data_run.md +7 -3
  116. package/skills/ae-analysis/references/bi_panel_share.md +1 -1
  117. package/skills/ae-analysis/references/bi_panel_update.md +1 -1
  118. package/skills/ae-analysis/references/bi_panel_version_publish.md +1 -1
  119. package/skills/ae-analysis/references/cancel_query.md +4 -4
  120. package/skills/ae-analysis/references/command_index.md +243 -0
  121. package/skills/ae-analysis/references/create_alert.md +1 -1
  122. package/skills/ae-analysis/references/create_entity.md +3 -3
  123. package/skills/ae-analysis/references/create_project_mark_time.md +2 -1
  124. package/skills/ae-analysis/references/dashboard_copy.md +1 -1
  125. package/skills/ae-analysis/references/dashboard_create.md +1 -1
  126. package/skills/ae-analysis/references/dashboard_daily_report_send.md +1 -1
  127. package/skills/ae-analysis/references/dashboard_daily_report_update.md +1 -1
  128. package/skills/ae-analysis/references/dashboard_definition_import.md +1 -1
  129. package/skills/ae-analysis/references/dashboard_delete.md +2 -0
  130. package/skills/ae-analysis/references/dashboard_freeze.md +1 -1
  131. package/skills/ae-analysis/references/dashboard_handover.md +1 -1
  132. package/skills/ae-analysis/references/dashboard_list.md +4 -2
  133. package/skills/ae-analysis/references/dashboard_report_add.md +15 -0
  134. package/skills/ae-analysis/references/dashboard_report_data_export.md +15 -7
  135. package/skills/ae-analysis/references/dashboard_report_data_run.md +15 -7
  136. package/skills/ae-analysis/references/dashboard_share.md +11 -2
  137. package/skills/ae-analysis/references/dashboard_update.md +12 -3
  138. package/skills/ae-analysis/references/datatable_columns_get.md +2 -2
  139. package/skills/ae-analysis/references/datatable_influence_list.md +2 -2
  140. package/skills/ae-analysis/references/datatable_version_get.md +2 -2
  141. package/skills/ae-analysis/references/datatable_version_list.md +2 -2
  142. package/skills/ae-analysis/references/delete_alert.md +8 -3
  143. package/skills/ae-analysis/references/delete_project_mark_times.md +5 -3
  144. package/skills/ae-analysis/references/delete_track_items.md +4 -3
  145. package/skills/ae-analysis/references/drilldown_entities_export.md +26 -0
  146. package/skills/ae-analysis/references/drilldown_entities_run.md +33 -0
  147. package/skills/ae-analysis/references/drilldown_events_export.md +21 -0
  148. package/skills/ae-analysis/references/drilldown_events_run.md +23 -0
  149. package/skills/ae-analysis/references/drilldown_user_events_export.md +23 -0
  150. package/skills/ae-analysis/references/drilldown_user_events_run.md +34 -0
  151. package/skills/ae-analysis/references/entity_detail_export.md +33 -0
  152. package/skills/ae-analysis/references/entity_detail_run.md +57 -0
  153. package/skills/ae-analysis/references/entity_id_import_options.md +20 -0
  154. package/skills/ae-analysis/references/event_changelog_list.md +2 -2
  155. package/skills/ae-analysis/references/event_create.md +4 -4
  156. package/skills/ae-analysis/references/event_delete.md +5 -4
  157. package/skills/ae-analysis/references/event_detail_export.md +33 -0
  158. package/skills/ae-analysis/references/event_detail_run.md +60 -0
  159. package/skills/ae-analysis/references/event_get.md +2 -2
  160. package/skills/ae-analysis/references/event_hide_update.md +3 -3
  161. package/skills/ae-analysis/references/event_influence_list.md +2 -2
  162. package/skills/ae-analysis/references/event_list.md +12 -4
  163. package/skills/ae-analysis/references/{super_metadata_export.md → event_property_bundle_export.md} +7 -7
  164. package/skills/ae-analysis/references/event_property_bundle_import.md +25 -0
  165. package/skills/ae-analysis/references/event_relation_update.md +4 -4
  166. package/skills/ae-analysis/references/event_update.md +2 -2
  167. package/skills/ae-analysis/references/exchange_config_update.md +2 -2
  168. package/skills/ae-analysis/references/exchange_rate_refresh.md +2 -2
  169. package/skills/ae-analysis/references/exchange_rule_list.md +2 -2
  170. package/skills/ae-analysis/references/exchange_rule_update.md +4 -4
  171. package/skills/ae-analysis/references/exchange_rule_validate.md +4 -4
  172. package/skills/ae-analysis/references/favorite_add.md +1 -1
  173. package/skills/ae-analysis/references/favorite_remove.md +1 -1
  174. package/skills/ae-analysis/references/folder_create.md +2 -3
  175. package/skills/ae-analysis/references/folder_share.md +2 -3
  176. package/skills/ae-analysis/references/generate_track_program.md +2 -1
  177. package/skills/ae-analysis/references/generate_track_sdk_sample.md +2 -1
  178. package/skills/ae-analysis/references/get_alert.md +4 -0
  179. package/skills/ae-analysis/references/get_alert_definition_schema.md +1 -0
  180. package/skills/ae-analysis/references/get_project_config.md +1 -0
  181. package/skills/ae-analysis/references/get_track_program.md +3 -0
  182. package/skills/ae-analysis/references/history_tag_batch_refresh.md +19 -0
  183. package/skills/ae-analysis/references/history_tag_clear.md +13 -0
  184. package/skills/ae-analysis/references/history_tag_data_drilldown_export.md +15 -0
  185. package/skills/ae-analysis/references/history_tag_data_drilldown_run.md +13 -0
  186. package/skills/ae-analysis/references/history_tag_data_export.md +15 -0
  187. package/skills/ae-analysis/references/history_tag_data_run.md +15 -0
  188. package/skills/ae-analysis/references/history_tag_list.md +11 -0
  189. package/skills/ae-analysis/references/history_tag_refresh.md +11 -0
  190. package/skills/ae-analysis/references/input_file_inspect.md +9 -0
  191. package/skills/ae-analysis/references/input_file_purpose_list.md +9 -0
  192. package/skills/ae-analysis/references/input_file_upload.md +11 -0
  193. package/skills/ae-analysis/references/list_alerts.md +3 -2
  194. package/skills/ae-analysis/references/list_entities.md +4 -3
  195. package/skills/ae-analysis/references/list_project_mark_times.md +2 -1
  196. package/skills/ae-analysis/references/list_project_users.md +1 -0
  197. package/skills/ae-analysis/references/load_filters.md +3 -0
  198. package/skills/ae-analysis/references/metric_create.md +20 -6
  199. package/skills/ae-analysis/references/metric_delete.md +12 -4
  200. package/skills/ae-analysis/references/metric_get.md +8 -2
  201. package/skills/ae-analysis/references/metric_list.md +17 -4
  202. package/skills/ae-analysis/references/metric_update.md +23 -6
  203. package/skills/ae-analysis/references/operation_record_export.md +25 -0
  204. package/skills/ae-analysis/references/operation_record_list.md +31 -0
  205. package/skills/ae-analysis/references/project_access_detail_get.md +23 -0
  206. package/skills/ae-analysis/references/project_data_power_delete.md +26 -0
  207. package/skills/ae-analysis/references/project_data_power_get.md +24 -0
  208. package/skills/ae-analysis/references/project_data_power_list.md +23 -0
  209. package/skills/ae-analysis/references/project_data_power_upsert.md +24 -0
  210. package/skills/ae-analysis/references/project_entity_create.md +27 -0
  211. package/skills/ae-analysis/references/project_entity_delete.md +25 -0
  212. package/skills/ae-analysis/references/project_entity_event_list.md +24 -0
  213. package/skills/ae-analysis/references/project_entity_get.md +24 -0
  214. package/skills/ae-analysis/references/project_entity_list.md +28 -0
  215. package/skills/ae-analysis/references/project_entity_update.md +28 -0
  216. package/skills/ae-analysis/references/project_function_list.md +24 -0
  217. package/skills/ae-analysis/references/project_info_get.md +23 -0
  218. package/skills/ae-analysis/references/project_info_list.md +26 -0
  219. package/skills/ae-analysis/references/project_info_update.md +25 -0
  220. package/skills/ae-analysis/references/project_mark_time_create.md +27 -0
  221. package/skills/ae-analysis/references/project_mark_time_delete.md +25 -0
  222. package/skills/ae-analysis/references/project_mark_time_list.md +28 -0
  223. package/skills/ae-analysis/references/project_mark_time_update.md +28 -0
  224. package/skills/ae-analysis/references/project_member_add.md +25 -0
  225. package/skills/ae-analysis/references/project_member_batch_update.md +24 -0
  226. package/skills/ae-analysis/references/project_member_candidate_list.md +25 -0
  227. package/skills/ae-analysis/references/project_member_handover_export.md +27 -0
  228. package/skills/ae-analysis/references/project_member_handover_run.md +24 -0
  229. package/skills/ae-analysis/references/project_member_import.md +25 -0
  230. package/skills/ae-analysis/references/project_member_list.md +23 -0
  231. package/skills/ae-analysis/references/project_member_receiver_list.md +23 -0
  232. package/skills/ae-analysis/references/project_member_remove.md +26 -0
  233. package/skills/ae-analysis/references/project_member_update.md +25 -0
  234. package/skills/ae-analysis/references/project_owner_update.md +27 -0
  235. package/skills/ae-analysis/references/project_permission_binding_list.md +24 -0
  236. package/skills/ae-analysis/references/project_receive_status_update.md +25 -0
  237. package/skills/ae-analysis/references/project_role_delete.md +25 -0
  238. package/skills/ae-analysis/references/project_role_function_list.md +27 -0
  239. package/skills/ae-analysis/references/project_role_get.md +23 -0
  240. package/skills/ae-analysis/references/project_role_list.md +25 -0
  241. package/skills/ae-analysis/references/project_role_upsert.md +24 -0
  242. package/skills/ae-analysis/references/project_role_user_list.md +23 -0
  243. package/skills/ae-analysis/references/project_space_create.md +2 -3
  244. package/skills/ae-analysis/references/project_space_list.md +3 -1
  245. package/skills/ae-analysis/references/project_space_share.md +2 -3
  246. package/skills/ae-analysis/references/project_timezone_get.md +23 -0
  247. package/skills/ae-analysis/references/project_timezone_overview.md +23 -0
  248. package/skills/ae-analysis/references/project_timezone_update.md +25 -0
  249. package/skills/ae-analysis/references/project_user_id_items_update.md +24 -0
  250. package/skills/ae-analysis/references/property_changelog_list.md +2 -2
  251. package/skills/ae-analysis/references/property_create.md +4 -4
  252. package/skills/ae-analysis/references/property_delete.md +5 -4
  253. package/skills/ae-analysis/references/property_get.md +2 -2
  254. package/skills/ae-analysis/references/property_hide_update.md +3 -3
  255. package/skills/ae-analysis/references/property_influence_list.md +2 -2
  256. package/skills/ae-analysis/references/property_list.md +21 -6
  257. package/skills/ae-analysis/references/property_related_events.md +2 -2
  258. package/skills/ae-analysis/references/property_relation_update.md +4 -4
  259. package/skills/ae-analysis/references/property_update.md +2 -2
  260. package/skills/ae-analysis/references/public_link_create.md +2 -2
  261. package/skills/ae-analysis/references/public_link_delete.md +2 -0
  262. package/skills/ae-analysis/references/public_link_list.md +3 -1
  263. package/skills/ae-analysis/references/public_link_offline.md +1 -1
  264. package/skills/ae-analysis/references/public_link_update.md +1 -1
  265. package/skills/ae-analysis/references/query_cancel.md +1 -1
  266. package/skills/ae-analysis/references/query_create_result_cluster.md +29 -0
  267. package/skills/ae-analysis/references/report_abnormal_get.md +15 -0
  268. package/skills/ae-analysis/references/report_change_log_get.md +15 -0
  269. package/skills/ae-analysis/references/report_change_log_list.md +15 -0
  270. package/skills/ae-analysis/references/report_create.md +29 -0
  271. package/skills/ae-analysis/references/report_data_export.md +37 -0
  272. package/skills/ae-analysis/references/report_data_run.md +45 -0
  273. package/skills/ae-analysis/references/report_delete.md +17 -0
  274. package/skills/ae-analysis/references/report_get.md +23 -0
  275. package/skills/ae-analysis/references/report_list.md +17 -0
  276. package/skills/ae-analysis/references/report_list_export.md +15 -0
  277. package/skills/ae-analysis/references/report_update.md +22 -0
  278. package/skills/ae-analysis/references/report_version_rollback.md +15 -0
  279. package/skills/ae-analysis/references/rule_create.md +27 -0
  280. package/skills/ae-analysis/references/rule_delete.md +26 -0
  281. package/skills/ae-analysis/references/rule_list.md +24 -0
  282. package/skills/ae-analysis/references/rule_schema.md +24 -0
  283. package/skills/ae-analysis/references/rule_update.md +28 -0
  284. package/skills/ae-analysis/references/run_inspect.md +10 -4
  285. package/skills/ae-analysis/references/save_track_items.md +4 -1
  286. package/skills/ae-analysis/references/sql_table_columns.md +20 -0
  287. package/skills/ae-analysis/references/sql_table_list.md +33 -0
  288. package/skills/ae-analysis/references/update_alert.md +1 -1
  289. package/skills/ae-analysis/references/update_project_mark_time.md +4 -3
  290. package/skills/ae-analysis/references/user_cluster_create.md +17 -0
  291. package/skills/ae-analysis/references/user_cluster_create_id.md +15 -0
  292. package/skills/ae-analysis/references/user_cluster_delete.md +13 -0
  293. package/skills/ae-analysis/references/user_cluster_get.md +15 -0
  294. package/skills/ae-analysis/references/user_cluster_list.md +15 -0
  295. package/skills/ae-analysis/references/user_cluster_member_export.md +15 -0
  296. package/skills/ae-analysis/references/user_cluster_member_list.md +19 -0
  297. package/skills/ae-analysis/references/user_cluster_models.md +87 -0
  298. package/skills/ae-analysis/references/user_cluster_refresh.md +13 -0
  299. package/skills/ae-analysis/references/user_cluster_update.md +15 -0
  300. package/skills/ae-analysis/references/user_cluster_update_id.md +15 -0
  301. package/skills/ae-analysis/references/user_tag_create.md +17 -0
  302. package/skills/ae-analysis/references/user_tag_create_id.md +15 -0
  303. package/skills/ae-analysis/references/user_tag_delete.md +13 -0
  304. package/skills/ae-analysis/references/user_tag_get.md +15 -0
  305. package/skills/ae-analysis/references/user_tag_list.md +17 -0
  306. package/skills/ae-analysis/references/user_tag_member_export.md +15 -0
  307. package/skills/ae-analysis/references/user_tag_member_list.md +19 -0
  308. package/skills/ae-analysis/references/user_tag_models.md +54 -0
  309. package/skills/ae-analysis/references/user_tag_refresh.md +13 -0
  310. package/skills/ae-analysis/references/user_tag_update.md +15 -0
  311. package/skills/ae-analysis/references/user_tag_update_id.md +15 -0
  312. package/skills/ae-analysis/references/virtual_event_create.md +24 -5
  313. package/skills/ae-analysis/references/virtual_event_delete.md +5 -4
  314. package/skills/ae-analysis/references/virtual_event_get.md +2 -2
  315. package/skills/ae-analysis/references/virtual_property_create.md +34 -6
  316. package/skills/ae-analysis/references/virtual_property_sql_rule_delete.md +5 -4
  317. package/skills/ae-analysis/references/virtual_property_sql_rule_update.md +13 -6
  318. package/skills/ae-analysis-global/SKILL.md +6 -8
  319. package/skills/ae-analysis-global/references/list_query_clusters.md +7 -6
  320. package/skills/ae-capability/SKILL.md +68 -15
  321. package/skills/ae-community/SKILL.md +2 -2
  322. package/skills/ae-dataops/SKILL.md +1 -1
  323. package/skills/ae-engage/SKILL.md +233 -10
  324. package/skills/ae-engage/references/activity-activity-type.md +42 -0
  325. package/skills/ae-engage/references/activity-activity.md +70 -0
  326. package/skills/ae-engage/references/activity-approval.md +53 -0
  327. package/skills/ae-engage/references/activity-task.md +87 -0
  328. package/skills/ae-engage/references/activity-topic.md +98 -0
  329. package/skills/ae-engage/references/approval-approver-delete.md +26 -0
  330. package/skills/ae-engage/references/build-task-save-guide.md +11 -9
  331. package/skills/ae-engage/references/channel-test-send.md +37 -0
  332. package/skills/ae-engage/references/channel-touch-limits-batch-update.md +28 -0
  333. package/skills/ae-engage/references/channel-touch-limits-save.md +37 -0
  334. package/skills/ae-engage/references/channel-touch-limits-toggle.md +28 -0
  335. package/skills/ae-engage/references/channel-update-config.md +36 -0
  336. package/skills/ae-engage/references/channel_touch_limits_list.md +29 -0
  337. package/skills/ae-engage/references/client-param.md +58 -0
  338. package/skills/ae-engage/references/common-metric.md +75 -0
  339. package/skills/ae-engage/references/config-table.md +92 -0
  340. package/skills/ae-engage/references/engage-scene-config-item.md +69 -0
  341. package/skills/ae-engage/references/group-list.md +13 -0
  342. package/skills/ae-engage/references/operation-log-query.md +11 -0
  343. package/skills/ae-engage/references/preset-event.md +42 -0
  344. package/skills/ae-engage/references/push-language.md +39 -0
  345. package/skills/ae-engage/references/push-record-query.md +26 -0
  346. package/skills/ae-engage/references/save-flow.md +5 -4
  347. package/skills/ae-engage/references/save-task.md +24 -20
  348. package/skills/ae-engage/references/scene-config-channel.md +58 -0
  349. package/skills/ae-engage/references/scene-config-group.md +62 -0
  350. package/skills/ae-engage/references/scene-config-item.md +68 -0
  351. package/skills/ae-engage/references/scene-config-metric.md +79 -0
  352. package/skills/ae-engage/references/scene-config-param.md +72 -0
  353. package/skills/ae-engage/references/scene-preset-metric.md +45 -0
  354. package/skills/ae-engage/references/scene-strategy.md +47 -0
  355. package/skills/ae-engage/references/scene-template.md +71 -0
  356. package/skills/ae-engage/references/segment-list-query.md +18 -0
  357. package/skills/ae-engage/references/task-delete.md +14 -0
  358. package/skills/ae-engage/references/task-operation-log-query.md +23 -0
  359. package/skills/ae-engage/references/version-list.md +18 -0
  360. package/skills/ae-engage/references/whitelist.md +72 -0
  361. package/skills/ae-engage/references/workbench-workbench.md +48 -0
  362. package/skills/ae-generate-tracking-code/SKILL.md +1 -1
  363. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +2 -2
  364. package/skills/ae-generate-tracking-plan/SKILL.md +21 -13
  365. package/skills/ae-generate-tracking-plan/references/te-api.md +2 -1
  366. package/skills/ae-kb/SKILL.md +33 -7
  367. package/skills/ae-metadata/SKILL.md +10 -9
  368. package/skills/ae-metadata/references/metadata_data_table_csv_delete.md +1 -0
  369. package/skills/ae-metadata/references/metadata_data_table_csv_write.md +6 -6
  370. package/skills/ae-metadata/references/metadata_data_table_property_bindings_update.md +2 -2
  371. package/skills/ae-metadata/references/metadata_data_table_sql_delete.md +1 -0
  372. package/skills/ae-metadata/references/metadata_data_table_sql_write.md +21 -7
  373. package/skills/ae-metadata/references/metadata_event_get.md +4 -4
  374. package/skills/ae-metadata/references/metadata_property_dimension_table_bind_existing.md +4 -4
  375. package/skills/ae-metadata/references/metadata_property_dimension_table_create_and_bind_csv.md +4 -4
  376. package/skills/ae-metadata/references/metadata_property_get.md +4 -4
  377. package/skills/ae-team/SKILL.md +9 -9
  378. package/skills/ae-team/references/create.md +2 -2
  379. package/skills/ae-team/references/delete.md +3 -3
  380. package/skills/ae-team/references/run-cancel.md +3 -3
  381. package/skills/ae-team/references/run-chat.md +4 -4
  382. package/skills/ae-team/references/run-reply.md +3 -3
  383. package/skills/ae-team/references/run-start.md +4 -5
  384. package/skills/ae-team/references/run-watch.md +1 -1
  385. package/skills/ae-team/references/update.md +2 -2
  386. package/dist/chunk-P2JRP6HJ.js +0 -42
  387. package/dist/chunk-S5XN6KEX.js +0 -42
  388. package/dist/te-analysis-DDXGM7WM.js +0 -3188
  389. package/dist/te-analysis-HCDNYI7E.js +0 -3188
  390. package/dist/te-audience-ECFS4GF4.js +0 -600
  391. package/dist/te-audience-WO377T2J.js +0 -600
  392. package/dist/te-common-CFGQXTFV.js +0 -130
  393. package/dist/te-common-SDB3O2QG.js +0 -130
  394. package/dist/te-engage-545HJL6J.js +0 -1525
  395. package/dist/te-engage-M7JQSJDP.js +0 -1525
  396. package/skills/ae-analysis/references/build_attribution_analysis_qp.md +0 -62
  397. package/skills/ae-analysis/references/build_cluster_definition.md +0 -62
  398. package/skills/ae-analysis/references/build_distribution_analysis_qp.md +0 -67
  399. package/skills/ae-analysis/references/build_entity_details_sql.md +0 -58
  400. package/skills/ae-analysis/references/build_event_analysis_qp.md +0 -134
  401. package/skills/ae-analysis/references/build_event_details_sql.md +0 -61
  402. package/skills/ae-analysis/references/build_funnel_analysis_qp.md +0 -145
  403. package/skills/ae-analysis/references/build_heat_map_analysis_qp.md +0 -54
  404. package/skills/ae-analysis/references/build_interval_analysis_qp.md +0 -60
  405. package/skills/ae-analysis/references/build_path_analysis_qp.md +0 -53
  406. package/skills/ae-analysis/references/build_prop_analysis_qp.md +0 -124
  407. package/skills/ae-analysis/references/build_rank_list_analysis_qp.md +0 -63
  408. package/skills/ae-analysis/references/build_retention_analysis_qp.md +0 -143
  409. package/skills/ae-analysis/references/build_tag_definition.md +0 -65
  410. package/skills/ae-analysis/references/copy_dashboard.md +0 -33
  411. package/skills/ae-analysis/references/create_cluster.md +0 -69
  412. package/skills/ae-analysis/references/create_dashboard.md +0 -49
  413. package/skills/ae-analysis/references/create_id_cluster.md +0 -40
  414. package/skills/ae-analysis/references/create_id_tag.md +0 -39
  415. package/skills/ae-analysis/references/create_metric.md +0 -62
  416. package/skills/ae-analysis/references/create_or_update_dashboard_note.md +0 -39
  417. package/skills/ae-analysis/references/create_public_access_link.md +0 -43
  418. package/skills/ae-analysis/references/create_report.md +0 -60
  419. package/skills/ae-analysis/references/create_result_cluster.md +0 -73
  420. package/skills/ae-analysis/references/create_space.md +0 -34
  421. package/skills/ae-analysis/references/create_tag.md +0 -61
  422. package/skills/ae-analysis/references/create_virtual_event.md +0 -64
  423. package/skills/ae-analysis/references/create_virtual_property.md +0 -69
  424. package/skills/ae-analysis/references/delete_cluster.md +0 -27
  425. package/skills/ae-analysis/references/delete_dashboard.md +0 -30
  426. package/skills/ae-analysis/references/delete_metric.md +0 -27
  427. package/skills/ae-analysis/references/delete_report.md +0 -27
  428. package/skills/ae-analysis/references/delete_tag.md +0 -27
  429. package/skills/ae-analysis/references/drilldown_user_events.md +0 -74
  430. package/skills/ae-analysis/references/drilldown_users.md +0 -80
  431. package/skills/ae-analysis/references/freeze_dashboards.md +0 -29
  432. package/skills/ae-analysis/references/get_analysis_query_schema.md +0 -71
  433. package/skills/ae-analysis/references/get_bi_panel_detail.md +0 -35
  434. package/skills/ae-analysis/references/get_cluster_definition_schema.md +0 -53
  435. package/skills/ae-analysis/references/get_clusters_by_name.md +0 -69
  436. package/skills/ae-analysis/references/get_filter_schema.md +0 -33
  437. package/skills/ae-analysis/references/get_groupby_schema.md +0 -33
  438. package/skills/ae-analysis/references/get_metric.md +0 -38
  439. package/skills/ae-analysis/references/get_report_definition.md +0 -37
  440. package/skills/ae-analysis/references/get_resource_url.md +0 -32
  441. package/skills/ae-analysis/references/get_table_columns.md +0 -37
  442. package/skills/ae-analysis/references/get_tag_definition_schema.md +0 -49
  443. package/skills/ae-analysis/references/get_tags_by_name.md +0 -69
  444. package/skills/ae-analysis/references/list_bi_panels.md +0 -35
  445. package/skills/ae-analysis/references/list_cluster_members.md +0 -45
  446. package/skills/ae-analysis/references/list_clusters.md +0 -46
  447. package/skills/ae-analysis/references/list_dashboards.md +0 -43
  448. package/skills/ae-analysis/references/list_events.md +0 -46
  449. package/skills/ae-analysis/references/list_metrics.md +0 -52
  450. package/skills/ae-analysis/references/list_properties.md +0 -47
  451. package/skills/ae-analysis/references/list_public_access_links.md +0 -41
  452. package/skills/ae-analysis/references/list_reports.md +0 -43
  453. package/skills/ae-analysis/references/list_spaces.md +0 -27
  454. package/skills/ae-analysis/references/list_tag_members.md +0 -46
  455. package/skills/ae-analysis/references/list_tags.md +0 -44
  456. package/skills/ae-analysis/references/move_dashboard.md +0 -33
  457. package/skills/ae-analysis/references/query_adhoc.md +0 -141
  458. package/skills/ae-analysis/references/query_bi_panel_data.md +0 -58
  459. package/skills/ae-analysis/references/query_dashboard_detail.md +0 -35
  460. package/skills/ae-analysis/references/query_dashboard_report_data.md +0 -63
  461. package/skills/ae-analysis/references/query_entity_details.md +0 -63
  462. package/skills/ae-analysis/references/query_event_details.md +0 -66
  463. package/skills/ae-analysis/references/query_report_data.md +0 -99
  464. package/skills/ae-analysis/references/refresh_cluster.md +0 -31
  465. package/skills/ae-analysis/references/refresh_tag.md +0 -31
  466. package/skills/ae-analysis/references/super_metadata_import.md +0 -24
  467. package/skills/ae-analysis/references/update_cluster.md +0 -61
  468. package/skills/ae-analysis/references/update_dashboard.md +0 -45
  469. package/skills/ae-analysis/references/update_id_cluster.md +0 -36
  470. package/skills/ae-analysis/references/update_id_tag.md +0 -37
  471. package/skills/ae-analysis/references/update_metric.md +0 -61
  472. package/skills/ae-analysis/references/update_public_access_link.md +0 -41
  473. package/skills/ae-analysis/references/update_report.md +0 -35
  474. package/skills/ae-analysis/references/update_tag.md +0 -61
  475. package/skills/ae-analysis-intent/SKILL.md +0 -132
  476. package/skills/ae-metadata/references/metadata_input_file_upload.md +0 -29
@@ -4,6 +4,7 @@ import {
4
4
 
5
5
  // src/framework/output.ts
6
6
  import Table from "cli-table3";
7
+ import { JqError, json as jqJson } from "jq-wasm";
7
8
  var KNOWN_ARRAY_FIELDS = [
8
9
  "items",
9
10
  "events",
@@ -23,6 +24,18 @@ var KNOWN_ARRAY_FIELDS = [
23
24
  "columns",
24
25
  "properties"
25
26
  ];
27
+ var OUTPUT_METADATA = /* @__PURE__ */ Symbol("ae-cli-output-metadata");
28
+ function withOutputMetadata(data, meta) {
29
+ if (!meta || Object.keys(meta).length === 0) return data;
30
+ return {
31
+ [OUTPUT_METADATA]: true,
32
+ data,
33
+ meta
34
+ };
35
+ }
36
+ function isOutputWithMetadata(value) {
37
+ return Boolean(value?.[OUTPUT_METADATA]);
38
+ }
26
39
  function findArrayField(data) {
27
40
  if (Array.isArray(data)) return data;
28
41
  if (typeof data !== "object" || data === null) return null;
@@ -58,56 +71,59 @@ function formatTable(data) {
58
71
  }
59
72
  return table.toString();
60
73
  }
61
- function applyJq(data, expr) {
62
- if (!expr) return data;
63
- const parts = expr.replace(/^\.(data\.)?/, "").split(".");
64
- let result = data;
65
- for (const part of parts) {
66
- const arrayMatch = part.match(/^(.+)\[\]$/);
67
- if (arrayMatch) {
68
- result = result?.[arrayMatch[1]];
69
- if (!Array.isArray(result)) return result;
70
- continue;
71
- }
72
- const indexMatch = part.match(/^(.+)\[(\d+)\]$/);
73
- if (indexMatch) {
74
- result = result?.[indexMatch[1]]?.[parseInt(indexMatch[2])];
75
- continue;
76
- }
77
- if (part) {
78
- result = result?.[part];
79
- }
74
+ async function applyJq(data, expr) {
75
+ const trimmed = expr.trim();
76
+ if (!trimmed) return data;
77
+ let results;
78
+ try {
79
+ results = await jqJson(data, trimmed);
80
+ } catch (err) {
81
+ const message = err instanceof JqError ? err.message : err?.message || String(err);
82
+ const error = new Error(`Invalid --jq expression: ${message}`);
83
+ error.type = "validation";
84
+ error.hint = "Use standard jq syntax, e.g. .status or {status,pendingQuestion}";
85
+ throw error;
80
86
  }
81
- return result;
87
+ if (results.length === 0) return null;
88
+ if (results.length === 1) return results[0];
89
+ return results;
82
90
  }
83
- function formatOutput(data, format, jqExpr) {
84
- let processed = data;
91
+ async function formatOutput(data, format, jqExpr) {
92
+ const outputData = isOutputWithMetadata(data) ? data.data : data;
93
+ const meta = isOutputWithMetadata(data) ? data.meta : void 0;
94
+ let processed = outputData;
85
95
  if (jqExpr) {
86
- processed = applyJq(data, jqExpr);
96
+ processed = await applyJq(outputData, jqExpr);
87
97
  }
88
98
  if (format === "table") {
89
99
  return formatTable(processed);
90
100
  }
91
- const envelope = { ok: true, data: processed };
101
+ const envelope = {
102
+ ok: true,
103
+ data: processed,
104
+ ...meta ? { meta } : {}
105
+ };
92
106
  return JSON.stringify(envelope, null, 2);
93
107
  }
94
- function formatError(type, message, hint, code) {
108
+ function formatError(type, message, hint, code, meta) {
95
109
  const envelope = {
96
110
  ok: false,
97
- error: { type, message, hint, code }
111
+ error: { type, message, hint, code },
112
+ ...meta && Object.keys(meta).length > 0 ? { meta } : {}
98
113
  };
99
114
  return JSON.stringify(envelope, null, 2);
100
115
  }
101
- function printError(type, message, hint, code) {
102
- const formatted = formatError(type, message, hint, code);
116
+ function printError(type, message, hint, code, meta) {
117
+ const formatted = formatError(type, message, hint, code, meta);
103
118
  process.stderr.write(formatted + "\n");
104
119
  logger.error(`[${type}] ${message}${hint ? " | " + hint : ""}`);
105
120
  }
106
- function printOutput(data, format, jqExpr) {
107
- process.stdout.write(formatOutput(data, format, jqExpr) + "\n");
121
+ async function printOutput(data, format, jqExpr) {
122
+ process.stdout.write(await formatOutput(data, format, jqExpr) + "\n");
108
123
  }
109
124
 
110
125
  export {
126
+ withOutputMetadata,
111
127
  printError,
112
128
  printOutput
113
129
  };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  printError,
3
3
  printOutput
4
- } from "./chunk-ZAOL36CG.js";
4
+ } from "./chunk-TNW2CI4W.js";
5
5
  import {
6
6
  GLOBAL_QUERY_CONFIG_KEY,
7
7
  getAnalysisMappingPathForClusterMode,
@@ -22,40 +22,40 @@ function registerConfig(program) {
22
22
  printError("config", "Missing subcommand.", "Run: ae-cli config --help");
23
23
  process.exit(1);
24
24
  });
25
- configCmd.command("list").description("List configured AE environments").action(() => {
26
- printConfigList(program);
25
+ configCmd.command("list").description("List configured AE environments").action(async () => {
26
+ await printConfigList(program);
27
27
  });
28
- configCmd.command("current").description("Show the active AE environment").action(() => {
29
- printCurrentConfig(program);
28
+ configCmd.command("current").description("Show the active AE environment").action(async () => {
29
+ await printCurrentConfig(program);
30
30
  });
31
- configCmd.command("use <env>").description("Switch active AE environment by exact URL or unique label").action((env) => {
32
- useConfigEnv(program, env);
31
+ configCmd.command("use <env>").description("Switch active AE environment by exact URL or unique label").action(async (env) => {
32
+ await useConfigEnv(program, env);
33
33
  });
34
- configCmd.command("set-host <url>").description("Set the active AE host non-interactively (adds it if not already configured)").option("--label <label>", "Display label for this host (defaults to the host URL)").action((url, opts) => {
34
+ configCmd.command("set-host <url>").description("Set the active AE host non-interactively (adds it if not already configured)").option("--label <label>", "Display label for this host (defaults to the host URL)").action(async (url, opts) => {
35
35
  const normalized = normalizeUrl(url);
36
36
  const label = opts.label || normalized;
37
37
  addHost(normalized, label);
38
38
  setActiveHost(normalized);
39
- printOutput({ activeHost: normalized, label }, program.opts().format || "json");
39
+ await printOutput({ activeHost: normalized, label }, program.opts().format || "json");
40
40
  });
41
- const clusterMode = configCmd.command("cluster-mode").description("Manage local multi-cluster analysis MCP mode").action(() => {
42
- printClusterModeStatus(program);
41
+ const clusterMode = configCmd.command("cluster-mode").description("Manage local multi-cluster analysis MCP mode").action(async () => {
42
+ await printClusterModeStatus(program);
43
43
  });
44
- clusterMode.command("status").description("Show local multi-cluster analysis MCP mode").action(() => {
45
- printClusterModeStatus(program);
44
+ clusterMode.command("status").description("Show local multi-cluster analysis MCP mode").action(async () => {
45
+ await printClusterModeStatus(program);
46
46
  });
47
- clusterMode.command("enable").description("Enable local multi-cluster analysis MCP mode").action(() => {
47
+ clusterMode.command("enable").description("Enable local multi-cluster analysis MCP mode").action(async () => {
48
48
  setGlobalQueryModeEnabled(true);
49
- printClusterModeStatus(program);
49
+ await printClusterModeStatus(program);
50
50
  });
51
- clusterMode.command("disable").description("Disable local multi-cluster analysis MCP mode").action(() => {
51
+ clusterMode.command("disable").description("Disable local multi-cluster analysis MCP mode").action(async () => {
52
52
  setGlobalQueryModeEnabled(false);
53
- printClusterModeStatus(program);
53
+ await printClusterModeStatus(program);
54
54
  });
55
55
  }
56
- function printClusterModeStatus(program) {
56
+ async function printClusterModeStatus(program) {
57
57
  const enabled = isGlobalQueryModeEnabled();
58
- printOutput({
58
+ await printOutput({
59
59
  [GLOBAL_QUERY_CONFIG_KEY]: enabled,
60
60
  path: getClusterInfoFilePath(),
61
61
  analysisMappingPath: getAnalysisMappingPathForClusterMode(enabled)
@@ -70,20 +70,20 @@ function readHostViews() {
70
70
  }));
71
71
  return { activeHost: config.activeHost, hosts };
72
72
  }
73
- function printConfigList(program) {
73
+ async function printConfigList(program) {
74
74
  const { activeHost, hosts } = readHostViews();
75
- printOutput({ activeHost, hosts }, program.opts().format || "json", program.opts().jq);
75
+ await printOutput({ activeHost, hosts }, program.opts().format || "json", program.opts().jq);
76
76
  }
77
- function printCurrentConfig(program) {
77
+ async function printCurrentConfig(program) {
78
78
  const { activeHost, hosts } = readHostViews();
79
79
  const current = hosts.find((h) => h.url === activeHost);
80
80
  if (!current) {
81
81
  failConfig("No active AE environment configured.", "Run: ae-cli config use <env> or ae-cli config list");
82
82
  return;
83
83
  }
84
- printOutput({ activeHost: current.url, label: current.label }, program.opts().format || "json", program.opts().jq);
84
+ await printOutput({ activeHost: current.url, label: current.label }, program.opts().format || "json", program.opts().jq);
85
85
  }
86
- function useConfigEnv(program, env) {
86
+ async function useConfigEnv(program, env) {
87
87
  const target = resolveHost(env);
88
88
  if (target.status === "not-found") {
89
89
  failConfig(
@@ -100,7 +100,7 @@ function useConfigEnv(program, env) {
100
100
  return;
101
101
  }
102
102
  setActiveHost(target.host.url);
103
- printOutput({ activeHost: target.host.url, label: target.host.label }, program.opts().format || "json", program.opts().jq);
103
+ await printOutput({ activeHost: target.host.url, label: target.host.label }, program.opts().format || "json", program.opts().jq);
104
104
  }
105
105
  function resolveHost(env) {
106
106
  const raw = env.trim();
package/dist/index.js CHANGED
@@ -5,15 +5,15 @@ import {
5
5
  TeAgentApiError,
6
6
  TeAgentCredentialsError
7
7
  } from "./chunk-R77JT7XD.js";
8
- import {
9
- printError,
10
- printOutput
11
- } from "./chunk-ZAOL36CG.js";
12
8
  import {
13
9
  CapabilityGatewayError,
14
10
  executeCapability,
15
11
  uploadInputFileBytes
16
- } from "./chunk-OJR23CIK.js";
12
+ } from "./chunk-I4A62X3N.js";
13
+ import {
14
+ printError,
15
+ printOutput
16
+ } from "./chunk-TNW2CI4W.js";
17
17
  import {
18
18
  PermissionError
19
19
  } from "./chunk-NOO24N7W.js";
@@ -38,56 +38,113 @@ import { createRequire } from "module";
38
38
 
39
39
  // src/framework/runner.ts
40
40
  import * as readline from "readline";
41
+ function missingRequiredFlagsError(cmdName, missing) {
42
+ const names = missing.map((flag) => `--${flag.name}`);
43
+ const message = missing.length === 1 ? `Missing required flag: ${names[0]}` : `Missing required flags: ${names.join(", ")}`;
44
+ const hintParts = missing.map((flag) => flag.hint?.trim()).filter((hint2) => Boolean(hint2));
45
+ const hint = hintParts.length > 0 ? hintParts.join(" ") : `Usage: ae-cli ${cmdName} ${names.map((name) => `${name} <value>`).join(" ")}`;
46
+ return { message, hint };
47
+ }
41
48
  async function runCommand(cmd, opts, globalOpts) {
42
49
  try {
43
50
  const ctx = createRuntimeContext(cmd, opts, globalOpts);
44
51
  const cmdName = cmd.resource ? `${cmd.service} ${cmd.resource} ${cmd.command}` : `${cmd.service} ${cmd.command}`;
45
52
  logger.command(cmdName, opts);
46
- for (const flag of cmd.flags) {
47
- if (flag.required) {
48
- const val = opts[camelCase(flag.name)];
49
- if (val === void 0 || val === null || val === "") {
50
- printError("validation", `Missing required flag: --${flag.name}`, `Usage: ae-cli ${cmdName} --${flag.name} <value>`);
51
- process.exit(1);
52
- }
53
- }
53
+ const missingRequired = cmd.flags.filter((flag) => {
54
+ if (!flag.required) return false;
55
+ const val = opts[camelCase(flag.name)];
56
+ return val === void 0 || val === null || val === "";
57
+ });
58
+ if (missingRequired.length > 0) {
59
+ const { message, hint } = missingRequiredFlagsError(cmdName, missingRequired);
60
+ printError("validation", message, hint);
61
+ process.exit(1);
54
62
  }
55
63
  if (cmd.validate) {
56
64
  cmd.validate(ctx);
57
65
  }
58
66
  const LIMIT_FLAG_PATTERNS = [/limit/i, /page_size/i, /pagesize/i, /row_limit/i, /block_limit/i, /top[-_]?k/i];
59
67
  for (const flag of cmd.flags) {
68
+ const val = opts[camelCase(flag.name)];
69
+ if (flag.type === "boolean") {
70
+ if (val !== void 0 && typeof val !== "boolean") {
71
+ printError("validation", `Invalid boolean for --${flag.name}: ${val}. Use true/false.`);
72
+ process.exit(1);
73
+ }
74
+ continue;
75
+ }
76
+ if (flag.type !== "number") continue;
77
+ if (val === void 0 || val === null || val === "") continue;
78
+ const num = Number(val);
79
+ if (!Number.isFinite(num)) {
80
+ printError("validation", `--${flag.name} must be a number (got: ${val})`);
81
+ process.exit(1);
82
+ }
60
83
  const isLimitFlag = LIMIT_FLAG_PATTERNS.some((p) => p.test(flag.name));
61
- if (isLimitFlag && flag.type === "number") {
62
- const val = opts[camelCase(flag.name)];
63
- if (val !== void 0 && val !== null) {
64
- const num = Number(val);
65
- if (!Number.isInteger(num) || num < 1 || num > 1e4) {
66
- printError("validation", `--${flag.name} must be an integer between 1 and 10000 (got: ${val})`);
67
- process.exit(1);
68
- }
84
+ if (isLimitFlag) {
85
+ const min = flag.min ?? 1;
86
+ const max = flag.max ?? 1e4;
87
+ if (!Number.isInteger(num) || num < min || num > max) {
88
+ printError("validation", `--${flag.name} must be an integer between ${min} and ${max} (got: ${val})`);
89
+ process.exit(1);
90
+ }
91
+ } else if (flag.min !== void 0 || flag.max !== void 0) {
92
+ const min = flag.min ?? Number.NEGATIVE_INFINITY;
93
+ const max = flag.max ?? Number.POSITIVE_INFINITY;
94
+ if (num < min || num > max) {
95
+ const lower = flag.min === void 0 ? "-Infinity" : String(min);
96
+ const upper = flag.max === void 0 ? "Infinity" : String(max);
97
+ printError("validation", `--${flag.name} must be a number between ${lower} and ${upper} (got: ${val})`);
98
+ process.exit(1);
69
99
  }
70
100
  }
71
101
  }
102
+ if (globalOpts.validate && globalOpts.dryRun) {
103
+ printError(
104
+ "validation",
105
+ "Cannot combine --validate and --dry-run.",
106
+ "Use --validate to fix parameters; use --dry-run as the pre-execution confirmation."
107
+ );
108
+ process.exit(1);
109
+ }
110
+ if (globalOpts.validate) {
111
+ if (cmd.validateInput) {
112
+ const validateResult = await cmd.validateInput(ctx);
113
+ await printOutput(validateResult, globalOpts.format, globalOpts.jq);
114
+ } else {
115
+ await printOutput(
116
+ { message: "No --validate implementation for this command (capability gateway commands only)" },
117
+ globalOpts.format
118
+ );
119
+ }
120
+ return;
121
+ }
72
122
  if (globalOpts.dryRun) {
73
123
  if (cmd.dryRun) {
74
- const dryResult = cmd.dryRun(ctx);
75
- printOutput(dryResult, globalOpts.format, globalOpts.jq);
124
+ const dryResult = await cmd.dryRun(ctx);
125
+ await printOutput(dryResult, globalOpts.format, globalOpts.jq);
76
126
  } else {
77
- printOutput({ message: "No dry-run implementation for this command" }, globalOpts.format);
127
+ await printOutput({ message: "No dry-run implementation for this command" }, globalOpts.format);
78
128
  }
79
129
  return;
80
130
  }
81
- if (requiresConfirmation(cmd.risk) && !globalOpts.yes) {
82
- const confirmed = await confirm(`This is a high-risk-write operation (${cmdName}). Continue?`);
83
- if (!confirmed) {
84
- process.stderr.write("Aborted.\n");
85
- process.exit(0);
131
+ if (requiresConfirmation(cmd.risk)) {
132
+ cmd.preflight?.(ctx);
133
+ if (!globalOpts.yes) {
134
+ const confirmed = await confirm(`This is a high-risk-write operation (${cmdName}). Continue?`);
135
+ if (!confirmed) {
136
+ process.stderr.write("Aborted.\n");
137
+ process.exit(0);
138
+ }
86
139
  }
87
140
  }
88
141
  const result = await cmd.execute(ctx);
89
- ctx.out(result);
142
+ await ctx.out(result);
90
143
  } catch (err) {
144
+ if (err?.type === "validation" && typeof err?.hint === "string" && String(err.message || "").includes("--jq")) {
145
+ printError("validation", err.message, err.hint);
146
+ process.exit(1);
147
+ }
91
148
  const message = err.message || String(err);
92
149
  logger.error(`Command failed: ${message}`);
93
150
  if (err instanceof TeAgentCredentialsError) {
@@ -95,7 +152,7 @@ async function runCommand(cmd, opts, globalOpts) {
95
152
  } else if (err instanceof PermissionError) {
96
153
  printError("permission", message);
97
154
  } else if (err instanceof CapabilityGatewayError) {
98
- printError("api", message, err.hint, err.code);
155
+ printError("api", message, err.hint ?? capabilityGatewayHint(err), err.code, err.meta);
99
156
  } else if (err instanceof SecureStoreAuthError) {
100
157
  printError("auth", message, "Run: ae-cli auth login");
101
158
  } else if (err instanceof TeAgentApiError) {
@@ -114,6 +171,18 @@ async function runCommand(cmd, opts, globalOpts) {
114
171
  process.exit(1);
115
172
  }
116
173
  }
174
+ function capabilityGatewayHint(err) {
175
+ if (err.code === "UPLOAD_NOT_EXIST" && (err.meta?.capability_id === "engage-setting.config-table.save" || err.meta?.capability_id === "engage-setting.config-table.update-data")) {
176
+ return "Run config-table upload first with the same --project-id and --request-id, then retry this command within 10 minutes. The upload cache is consumed after a successful save/update.";
177
+ }
178
+ if (err.code === "CAPABILITY_NOT_FOUND") {
179
+ return "The current host does not expose this capability. Do not retry with different parameters; use a supported command path or ask the platform/backend owner to enable the capability.";
180
+ }
181
+ if (err.httpStatus === 404 && !err.code) {
182
+ return "The current host returned 404 for this capability route. Do not keep retrying the same command; verify the backend route/capability deployment.";
183
+ }
184
+ return void 0;
185
+ }
117
186
  function looksLikeAuthFailure(message) {
118
187
  const m = message.toLowerCase();
119
188
  if (m.includes("403") || m.includes("forbidden") || m.includes("permission")) return false;
@@ -184,8 +253,8 @@ function createRuntimeContext(cmd, opts, globalOpts) {
184
253
  service() {
185
254
  return cmd.service;
186
255
  },
187
- out(data) {
188
- printOutput(data, globalOpts.format, globalOpts.jq);
256
+ async out(data) {
257
+ await printOutput(data, globalOpts.format, globalOpts.jq);
189
258
  }
190
259
  };
191
260
  return ctx;
@@ -215,15 +284,19 @@ function registerCommands(program2, commands) {
215
284
  let serviceCmd = program2.commands.find((c) => c.name() === service);
216
285
  if (!serviceCmd) {
217
286
  serviceCmd = program2.command(service).description(`${service} domain commands`);
287
+ serviceCmd.allowExcessArguments(false);
218
288
  }
219
289
  for (const cmd of cmds) {
220
290
  let parent = serviceCmd;
221
291
  if (cmd.resource) {
222
- let resourceCmd = serviceCmd.commands.find((c) => c.name() === cmd.resource);
223
- if (!resourceCmd) {
224
- resourceCmd = serviceCmd.command(cmd.resource).description(`${cmd.resource} commands`);
292
+ for (const resource of cmd.resource.split(/\s+/).filter(Boolean)) {
293
+ let resourceCmd = parent.commands.find((c) => c.name() === resource);
294
+ if (!resourceCmd) {
295
+ resourceCmd = parent.command(resource).description(`${resource} commands`);
296
+ resourceCmd.allowExcessArguments(false);
297
+ }
298
+ parent = resourceCmd;
225
299
  }
226
- parent = resourceCmd;
227
300
  }
228
301
  const sub = parent.command(cmd.command).description(cmd.description);
229
302
  for (const flag of cmd.flags) {
@@ -237,9 +310,13 @@ function registerCommands(program2, commands) {
237
310
  }
238
311
  }
239
312
  sub.option("--host <url>", "Override active AE host URL for this command");
313
+ sub.option("--format <format>", "Output format: json | table. Default: json.");
314
+ sub.option("--jq <expr>", "jq 1.8 filter over command payload, applied before output envelope wrapping.");
240
315
  sub.action(async (opts) => {
241
316
  const globalOpts = extractGlobalOptions(program2);
242
317
  if (opts.host) globalOpts.host = opts.host;
318
+ if (opts.format) globalOpts.format = opts.format;
319
+ if (opts.jq) globalOpts.jq = opts.jq;
243
320
  await runCommand(cmd, opts, globalOpts);
244
321
  });
245
322
  }
@@ -264,7 +341,7 @@ function parseBooleanValue(value, flagName) {
264
341
  if (normalized === "false" || normalized === "0" || normalized === "no" || normalized === "n" || normalized === "off") {
265
342
  return false;
266
343
  }
267
- throw new Error(`Invalid boolean for --${flagName}: ${value}. Use true/false.`);
344
+ return value;
268
345
  }
269
346
  function extractGlobalOptions(program2) {
270
347
  const opts = program2.opts();
@@ -273,6 +350,7 @@ function extractGlobalOptions(program2) {
273
350
  mcpUrl: opts.mcpUrl,
274
351
  format: opts.format || "json",
275
352
  jq: opts.jq,
353
+ validate: opts.validate || false,
276
354
  dryRun: opts.dryRun || false,
277
355
  yes: opts.yes || false
278
356
  };
@@ -1036,7 +1114,8 @@ async function writeDraftXlsx(d, outPath, locale = "zh") {
1036
1114
 
1037
1115
  // src/core/tracking-client.ts
1038
1116
  var DEBUG_BASE = "/v1/ta/bury/manage/debug";
1039
- var TRACK_CAPABILITY_DOMAIN = "analysis";
1117
+ var TRACK_LOCAL_HOST = "http://localhost:8992";
1118
+ var TRACK_CAPABILITY_DOMAIN = "";
1040
1119
  var TRACK_PROGRAM_QUERY = "track.program.query";
1041
1120
  var TRACK_PROGRAM_DELETE = "track.program.delete";
1042
1121
  var TRACK_PROGRAM_EXCEL_SAVE = "track.program.excel_save";
@@ -1219,7 +1298,8 @@ var TrackingClient = class {
1219
1298
  }
1220
1299
  const data = await executeCapability(this.host, TRACK_CAPABILITY_DOMAIN, TRACK_PROGRAM_EXCEL_SAVE, {
1221
1300
  project_id: args.projectId,
1222
- input_file_id: inputFileId
1301
+ input_file_id: inputFileId,
1302
+ ...args.lang ? { lang: args.lang } : {}
1223
1303
  });
1224
1304
  const env = normalizeUploadResponse(data);
1225
1305
  if (env.return_code !== 0 && env.return_code !== void 0 && !env.data?.eventErrorMap && !env.data?.userErrorMap) {
@@ -1254,7 +1334,7 @@ var TrackingClient = class {
1254
1334
  }
1255
1335
  };
1256
1336
  async function createTrackingClient(host) {
1257
- return new TrackingClient(host);
1337
+ return new TrackingClient(TRACK_LOCAL_HOST);
1258
1338
  }
1259
1339
 
1260
1340
  // src/tracking/te-plan/fetch.ts
@@ -2067,7 +2147,8 @@ function registerPlan(cmd, rootProgram) {
2067
2147
  lastRes = await client.uploadProgramExcel({
2068
2148
  projectId: opts.project,
2069
2149
  file,
2070
- filename: path3.basename(opts.xlsx)
2150
+ filename: path3.basename(opts.xlsx),
2151
+ lang: locale
2071
2152
  });
2072
2153
  console.log(JSON.stringify(lastRes, null, 2));
2073
2154
  if (lastRes.return_code === -1001 && !tokenRefreshed) {
@@ -3000,61 +3081,64 @@ var require2 = createRequire(import.meta.url);
3000
3081
  var pkg = require2("../package.json");
3001
3082
  var { version } = pkg;
3002
3083
  var program = new CommanderCommand();
3003
- program.name("ae-cli").version(version).description("CLI tool for ThinkingAI (AE) analytics platform").option("--host <url>", "Override active AE host URL (e.g., https://ta.thinkingdata.cn)").option("--mcp-url <url>", "Override MCP server URL (e.g., http://localhost/mcp/http/example)").option("--format <format>", "Output format: json | table", "json").option("--jq <expr>", "jq filter expression").option("--dry-run", "Show request details without executing", false).option("--yes", "Skip confirmation for write operations", false).option("--no-update-check", "Skip checking for newer ae-cli versions", false);
3084
+ program.name("ae-cli").version(version).description("CLI tool for ThinkingAI (AE) analytics platform").option("--host <url>", "Override active AE host URL (e.g., https://ta.thinkingdata.cn)").option("--mcp-url <url>", "Override MCP server URL (e.g., http://localhost/mcp/http/example)").option("--format <format>", "Output format: json | table", "json").option("--jq <expr>", "jq 1.8 filter over command payload (via jq-wasm), applied before output envelope").option(
3085
+ "--validate",
3086
+ "Optional: validate/normalize capability input only (gateway /validate). Use alone while fixing complex params/qp; do not stack with --dry-run",
3087
+ false
3088
+ ).option(
3089
+ "--dry-run",
3090
+ "Optional: pre-execution preview without business logic (gateway /dry-run; other transports preview). Use alone to confirm a run; do not stack with --validate",
3091
+ false
3092
+ ).option("--yes", "Skip confirmation for high-risk write operations", false).option("--no-update-check", "Skip checking for newer ae-cli versions", false);
3004
3093
  async function loadCommands() {
3005
3094
  const commands = [];
3006
3095
  try {
3007
- const teAnalysis = await import("./te-analysis-HCDNYI7E.js");
3096
+ const teAnalysis = await import("./te-analysis-PUVF5IF4.js");
3008
3097
  commands.push(...teAnalysis.default);
3009
3098
  } catch {
3010
3099
  }
3011
3100
  try {
3012
- const teAudience = await import("./te-audience-WO377T2J.js");
3013
- commands.push(...teAudience.default);
3014
- } catch {
3015
- }
3016
- try {
3017
- const teMeta = await import("./te-meta-PKT27OTN.js");
3101
+ const teMeta = await import("./te-meta-UUROEODR.js");
3018
3102
  commands.push(...teMeta.default);
3019
3103
  } catch {
3020
3104
  }
3021
3105
  try {
3022
- const teCommon = await import("./te-common-CFGQXTFV.js");
3106
+ const teCommon = await import("./te-common-VUX3VOXZ.js");
3023
3107
  commands.push(...teCommon.default);
3024
3108
  } catch {
3025
3109
  }
3026
3110
  try {
3027
- const engage = await import("./te-engage-545HJL6J.js");
3111
+ const engage = await import("./te-engage-QBCCME22.js");
3028
3112
  commands.push(...engage.default);
3029
3113
  } catch {
3030
3114
  }
3031
3115
  try {
3032
- const community = await import("./te-community-6A7LKYUH.js");
3116
+ const community = await import("./te-community-TSKJ652U.js");
3033
3117
  commands.push(...community.default);
3034
3118
  } catch {
3035
3119
  }
3036
3120
  try {
3037
- const dataops = await import("./te-dataops-Z53CTG2U.js");
3121
+ const dataops = await import("./te-dataops-F36T656A.js");
3038
3122
  commands.push(...dataops.default);
3039
3123
  } catch {
3040
3124
  }
3041
3125
  try {
3042
- const teKb = await import("./te-kb-NT33UHAE.js");
3126
+ const teKb = await import("./te-kb-AYCODNU6.js");
3043
3127
  commands.push(...teKb.default);
3044
3128
  } catch {
3045
3129
  }
3046
3130
  try {
3047
- const teTeam = await import("./te-team-RG75PR5D.js");
3131
+ const teTeam = await import("./te-team-OKCOX7OE.js");
3048
3132
  commands.push(...teTeam.default);
3049
3133
  } catch {
3050
3134
  }
3051
3135
  try {
3052
- const teAgent = await import("./te-agent-FAIBM3SA.js");
3136
+ const teAgent = await import("./te-agent-FCCWUDTJ.js");
3053
3137
  commands.push(...teAgent.default);
3054
3138
  } catch {
3055
3139
  }
3056
3140
  try {
3057
- const metadata = await import("./metadata-6CCFV4K5.js");
3141
+ const metadata = await import("./metadata-FCLDBXX2.js");
3058
3142
  commands.push(...metadata.default);
3059
3143
  } catch {
3060
3144
  }
@@ -3062,35 +3146,35 @@ async function loadCommands() {
3062
3146
  }
3063
3147
  async function registerAuthCommands() {
3064
3148
  try {
3065
- const { registerAuth } = await import("./auth-7TQRGLBC.js");
3149
+ const { registerAuth } = await import("./auth-7H3HAAJ3.js");
3066
3150
  registerAuth(program);
3067
3151
  } catch {
3068
3152
  }
3069
3153
  }
3070
3154
  async function registerConfigCommands() {
3071
3155
  try {
3072
- const { registerConfig } = await import("./config-ZVPARN4R.js");
3156
+ const { registerConfig } = await import("./config-7UZWDE74.js");
3073
3157
  registerConfig(program);
3074
3158
  } catch {
3075
3159
  }
3076
3160
  }
3077
3161
  async function registerApiCommand() {
3078
3162
  try {
3079
- const { registerApi } = await import("./raw-OHSUK42D.js");
3163
+ const { registerApi } = await import("./raw-CN542NGT.js");
3080
3164
  registerApi(program);
3081
3165
  } catch {
3082
3166
  }
3083
3167
  }
3084
3168
  async function registerCapabilityCommands() {
3085
3169
  try {
3086
- const { registerCapability } = await import("./capability-KVA55RMK.js");
3170
+ const { registerCapability } = await import("./capability-SCRFGODD.js");
3087
3171
  registerCapability(program);
3088
3172
  } catch {
3089
3173
  }
3090
3174
  }
3091
3175
  async function registerSyncCommand() {
3092
3176
  try {
3093
- const { registerSync } = await import("./sync-ULT5SECP.js");
3177
+ const { registerSync } = await import("./sync-ERNHDPB5.js");
3094
3178
  registerSync(program);
3095
3179
  } catch {
3096
3180
  }
@@ -3113,6 +3197,41 @@ async function main() {
3113
3197
  await registerSyncCommand();
3114
3198
  await registerModelCommand();
3115
3199
  registerTracking(program);
3200
+ rejectUnknownHelpCommandPath(program, process.argv.slice(2));
3116
3201
  program.parse();
3117
3202
  }
3118
3203
  main();
3204
+ function rejectUnknownHelpCommandPath(root, args) {
3205
+ if (!args.includes("--help") && !args.includes("-h")) {
3206
+ return;
3207
+ }
3208
+ let current = root;
3209
+ for (let i = 0; i < args.length; i += 1) {
3210
+ const token = args[i];
3211
+ if (token === "--" || token === "--help" || token === "-h") {
3212
+ return;
3213
+ }
3214
+ if (token.startsWith("-")) {
3215
+ if (optionConsumesValue(token)) {
3216
+ i += 1;
3217
+ }
3218
+ continue;
3219
+ }
3220
+ const child = current.commands.find((cmd) => cmd.name() === token || cmd.aliases().includes(token));
3221
+ if (child) {
3222
+ current = child;
3223
+ continue;
3224
+ }
3225
+ if (current.commands.length > 0) {
3226
+ process.stderr.write(`error: unknown command '${token}'
3227
+ `);
3228
+ process.exit(1);
3229
+ }
3230
+ }
3231
+ }
3232
+ function optionConsumesValue(token) {
3233
+ if (token.includes("=")) {
3234
+ return false;
3235
+ }
3236
+ return token === "--host" || token === "--mcp-url" || token === "--format" || token === "--jq";
3237
+ }