@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.
- package/README.md +2 -0
- package/README.zh.md +2 -0
- package/dist/{auth-HJG2L6DR.js → auth-XZNXFRJS.js} +5 -341
- package/dist/{capability-JHYVQNQ4.js → capability-RJZ4KRGP.js} +42 -12
- package/dist/{chunk-QYJ252CT.js → chunk-4NRCTUZJ.js} +27041 -474
- package/dist/{chunk-KSQGGXGA.js → chunk-57RRFUEZ.js} +23 -7
- package/dist/{chunk-ARTIHWVD.js → chunk-7FTTULED.js} +12 -14
- package/dist/{chunk-Y3S2KNNR.js → chunk-7XGFSUOM.js} +3 -3
- package/dist/{chunk-UL6SJDYE.js → chunk-DVMLWQD4.js} +8 -186
- package/dist/{chunk-ZCM47ROU.js → chunk-DX5CDO34.js} +28 -7
- package/dist/chunk-EQ255HKO.js +38248 -0
- package/dist/{chunk-DU5MZQFQ.js → chunk-HBGADCKA.js} +3 -3
- package/dist/{chunk-6MXFJVNP.js → chunk-HFGZGYCG.js} +10 -6
- package/dist/{chunk-2BDQB42E.js → chunk-JOCDD4ON.js} +1 -1
- package/dist/{chunk-TKHSULJT.js → chunk-KPQY44JQ.js} +6 -0
- package/dist/chunk-L2QUIZTS.js +155 -0
- package/dist/{chunk-NXRKDG6E.js → chunk-MAPZ7VB6.js} +23 -21
- package/dist/chunk-V2NUHPXF.js +196 -0
- package/dist/{chunk-JFOGWBAT.js → chunk-WEPZ5M3Z.js} +5 -5
- package/dist/{community-report-client-QE4RC2XG.js → community-report-client-CU22W53K.js} +1 -1
- package/dist/{config-XMRP5NDA.js → config-XO3LI3SA.js} +4 -4
- package/dist/context-IFJI3LIT.js +46 -0
- package/dist/{data-integration-SGRITHJS.js → data-integration-HNGUKFIC.js} +47 -37
- package/dist/index.js +103 -62
- package/dist/{local-data-upload-client-LMVS7YAR.js → local-data-upload-client-GTRIT64F.js} +3 -2
- package/dist/{memory-5ZC73XBC.js → memory-QGPSNCQS.js} +4 -4
- package/dist/{metadata-LBX6O24P.js → metadata-JAQW7KGZ.js} +8 -8
- package/dist/{model-CRDIVYN5.js → model-RNPQXIBI.js} +4 -4
- package/dist/{personal-semantic-preference-7FVUTJZF.js → personal-semantic-preference-QCZ2IZTK.js} +11 -8
- package/dist/project-semantic-64JURXKF.js +372 -0
- package/dist/{sync-VVNDHU7R.js → sync-O45NXEQY.js} +10 -9
- package/dist/{te-agent-4T5TFHD6.js → te-agent-K5MSPNHJ.js} +5 -5
- package/dist/{te-analysis-TPYFOIFD.js → te-analysis-KQKCAI5H.js} +1086 -354
- package/dist/{te-community-PWOTHSEC.js → te-community-4OYU3BDA.js} +4 -4
- package/dist/{te-dataops-ZJV5QVJU.js → te-dataops-NFIPB6FX.js} +5 -5
- package/dist/{te-engage-WVHBZAXH.js → te-engage-HSVSRW22.js} +7 -7
- package/dist/{te-kb-PNM2ZKBP.js → te-kb-3TS73NO6.js} +454 -194
- package/dist/{te-system-MRCMLAWW.js → te-system-STMHLS5J.js} +12 -7
- package/dist/{te-team-Y36TG6AQ.js → te-team-3I5AOX3N.js} +6 -6
- package/dist/{update-UNKCZ5U5.js → update-RZXLPCRH.js} +4 -4
- package/package.json +22 -17
- package/skills/ae-analysis/SKILL.md +91 -91
- package/skills/ae-analysis/references/adhoc_export.md +11 -18
- package/skills/ae-analysis/references/adhoc_run.md +15 -7
- package/skills/ae-analysis/references/agent_review_detail.md +11 -0
- package/skills/ae-analysis/references/agent_review_evidence.md +46 -0
- package/skills/ae-analysis/references/agent_review_list.md +9 -0
- package/skills/ae-analysis/references/agent_review_preflight.md +96 -0
- package/skills/ae-analysis/references/agent_review_priorities_comparisons.md +76 -0
- package/skills/ae-analysis/references/agent_review_records.md +9 -0
- package/skills/ae-analysis/references/agent_review_retry.md +12 -0
- package/skills/ae-analysis/references/agent_review_review.md +16 -0
- package/skills/ae-analysis/references/agent_review_submit_to_page.md +184 -0
- package/skills/ae-analysis/references/ai_models/attribution.md +29 -0
- package/skills/ae-analysis/references/ai_models/distribution.md +40 -0
- package/skills/ae-analysis/references/ai_models/event.md +108 -0
- package/skills/ae-analysis/references/ai_models/funnel.md +46 -0
- package/skills/ae-analysis/references/ai_models/heat_map.md +26 -0
- package/skills/ae-analysis/references/ai_models/interval.md +20 -0
- package/skills/ae-analysis/references/ai_models/path.md +38 -0
- package/skills/ae-analysis/references/ai_models/prop_analysis.md +39 -0
- package/skills/ae-analysis/references/ai_models/rank_list.md +25 -0
- package/skills/ae-analysis/references/ai_models/retention.md +70 -0
- package/skills/ae-analysis/references/ai_models/revenue.md +28 -0
- package/skills/ae-analysis/references/ai_models/sql.md +74 -0
- package/skills/ae-analysis/references/ai_models/tag.md +19 -0
- package/skills/ae-analysis/references/ai_models.md +32 -473
- package/skills/ae-analysis/references/alert_create.md +7 -7
- package/skills/ae-analysis/references/alert_delete.md +4 -6
- package/skills/ae-analysis/references/alert_detail_list.md +7 -9
- package/skills/ae-analysis/references/alert_get.md +5 -7
- package/skills/ae-analysis/references/alert_job_list.md +4 -6
- package/skills/ae-analysis/references/alert_list.md +6 -8
- package/skills/ae-analysis/references/alert_notice_config_list.md +4 -6
- package/skills/ae-analysis/references/alert_start.md +5 -7
- package/skills/ae-analysis/references/alert_stop.md +5 -7
- package/skills/ae-analysis/references/alert_update.md +8 -8
- package/skills/ae-analysis/references/analysis_data_export.md +72 -0
- package/skills/ae-analysis/references/analysis_data_retrieval.md +32 -196
- package/skills/ae-analysis/references/analysis_gateway_assets.md +23 -180
- package/skills/ae-analysis/references/analysis_interpretation.md +37 -17
- package/skills/ae-analysis/references/asset_abnormal_get.md +0 -1
- package/skills/ae-analysis/references/asset_abnormal_list.md +0 -1
- package/skills/ae-analysis/references/asset_authentication_export.md +4 -0
- package/skills/ae-analysis/references/asset_authentication_list.md +7 -1
- package/skills/ae-analysis/references/asset_authentication_update.md +5 -1
- package/skills/ae-analysis/references/asset_batch_dashboard_schedule_freeze.md +8 -6
- package/skills/ae-analysis/references/asset_batch_delete.md +6 -6
- package/skills/ae-analysis/references/asset_batch_disable_auto_backup.md +4 -5
- package/skills/ae-analysis/references/asset_batch_disable_auto_update.md +5 -6
- package/skills/ae-analysis/references/asset_batch_handover.md +4 -5
- package/skills/ae-analysis/references/asset_batch_info_export.md +4 -5
- package/skills/ae-analysis/references/asset_batch_sql_export.md +5 -6
- package/skills/ae-analysis/references/asset_dependency_list.md +4 -5
- package/skills/ae-analysis/references/asset_export.md +4 -5
- package/skills/ae-analysis/references/asset_impact_list.md +5 -9
- package/skills/ae-analysis/references/asset_lineage_get.md +5 -6
- package/skills/ae-analysis/references/asset_list.md +4 -5
- package/skills/ae-analysis/references/asset_query_history_list.md +4 -8
- package/skills/ae-analysis/references/asset_recent_list.md +0 -1
- package/skills/ae-analysis/references/asset_search.md +12 -9
- package/skills/ae-analysis/references/asset_url_get.md +3 -4
- package/skills/ae-analysis/references/bi_panel_copy.md +2 -2
- package/skills/ae-analysis/references/bi_panel_page_data_export.md +4 -12
- package/skills/ae-analysis/references/bi_panel_page_data_run.md +2 -0
- package/skills/ae-analysis/references/catalog_export.md +4 -17
- package/skills/ae-analysis/references/catalog_list.md +4 -4
- package/skills/ae-analysis/references/check_delete.md +5 -7
- package/skills/ae-analysis/references/check_export.md +11 -11
- package/skills/ae-analysis/references/check_get.md +8 -10
- package/skills/ae-analysis/references/check_list.md +4 -6
- package/skills/ae-analysis/references/check_retry.md +8 -10
- package/skills/ae-analysis/references/check_run.md +2 -4
- package/skills/ae-analysis/references/command_index.md +44 -26
- package/skills/ae-analysis/references/dashboard_report_data_export.md +5 -13
- package/skills/ae-analysis/references/dashboard_report_data_run.md +1 -1
- package/skills/ae-analysis/references/dashboard_update.md +14 -3
- package/skills/ae-analysis/references/datatable_columns_get.md +0 -1
- package/skills/ae-analysis/references/datatable_influence_list.md +0 -1
- package/skills/ae-analysis/references/datatable_version_get.md +0 -1
- package/skills/ae-analysis/references/datatable_version_list.md +0 -1
- package/skills/ae-analysis/references/debug_device_add.md +1 -2
- package/skills/ae-analysis/references/drilldown_entities_export.md +3 -3
- package/skills/ae-analysis/references/drilldown_events_export.md +3 -2
- package/skills/ae-analysis/references/drilldown_user_events_export.md +2 -2
- package/skills/ae-analysis/references/entity_detail_export.md +3 -2
- package/skills/ae-analysis/references/entity_detail_run.md +1 -0
- package/skills/ae-analysis/references/event_blacklist_add.md +5 -7
- package/skills/ae-analysis/references/event_blacklist_list.md +4 -6
- package/skills/ae-analysis/references/event_blacklist_update.md +6 -8
- package/skills/ae-analysis/references/event_changelog_list.md +0 -1
- package/skills/ae-analysis/references/event_create.md +0 -1
- package/skills/ae-analysis/references/event_detail_export.md +3 -2
- package/skills/ae-analysis/references/event_detail_run.md +1 -0
- package/skills/ae-analysis/references/event_export.md +0 -1
- package/skills/ae-analysis/references/event_get.md +0 -1
- package/skills/ae-analysis/references/event_hide_update.md +0 -1
- package/skills/ae-analysis/references/event_influence_list.md +0 -1
- package/skills/ae-analysis/references/event_list.md +0 -1
- package/skills/ae-analysis/references/event_property_bundle_export.md +5 -14
- package/skills/ae-analysis/references/event_property_bundle_import.md +2 -6
- package/skills/ae-analysis/references/event_relation_update.md +0 -1
- package/skills/ae-analysis/references/event_update.md +0 -1
- package/skills/ae-analysis/references/exchange_config_update.md +0 -1
- package/skills/ae-analysis/references/exchange_rate_refresh.md +0 -1
- package/skills/ae-analysis/references/exchange_rule_list.md +0 -1
- package/skills/ae-analysis/references/exchange_rule_update.md +0 -1
- package/skills/ae-analysis/references/exchange_rule_validate.md +0 -1
- package/skills/ae-analysis/references/governance_recommendation_decisions.md +23 -0
- package/skills/ae-analysis/references/governance_recommendation_export.md +108 -0
- package/skills/ae-analysis/references/governance_recommendation_submit.md +41 -0
- package/skills/ae-analysis/references/history_tag_data_drilldown_export.md +4 -4
- package/skills/ae-analysis/references/history_tag_data_export.md +3 -3
- package/skills/ae-analysis/references/ingest_error_list.md +7 -9
- package/skills/ae-analysis/references/ingest_summary.md +6 -8
- package/skills/ae-analysis/references/live_data_export.md +10 -10
- package/skills/ae-analysis/references/live_data_list.md +7 -9
- package/skills/ae-analysis/references/metadata_resolution.md +78 -0
- package/skills/ae-analysis/references/metric_export.md +0 -1
- package/skills/ae-analysis/references/metric_get.md +0 -1
- package/skills/ae-analysis/references/metric_list.md +4 -5
- package/skills/ae-analysis/references/metric_update.md +0 -1
- package/skills/ae-analysis/references/operation_record_export.md +4 -5
- package/skills/ae-analysis/references/operation_record_list.md +4 -5
- package/skills/ae-analysis/references/personal_semantic_preference_list.md +18 -1
- package/skills/ae-analysis/references/plan_change_log_export.md +10 -10
- package/skills/ae-analysis/references/plan_change_log_list.md +4 -6
- package/skills/ae-analysis/references/plan_delete_items.md +2 -4
- package/skills/ae-analysis/references/plan_export.md +9 -9
- package/skills/ae-analysis/references/plan_generate.md +2 -4
- package/skills/ae-analysis/references/plan_get.md +4 -6
- package/skills/ae-analysis/references/plan_import_excel.md +6 -8
- package/skills/ae-analysis/references/plan_save_items.md +2 -4
- package/skills/ae-analysis/references/plan_sync_from_meta.md +4 -6
- package/skills/ae-analysis/references/project_access_detail_get.md +0 -1
- package/skills/ae-analysis/references/project_data_power_get.md +0 -1
- package/skills/ae-analysis/references/project_data_power_list.md +0 -1
- package/skills/ae-analysis/references/project_data_power_upsert.md +0 -1
- package/skills/ae-analysis/references/project_entity_create.md +0 -1
- package/skills/ae-analysis/references/project_entity_event_list.md +0 -1
- package/skills/ae-analysis/references/project_entity_get.md +0 -1
- package/skills/ae-analysis/references/project_entity_list.md +0 -1
- package/skills/ae-analysis/references/project_entity_update.md +0 -1
- package/skills/ae-analysis/references/project_function_list.md +0 -1
- package/skills/ae-analysis/references/project_info_get.md +0 -1
- package/skills/ae-analysis/references/project_info_list.md +0 -1
- package/skills/ae-analysis/references/project_info_update.md +0 -1
- package/skills/ae-analysis/references/project_mark_time_create.md +0 -1
- package/skills/ae-analysis/references/project_mark_time_list.md +0 -1
- package/skills/ae-analysis/references/project_mark_time_update.md +0 -1
- package/skills/ae-analysis/references/project_member_add.md +6 -5
- package/skills/ae-analysis/references/project_member_batch_update.md +0 -1
- package/skills/ae-analysis/references/project_member_candidate_list.md +4 -3
- package/skills/ae-analysis/references/project_member_handover_run.md +2 -3
- package/skills/ae-analysis/references/project_member_list.md +0 -1
- package/skills/ae-analysis/references/project_member_receiver_list.md +0 -1
- package/skills/ae-analysis/references/project_member_update.md +0 -1
- package/skills/ae-analysis/references/project_owner_update.md +0 -1
- package/skills/ae-analysis/references/project_permission_binding_list.md +0 -1
- package/skills/ae-analysis/references/project_role_function_list.md +0 -1
- package/skills/ae-analysis/references/project_role_get.md +0 -1
- package/skills/ae-analysis/references/project_role_list.md +0 -1
- package/skills/ae-analysis/references/project_role_upsert.md +32 -2
- package/skills/ae-analysis/references/project_role_user_list.md +0 -1
- package/skills/ae-analysis/references/project_semantic_knowledge_wiki.md +214 -0
- package/skills/ae-analysis/references/project_semantic_knowledge_wiki_plan_schema.md +93 -0
- package/skills/ae-analysis/references/project_timezone_get.md +0 -1
- package/skills/ae-analysis/references/project_timezone_overview.md +0 -1
- package/skills/ae-analysis/references/project_timezone_update.md +0 -1
- package/skills/ae-analysis/references/project_user_id_items_update.md +0 -1
- package/skills/ae-analysis/references/property_changelog_list.md +0 -1
- package/skills/ae-analysis/references/property_create.md +0 -1
- package/skills/ae-analysis/references/property_export.md +0 -1
- package/skills/ae-analysis/references/property_get.md +0 -1
- package/skills/ae-analysis/references/property_hide_update.md +0 -1
- package/skills/ae-analysis/references/property_influence_list.md +0 -1
- package/skills/ae-analysis/references/property_list.md +3 -4
- package/skills/ae-analysis/references/property_related_events.md +0 -1
- package/skills/ae-analysis/references/property_relation_update.md +0 -1
- package/skills/ae-analysis/references/property_update.md +0 -1
- package/skills/ae-analysis/references/report_create.md +4 -2
- package/skills/ae-analysis/references/report_data_export.md +11 -9
- package/skills/ae-analysis/references/report_data_run.md +14 -7
- package/skills/ae-analysis/references/report_get.md +5 -3
- package/skills/ae-analysis/references/report_list.md +2 -0
- package/skills/ae-analysis/references/report_update.md +5 -3
- package/skills/ae-analysis/references/rule_create.md +5 -6
- package/skills/ae-analysis/references/rule_delete.md +5 -5
- package/skills/ae-analysis/references/rule_list.md +3 -4
- package/skills/ae-analysis/references/rule_schema.md +3 -4
- package/skills/ae-analysis/references/rule_update.md +5 -6
- package/skills/ae-analysis/references/sdk_sample_generate.md +2 -4
- package/skills/ae-analysis/references/sql_table_columns.md +1 -1
- package/skills/ae-analysis/references/super_metadata_batch_create.md +1 -1
- package/skills/ae-analysis/references/super_metadata_batch_edit.md +1 -1
- package/skills/ae-analysis/references/system_member_add.md +1 -2
- package/skills/ae-analysis/references/system_member_status_update.md +1 -1
- package/skills/ae-analysis/references/system_ops_alert_contact_list.md +1 -1
- package/skills/ae-analysis/references/system_ops_alert_contact_test.md +0 -1
- package/skills/ae-analysis/references/system_query_monitor_overview.md +3 -3
- package/skills/ae-analysis/references/system_query_task_export.md +4 -14
- package/skills/ae-analysis/references/system_query_task_get.md +1 -1
- package/skills/ae-analysis/references/system_query_task_list.md +5 -6
- package/skills/ae-analysis/references/system_receiver_address_upsert.md +3 -3
- package/skills/ae-analysis/references/system_receiver_detection_get.md +1 -1
- package/skills/ae-analysis/references/system_third_party_login_disable.md +1 -1
- package/skills/ae-analysis/references/system_usage_trend_export.md +3 -12
- package/skills/ae-analysis/references/user_cluster_list.md +1 -1
- package/skills/ae-analysis/references/user_cluster_member_export.md +4 -4
- package/skills/ae-analysis/references/user_tag_list.md +1 -1
- package/skills/ae-analysis/references/user_tag_member_export.md +4 -4
- package/skills/ae-analysis/references/virtual_event_create.md +10 -5
- package/skills/ae-analysis/references/virtual_event_get.md +0 -1
- package/skills/ae-analysis/references/virtual_property_create.md +0 -1
- package/skills/ae-analysis/references/virtual_property_sql_rule_update.md +0 -1
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/build-project-semantic-wiki.mjs +1054 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/company-kb.mjs +112 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/default-compile-rules.md +30 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/generate-build-ir.mjs +2735 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/package-wiki-source-zip.mjs +376 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/plan-kb-source-sync.mjs +264 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/precompiled-source.mjs +49 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/upload-kb-sources-concurrently.mjs +200 -0
- package/skills/ae-analysis/scripts/read_results.py +197 -0
- package/skills/ae-analysis-global/SKILL.md +1 -1
- package/skills/ae-capability/SKILL.md +1 -1
- package/skills/ae-community/SKILL.md +1 -1
- package/skills/ae-current-context/SKILL.md +53 -0
- package/skills/ae-data-integration/SKILL.md +5 -4
- package/skills/ae-data-integration/references/lark-bitable-source.md +288 -0
- package/skills/ae-data-integration/references/lark-sheet-source.md +130 -0
- package/skills/ae-data-integration/references/manual-export-source.md +83 -0
- package/skills/ae-data-integration/references/reuse.md +2 -0
- package/skills/ae-data-integration/references/sink-upload.md +32 -0
- package/skills/ae-data-integration/references/tracking-plan.md +4 -1
- package/skills/ae-data-integration/references/ue-mapping.md +2 -2
- package/skills/ae-data-integration-helper/SKILL.md +5 -5
- package/skills/ae-data-integration-helper/references/android_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/c_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/java_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/logbus2_guide.md +1 -1
- package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +2 -2
- package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +2 -2
- package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/python_sdk_faq.md +2 -2
- package/skills/ae-data-integration-helper/references/restful_api_notes.md +2 -2
- package/skills/ae-data-integration-helper/references/sdk_log_guide.md +3 -3
- package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +11 -11
- package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +1 -1
- package/skills/ae-dataops/SKILL.md +1 -1
- package/skills/ae-engage/SKILL.md +4 -3
- package/skills/ae-engage/references/build-task-save-guide.md +3 -0
- package/skills/ae-engage/references/flow-metric-update.md +115 -1
- package/skills/ae-engage/references/save-flow.md +3 -0
- package/skills/ae-engage/references/save-task.md +21 -0
- package/skills/ae-engage/references/task-metric-update.md +151 -0
- package/skills/ae-generate-tracking-code/SKILL.md +2 -1
- package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +1 -1
- package/skills/ae-generate-tracking-code/references/datax-config.md +1 -1
- package/skills/ae-generate-tracking-code/references/logbus-config.md +1 -1
- package/skills/ae-generate-tracking-code/references/modes.md +1 -1
- package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +5 -5
- package/skills/ae-generate-tracking-code/references/snippet-delivery.md +3 -3
- package/skills/ae-generate-tracking-plan/SKILL.md +2 -2
- package/skills/ae-generate-tracking-plan/references/te-api.md +1 -0
- package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +3 -2
- package/skills/ae-kb/SKILL.md +41 -2
- package/skills/ae-kb/references/analysis-workflow.md +292 -0
- package/skills/ae-kb/references/source-mutations.md +95 -0
- package/skills/ae-kb-discovery/SKILL.md +5 -1
- package/skills/ae-metadata/SKILL.md +1 -1
- package/skills/ae-migrate-tracking-code/SKILL.md +195 -0
- package/skills/ae-migrate-tracking-code/references/ae-preset-properties.md +76 -0
- package/skills/ae-migrate-tracking-code/references/ir.md +167 -0
- package/skills/ae-migrate-tracking-code/references/mapping-framework.md +112 -0
- package/skills/ae-migrate-tracking-code/references/providers/README.md +58 -0
- package/skills/ae-migrate-tracking-code/references/providers/amplitude.md +208 -0
- package/skills/ae-migrate-tracking-code/references/providers/firebase.md +160 -0
- package/skills/ae-migrate-tracking-code/references/providers/ga4.md +92 -0
- package/skills/ae-migrate-tracking-code/references/providers/mixpanel.md +150 -0
- package/skills/ae-migrate-tracking-code/references/providers/sensors-data.md +146 -0
- package/skills/ae-system/SKILL.md +4 -4
- package/skills/ae-team/SKILL.md +2 -2
- package/skills/ae-use-agent/references/local-agent.md +1 -1
- package/assets/workbuddy-host-page/thinkingai.png +0 -0
- package/assets/workbuddy-host-page/workbuddy.png +0 -0
- package/bin/ae-cli-workbuddy.js +0 -7
- package/dist/chunk-QSO4SA6C.js +0 -72
- 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-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import
|
|
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
|
-
|
|
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
|
|
124
|
-
import
|
|
125
|
-
import
|
|
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(
|
|
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
|
-
|
|
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 =
|
|
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" ?
|
|
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(
|
|
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 =
|
|
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 ?
|
|
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(/"/g, '"').replace(/'/g, "'").replace(/</g, "<").replace(/>/g, ">").replace(/&/g, "&");
|
|
1487
1497
|
}
|
|
1488
1498
|
async function streamXls(filePath, sheetName, onRow, options) {
|
|
1489
|
-
const workbook =
|
|
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 =
|
|
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 =
|
|
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
|
|
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 =
|
|
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
|
-
|
|
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(
|
|
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
|
|
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(
|
|
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
|
|
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
|
-
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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,
|
|
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
|
|
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(
|
|
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-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import
|
|
20
|
-
|
|
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-
|
|
29
|
+
} from "./chunk-JOCDD4ON.js";
|
|
25
30
|
import {
|
|
26
31
|
TeAgentApiError,
|
|
27
32
|
TeAgentCredentialsError
|
|
28
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-HBGADCKA.js";
|
|
29
34
|
import {
|
|
30
35
|
CapabilityGatewayError,
|
|
31
36
|
executeCapability,
|
|
32
37
|
uploadInputFileBytes
|
|
33
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-HFGZGYCG.js";
|
|
34
39
|
import {
|
|
35
40
|
formatCapabilityMissCompatHint,
|
|
36
41
|
printError,
|
|
37
42
|
printOutput,
|
|
38
43
|
runHostCompatCheck
|
|
39
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-DX5CDO34.js";
|
|
40
45
|
import "./chunk-Y74WTIKJ.js";
|
|
41
46
|
import {
|
|
42
47
|
SecureStoreAuthError,
|
|
43
48
|
getCliToken
|
|
44
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-7XGFSUOM.js";
|
|
45
50
|
import {
|
|
46
51
|
getActiveHost,
|
|
52
|
+
getConfigDir,
|
|
47
53
|
safeJsonParse
|
|
48
|
-
} from "./chunk-
|
|
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-
|
|
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(
|
|
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-
|
|
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-
|
|
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
|
-
|
|
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
|
|
1503
|
+
import * as nodeFs from "fs";
|
|
1498
1504
|
import path3 from "path";
|
|
1499
|
-
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
5
|
+
} from "./chunk-HFGZGYCG.js";
|
|
6
6
|
import "./chunk-Y74WTIKJ.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
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";
|