@thinkingai/ae-cli 6.0.18-1 → 6.0.20

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 (64) hide show
  1. package/README.md +7 -6
  2. package/README.zh.md +8 -7
  3. package/dist/index.js +11 -6
  4. package/dist/{te-agent-KZRIEN4N.js → te-agent-CYZUC4US.js} +543 -19
  5. package/dist/{te-analysis-VAR4KUOK.js → te-analysis-HJ22TUAA.js} +318 -40
  6. package/dist/te-audience-MYDE5WEH.js +590 -0
  7. package/dist/te-dataops-ZTS7XMXM.js +1842 -0
  8. package/dist/{te-kb-B62KFP2A.js → te-kb-OWM3RQRH.js} +46 -21
  9. package/dist/{te-meta-EPZGQN56.js → te-meta-JVO4QJBH.js} +28 -11
  10. package/package.json +1 -1
  11. package/skills/ae-agent/SKILL.md +103 -4
  12. package/skills/ae-analysis/SKILL.md +66 -19
  13. package/skills/ae-analysis/references/build_attribution_analysis_qp.md +60 -0
  14. package/skills/ae-analysis/references/build_cluster_definition.md +60 -0
  15. package/skills/ae-analysis/references/build_distribution_analysis_qp.md +65 -0
  16. package/skills/ae-analysis/references/build_heat_map_analysis_qp.md +52 -0
  17. package/skills/ae-analysis/references/build_interval_analysis_qp.md +58 -0
  18. package/skills/ae-analysis/references/build_path_analysis_qp.md +51 -0
  19. package/skills/ae-analysis/references/build_rank_list_analysis_qp.md +61 -0
  20. package/skills/ae-analysis/references/build_tag_definition.md +63 -0
  21. package/skills/ae-analysis/references/cancel_query.md +2 -3
  22. package/skills/ae-analysis/references/copy_dashboard.md +33 -0
  23. package/skills/ae-analysis/references/create_id_cluster.md +40 -0
  24. package/skills/ae-analysis/references/create_id_tag.md +39 -0
  25. package/skills/ae-analysis/references/delete_alert.md +27 -0
  26. package/skills/ae-analysis/references/delete_cluster.md +27 -0
  27. package/skills/ae-analysis/references/delete_dashboard.md +30 -0
  28. package/skills/ae-analysis/references/delete_metric.md +27 -0
  29. package/skills/ae-analysis/references/delete_report.md +27 -0
  30. package/skills/ae-analysis/references/delete_tag.md +27 -0
  31. package/skills/ae-analysis/references/drilldown_user_events.md +4 -4
  32. package/skills/ae-analysis/references/drilldown_users.md +3 -3
  33. package/skills/ae-analysis/references/freeze_dashboards.md +29 -0
  34. package/skills/ae-analysis/references/get_table_columns.md +11 -12
  35. package/skills/ae-analysis/references/list_cluster_members.md +4 -4
  36. package/skills/ae-analysis/references/list_clusters.md +3 -3
  37. package/skills/ae-analysis/references/list_dashboards.md +3 -3
  38. package/skills/ae-analysis/references/list_entities.md +1 -1
  39. package/skills/ae-analysis/references/list_events.md +3 -3
  40. package/skills/ae-analysis/references/list_metrics.md +2 -2
  41. package/skills/ae-analysis/references/list_properties.md +3 -3
  42. package/skills/ae-analysis/references/list_reports.md +3 -3
  43. package/skills/ae-analysis/references/list_spaces.md +27 -0
  44. package/skills/ae-analysis/references/list_tag_members.md +4 -4
  45. package/skills/ae-analysis/references/list_tags.md +2 -2
  46. package/skills/ae-analysis/references/move_dashboard.md +33 -0
  47. package/skills/ae-analysis/references/query_adhoc.md +2 -2
  48. package/skills/ae-analysis/references/query_bi_panel_data.md +2 -2
  49. package/skills/ae-analysis/references/query_dashboard_report_data.md +4 -4
  50. package/skills/ae-analysis/references/query_entity_details.md +4 -4
  51. package/skills/ae-analysis/references/query_event_details.md +3 -3
  52. package/skills/ae-analysis/references/query_report_data.md +37 -3
  53. package/skills/ae-analysis/references/update_id_cluster.md +36 -0
  54. package/skills/ae-analysis/references/update_id_tag.md +37 -0
  55. package/skills/ae-analysis/references/update_report.md +35 -0
  56. package/skills/ae-analysis-intent/SKILL.md +1 -1
  57. package/skills/ae-dataops/SKILL.md +54 -522
  58. package/skills/ae-dataops/references/dataops-flow-create.md +78 -75
  59. package/skills/ae-dataops/references/dataops-flow-monitor.md +58 -51
  60. package/skills/ae-dataops/references/dataops-integration.md +80 -41
  61. package/skills/ae-dataops/references/dataops-query.md +54 -53
  62. package/skills/ae-dataops/references/dataops-table.md +28 -59
  63. package/dist/te-audience-KMKYI2YJ.js +0 -400
  64. package/dist/te-dataops-GD3XBYCS.js +0 -1830
@@ -1,22 +1,27 @@
1
1
  ---
2
2
  name: ae-dataops
3
3
  version: 2.0.0
4
- description: "AE Data Development and Operations: Data warehouse management, flow orchestration, IDE queries, data integration, operations and backfill management"
4
+ description: "AE Data Development and Operations: Data warehouse management, flow orchestration, IDE queries, and data integration"
5
+ metadata:
6
+ requires:
7
+ bins: ["ae-cli"]
5
8
  ---
6
9
 
7
10
  # ae-dataops
8
11
 
12
+ > **CRITICAL - This skill is self-contained.** Use the Global AE CLI Rules below; do not require a separate shared skill for DataOps-side tasks.
13
+
9
14
  The AE Data Development and Operations domain provides capabilities for data warehouse management, flow orchestration, IDE SQL queries, data integration, operations and backfill management, including the following subcommands:
10
15
 
11
16
  | Subcommand | Responsibility | Corresponding Scenario Skill |
12
17
  |------------|----------------|------------------------------|
13
- | `dataops_repo` | Space and resource management | — |
18
+ | `dataops_repo` | Space discovery | — |
14
19
  | `dataops_datatable` | Data table and view management | `dataops-table` |
15
20
  | `dataops_flow` | Flow creation and orchestration | `dataops-flow-create` |
16
21
  | `dataops_flow` | Flow execution and monitoring | `dataops-flow-monitor` |
22
+ | `dataops_operations` | Operations instance search, details, and task logs | `dataops-flow-monitor` |
17
23
  | `dataops_ide` | Data exploration and SQL queries | `dataops-query` |
18
24
  | `dataops_integration` | Datasource and data integration | `dataops-integration` |
19
- | `dataops_operations` | Operations and backfill management | `dataops-operations` |
20
25
 
21
26
  ---
22
27
 
@@ -39,11 +44,11 @@ Output and errors:
39
44
 
40
45
  Safety constraints:
41
46
  - Read commands can execute directly after required IDs and references are verified.
42
- - Write commands require explicit user intent and normally keep the confirmation prompt.
47
+ - Write-command examples omit `--yes`; add `--yes` only when the user explicitly wants to skip the confirmation prompt.
43
48
  - Never invent command names, flags, JSON payloads, `project_id`, resource IDs, field names, event names, property names, metric definitions, or date formats. Read the matching command reference and discover real project metadata first.
44
49
  - **NEVER fabricate or guess resource names** (reports, dashboards, events, properties, metrics, clusters, tags, alerts). Always use list commands to discover real resources first. If a resource is not found after fuzzy search and full list fallback, explicitly tell the user "resource not found" and stop - do not proceed with fabricated names.
45
50
 
46
- Domains for DataOps: `dataops_repo`, `dataops_datatable`, `dataops_flow`, `dataops_ide`, `dataops_integration`, `dataops_operations`
51
+ Domains for DataOps: `dataops_repo`, `dataops_datatable`, `dataops_flow`, `dataops_operations`, `dataops_ide`, `dataops_integration`
47
52
 
48
53
  ---
49
54
 
@@ -51,22 +56,22 @@ Domains for DataOps: `dataops_repo`, `dataops_datatable`, `dataops_flow`, `datao
51
56
 
52
57
  You must understand the following key concepts before use, otherwise errors are highly likely.
53
58
 
54
- ### ID System (Not Interchangeable)
59
+ ### ID System
55
60
 
56
61
  | ID | Source | Usage Scope |
57
62
  |----|--------|-------------|
58
- | **executeId** | Returned by `dataops_flow +execute_flow` / obtained via `+list_flow_instances` | All execution-related commands in `dataops_flow` |
59
- | **flowInstanceId** | Obtained via `dataops_operations +search_flow_instances` | All operations commands in `dataops_operations` |
60
-
61
- > **executeId and flowInstanceId are not interchangeable.** `dataops_flow` tools use executeId, `dataops_operations` tools use flowInstanceId.
63
+ | **executeId** | Returned by `dataops_flow +execute_flow` | Early stop handle before the scheduler `flowInstanceId` is available |
64
+ | **flowInstanceId** | Returned by `dataops_operations +search_flow_instances` | Operations perspective instance inspection and stop |
62
65
 
63
66
  ### Environment and Defaults
64
67
 
65
68
  | Scenario | Default Environment | Description |
66
69
  |----------|---------------------|-------------|
67
70
  | Most flow/ide/datatable commands | `DEV` | Development environment |
68
- | `+list_flow_instances` instance list | **PROD** | Operations scenarios default to production |
69
- | All `dataops_operations` commands | **PROD** | Operations perspective focuses on production |
71
+ | `dataops_operations +search_flow_instances` | Operations instance search | Filter by keyword, execution date, status, and paging |
72
+ | `dataops_operations +get_flow_instance_detail` | Instance detail | Inspect one instance DAG and task statuses |
73
+ | `dataops_operations +get_task_instance_detail` | Task detail/logs | Inspect one task and include logs only when needed |
74
+ | `dataops_operations +stop_flow_instance` | Instance stop | Stop by exactly one of `executeId` or `flowInstanceId` |
70
75
 
71
76
  ### Schema Naming Rules
72
77
 
@@ -79,12 +84,11 @@ You must understand the following key concepts before use, otherwise errors are
79
84
  |-----------|--------------|------------|
80
85
  | Execute SELECT queries | `dataops_ide` | — |
81
86
  | Create/modify/delete data tables (DDL) | `dataops_datatable` | `dataops_ide` |
82
- | Execute DDL on external datasources | `dataops_integration +execute_sql` | — |
83
87
 
84
88
  ### Flow Lifecycle
85
89
 
86
90
  ```
87
- Create Flow → Create Task Nodes Save Task Definitions → Configure Dependencies → Configure ScheduleDEV TestingRelease to PROD
91
+ Create DEV Flow → Create/Update DEV SQL Tasks → Configure Dependencies/SchedulePreview ReleaseRelease to PROD PROD Manual Execution / Operations Troubleshooting
88
92
  ```
89
93
 
90
94
  ### CRON Format (6 fields)
@@ -109,119 +113,38 @@ Choose the appropriate scenario skill based on user intent to get complete step-
109
113
  |-------------|---------------|----------|
110
114
  | Create flow, add nodes, configure schedule, release | `dataops-flow-create` | create flow, new workflow, configure schedule, add task node, release, cron, scheduled execution |
111
115
  | View execution status, troubleshoot failures, view logs | `dataops-flow-monitor` | execute flow, running instance, monitor, logs, stop, DAG, troubleshoot |
112
- | Create datasource, configure sync solution, execute sync | `dataops-integration` | datasource, sync, integration, sync, field mapping, data ingestion, MySQL, ClickHouse |
113
- | Operations instance management, rerun failures, backfill operations | `dataops-operations` | operations, backfill, rerun, alert, operations, backfill |
116
+ | Search operation instances across a space | `dataops-flow-monitor` | operations instance, flow instance search, status statistics, owner statistics |
117
+ | Create datasource, configure sync solution, execute sync | `dataops-integration` | datasource, sync, integration, field mapping, data ingestion, MySQL, ClickHouse, DatabricksJdbc |
114
118
  | Browse metadata, search tables, execute SQL queries | `dataops-query` | query, SQL, data exploration, search tables, view table structure, IDE, catalog, select |
115
- | Create tables, create views, batch create linked views | `dataops-table` | create table, table creation, view, data dictionary, linked view, linkview, DDL |
119
+ | Create tables and views | `dataops-table` | create table, table creation, view, data dictionary, table details, DDL |
116
120
 
117
121
  ---
118
122
 
119
- ## 1. Space and Resource Management
120
-
121
- ```bash
122
- # Get space list (entry command, get spaceCode)
123
- ae-cli dataops_repo +list_spaces
124
-
125
- # Get repository list
126
- ae-cli dataops_repo +list_repos --spaceCode "${spaceCode}"
127
-
128
- # Browse repository structure
129
- ae-cli dataops_repo +list_catalogs --spaceCode "${spaceCode}" --repoCode "te_etl"
130
- ae-cli dataops_repo +list_schemas --spaceCode "${spaceCode}" --repoCode "te_etl" --catalog "hive"
123
+ ## 1. Space Discovery
131
124
 
132
- # View space members
133
- ae-cli dataops_repo +list_space_members --spaceCode "${spaceCode}"
125
+ `dataops_repo` exposes only one read command. Use it to discover a valid `spaceCode` before calling DataOps commands that require one. It returns `createTime`, `spaceCode`, and `spaceDisplayName`.
134
126
 
135
- # View space parameters
136
- ae-cli dataops_repo +list_support_params --spaceCode "${spaceCode}"
127
+ - If the user already provided a trusted `spaceCode`, reuse it.
128
+ - If `spaceCode` is unknown, run `+list_spaces` first.
129
+ - If exactly one space is returned, use its `spaceCode`.
130
+ - If multiple spaces are returned and the user intent does not identify one, ask the user which space to use. Do not guess.
137
131
 
138
- # Preview parameter expression
139
- ae-cli dataops_repo +preview_param_expression --spaceCode "${spaceCode}" --expression '${ws_run_date}'
132
+ ```bash
133
+ # List spaces accessible to the current user
134
+ ae-cli dataops_repo +list_spaces
140
135
  ```
141
136
 
142
- ### Command Quick Reference
143
-
144
- | Command | Purpose | Key Flags |
145
- |---------|---------|-----------|
146
- | `+list_spaces` | Space list | — |
147
- | `+list_repos` | Repository list | `--spaceCode` |
148
- | `+list_catalogs` | Catalog list | `--spaceCode` `--repoCode` |
149
- | `+list_schemas` | Schema list | `--spaceCode` `--repoCode` `--catalog` |
150
- | `+list_space_members` | Space members | `--spaceCode` |
151
- | `+list_support_params` | Space parameters | `--spaceCode` |
152
- | `+preview_param_expression` | Preview parameter | `--spaceCode` `--expression` |
153
- | `+list_param_used_flows` | Flows using parameter | `--spaceCode` `--paramKey` |
154
-
155
137
  ---
156
138
 
157
139
  ## 2. Data Table and View Management
158
140
 
159
- > See `dataops-table` Skill for detailed step-by-step workflows.
160
-
161
- ### Typical Flow: Search → View → Create
162
-
163
- ```bash
164
- # Search tables in data dictionary
165
- ae-cli dataops_datatable +dict_search_tables --spaceCode "${spaceCode}" --search "user" --maxResults 20
166
-
167
- # Get table details (field definitions, DDL, data lineage)
168
- ae-cli dataops_datatable +get_table_detail --spaceCode "${spaceCode}" --tableName "dwd_user_info"
169
-
170
- # Paginated query of registered tables
171
- ae-cli dataops_datatable +list_tables_by_page --spaceCode "${spaceCode}" --search "user" --pageNum 1 --pageSize 20
172
-
173
- # Get hierarchy by repository dimension
174
- ae-cli dataops_datatable +struct_by_repo --spaceCode "${spaceCode}"
175
-
176
- # Create physical table (DEV environment, DDL follows Trino specifications)
177
- ae-cli dataops_datatable +create_table --spaceCode "${spaceCode}" \
178
- --ddl "CREATE TABLE dwd_user_info (user_id VARCHAR, user_name VARCHAR, age INTEGER) WITH (format = 'ORC')" \
179
- --repoCode "te_etl" --catalog "hive" --schema "ws_default_dev" --confirmed true
180
-
181
- # Create PROD environment (same DDL, change schema to product database)
182
- ae-cli dataops_datatable +create_table --spaceCode "${spaceCode}" \
183
- --ddl "CREATE TABLE dwd_user_info (user_id VARCHAR, user_name VARCHAR, age INTEGER) WITH (format = 'ORC')" \
184
- --repoCode "te_etl" --catalog "hive" --schema "ws_default_product" --confirmed true
185
-
186
- # Create view
187
- ae-cli dataops_datatable +create_view --spaceCode "${spaceCode}" \
188
- --ddl "CREATE VIEW v_user_info AS SELECT user_id, user_name FROM hive.ws_default_dev.dwd_user_info" \
189
- --repoCode "te_etl" --catalog "hive" --schema "ws_default_dev" --confirmed true
190
-
191
- # Batch create linked views (async)
192
- ae-cli dataops_datatable +batch_create --spaceCode "${spaceCode}" \
193
- --srcRepoCode "te_etl" --srcCatalog "hive" --srcSchema "ws_default_hidden" \
194
- --processType 2 --batchCreationMode 1 --owner "${ownerOpenId}" \
195
- --viewInfos '[{"viewName":"v_orders","srcTableName":"ta_event_123","srcTableType":"TABLE"}]' \
196
- --confirmed true
197
-
198
- # Poll batch creation status (recommend 3-5 second interval)
199
- ae-cli dataops_datatable +linkview_get_batch_status --spaceCode "${spaceCode}" --batchId "${batchId}"
200
- ```
141
+ Detailed workflow, command flags, examples, and parameter notes live in [`references/dataops-table.md`](references/dataops-table.md).
201
142
 
202
- ### Command Quick Reference
203
-
204
- | Command | Purpose | Key Flags |
205
- |---------|---------|-----------|
206
- | `+dict_search_tables` | Data dictionary search | `--spaceCode` `--search` `--maxResults` |
207
- | `+get_table_detail` | Table details | `--spaceCode` `--tableName` |
208
- | `+list_tables_by_page` | Paginated list | `--spaceCode` `--search` `--pageNum` `--pageSize` |
209
- | `+struct_by_repo` | By repository hierarchy | `--spaceCode` `--search` |
210
- | `+list_system_tables` | System table list | `--spaceCode` `--projectId`/`--projectName` `--pageNum` `--pageSize` |
211
- | `+create_table` | Create physical table | `--spaceCode` `--ddl` `--repoCode` `--catalog` `--schema` `--confirmed` |
212
- | `+create_view` | Create view | `--spaceCode` `--ddl` `--repoCode` `--catalog` `--schema` `--confirmed` |
213
- | `+batch_create` | Batch create views | `--spaceCode` `--srcRepoCode` `--srcCatalog` `--srcSchema` `--processType` `--batchCreationMode` `--owner` `--viewInfos` `--confirmed` |
214
- | `+linkview_list_source_tables` | Available source tables | `--spaceCode` `--srcRepoCode` `--srcCatalog` `--srcSchema` |
215
- | `+linkview_get_batch_status` | Batch status | `--spaceCode` `--batchId` |
216
- | `+list_batches` | Historical batch records | `--spaceCode` `--status` |
217
-
218
- ### Parameter Notes
219
-
220
- - **schema naming**: DEV environment uses `ws_${spaceCode}_dev`, PROD environment uses `ws_${spaceCode}_product`
221
- - **processType**: `1`=DEV only | `2`=DEV+PROD
222
- - **batchCreationMode**: `1`=full sync | `2`=retry failures
223
- - **Table name rule**: `^[a-z][0-9a-z_]{0,127}$`
224
- - **DDL specification**: Follow Trino DDL syntax
143
+ Key constraints:
144
+ - Start with `dataops_datatable +dict_search_tables` for visible DataOps catalog discovery.
145
+ - Use `dataops_ide +search_tables` only for raw engine metadata, and `dataops_ide +ide_list_tables` only for known catalog/schema browsing.
146
+ - Create tables/views with `dataops_datatable`, not `dataops_ide`; creation is DEV-only and must be published with `+publish_entity`.
147
+ - DDL follows Trino syntax; current-space view DDL should keep the literal `${env}` placeholder.
225
148
 
226
149
  ---
227
150
 
@@ -229,429 +152,38 @@ ae-cli dataops_datatable +linkview_get_batch_status --spaceCode "${spaceCode}" -
229
152
 
230
153
  Flow orchestration is divided into two scenario skills: **creation and configuration** and **execution and monitoring**.
231
154
 
232
- ### 3a. Creation and Configuration
233
-
234
- > See `dataops-flow-create` Skill for detailed 8-step complete process.
235
-
236
- **Lifecycle: Create → Configure Nodes → Configure Schedule → DEV Testing → Release to PROD**
237
-
238
- ```bash
239
- # Create flow (returns flowCode)
240
- ae-cli dataops_flow +create_flow --spaceCode "${spaceCode}" \
241
- --flowName "Daily ETL Process" --remark "Process user data" --confirmed true
242
-
243
- # Create SQL task node (returns taskCode)
244
- ae-cli dataops_flow +create_task --spaceCode "${spaceCode}" \
245
- --flowCode "${flowCode}" --taskName "Process User Data" --taskType "TRINO_SQL" --confirmed true
246
-
247
- # Create task with upstream dependency
248
- ae-cli dataops_flow +create_task --spaceCode "${spaceCode}" \
249
- --flowCode "${flowCode}" --taskName "Export Results" --taskType "TRINO_SQL" \
250
- --preTaskCode "${upstreamTaskCode}" --confirmed true
251
-
252
- # Save task definition (SQL task)
253
- ae-cli dataops_flow +save_task_definition --spaceCode "${spaceCode}" \
254
- --flowCode "${flowCode}" --taskCode "${taskCode}" \
255
- --taskContentJson '{"sql":"SELECT * FROM dwd_user","repoCode":"te_etl","catalog":"hive","schema":"ws_default_dev"}' \
256
- --failRetryTimes 3 --failRetryInterval 30 --timeout 60 --confirmed true
257
-
258
- # Validate SQL (recommended before saving)
259
- ae-cli dataops_flow +validate_task_sql --spaceCode "${spaceCode}" \
260
- --flowCode "${flowCode}" --taskCode "${taskCode}" \
261
- --sql "SELECT * FROM dwd_user" --repoCode "te_etl" \
262
- --catalog "hive" --schema "ws_default_dev"
263
-
264
- # Add task dependency (DAG connection)
265
- ae-cli dataops_flow +add_task_relation --spaceCode "${spaceCode}" \
266
- --flowCode "${flowCode}" --preTaskCode "${upstreamTaskCode}" --taskCode "${downstreamTaskCode}" \
267
- --confirmed true
268
-
269
- # Configure scheduled execution (CRON 6 fields: second minute hour day month weekday)
270
- ae-cli dataops_flow +save_schedule_config --spaceCode "${spaceCode}" \
271
- --flowCode "${flowCode}" --scheduled 1 --scheduleType "CRON" \
272
- --cron "0 0 2 * * ?" --confirmed true
273
-
274
- # Manual testing in DEV environment
275
- ae-cli dataops_flow +execute_flow --spaceCode "${spaceCode}" \
276
- --flowCode "${flowCode}" --env "DEV" --confirmed true
277
-
278
- # Release to production (PROD schedule takes effect immediately, does not interrupt running instances)
279
- ae-cli dataops_flow +release_flow --spaceCode "${spaceCode}" \
280
- --flowCode "${flowCode}" --confirmed true
281
- ```
282
-
283
- **Task Node Types:**
284
-
285
- | Type | Description | Typical Use |
286
- |------|-------------|-------------|
287
- | TRINO_SQL | Trino SQL query | Data processing, ETL |
288
- | SHELL | Shell script | System commands, file operations |
289
- | FLOW_CHECK | Flow check | Check if upstream flow is complete |
290
- | TASK_CHECK | Task check | Check if specified task is complete |
291
- | OFFLINE_SYNC | Offline sync | Integration solution data sync (requires syncId) |
292
- | APP_SYNC | App sync | App table data sync (requires syncId) |
293
- | PLACE_HOLDER | Placeholder | Flow control, logical grouping |
294
-
295
- ### 3b. Execution and Monitoring
296
-
297
- > See `dataops-flow-monitor` Skill for detailed troubleshooting workflows.
298
-
299
- ```bash
300
- # Search flows (get flowCode)
301
- ae-cli dataops_flow +list_flows --spaceCode "${spaceCode}" --keyword "etl"
302
-
303
- # View flow basic information
304
- ae-cli dataops_flow +get_flow_detail --spaceCode "${spaceCode}" --flowCode "${flowCode}"
305
-
306
- # View definition DAG (static structure)
307
- ae-cli dataops_flow +get_flow_dag --spaceCode "${spaceCode}" --flowCode "${flowCode}"
308
-
309
- # View schedule configuration
310
- ae-cli dataops_flow +get_schedule_config --spaceCode "${spaceCode}" --flowCode "${flowCode}"
311
-
312
- # View execution instance list (default PROD environment, sorted by time descending)
313
- ae-cli dataops_flow +list_flow_instances --spaceCode "${spaceCode}" \
314
- --flowCode "${flowCode}" --env "PROD" --size 30
155
+ **Lifecycle: DEV configuration and preview → Release to PROD → PROD manual execution and operations troubleshooting**
315
156
 
316
- # View runtime DAG (with execution status for each node)
317
- ae-cli dataops_flow +get_execute_dag --spaceCode "${spaceCode}" --executeId "${executeId}"
157
+ Detailed creation/configuration commands live in [`references/dataops-flow-create.md`](references/dataops-flow-create.md). Detailed execution, monitoring, operation instance, task log, and stop commands live in [`references/dataops-flow-monitor.md`](references/dataops-flow-monitor.md).
318
158
 
319
- # View execution record details
320
- ae-cli dataops_flow +get_execute_record --spaceCode "${spaceCode}" --executeId "${executeId}"
321
-
322
- # View task logs (get bsTaskInstanceId and taskCode from DAG)
323
- ae-cli dataops_flow +get_task_instance_log --bsTaskInstanceId "${instanceId}" \
324
- --taskCode "${taskCode}" --limit 100
325
-
326
- # View task parameters
327
- ae-cli dataops_flow +get_task_params --spaceCode "${spaceCode}" \
328
- --flowCode "${flowCode}" --taskCode "${taskCode}"
329
-
330
- # Manually trigger execution
331
- ae-cli dataops_flow +execute_flow --spaceCode "${spaceCode}" \
332
- --flowCode "${flowCode}" --env "DEV" --confirmed true
333
-
334
- # Stop execution (irreversible)
335
- ae-cli dataops_flow +stop_flow --spaceCode "${spaceCode}" \
336
- --flowCode "${flowCode}" --executeId "${executeId}" --confirmed true
337
-
338
- # Update flow information
339
- ae-cli dataops_flow +update_flow --spaceCode "${spaceCode}" \
340
- --flowCode "${flowCode}" --flowName "New Name" --remark "New Remark" --confirmed true
341
- ```
342
-
343
- ### Command Quick Reference (Complete Flow Commands)
344
-
345
- | Command | Purpose | Key Flags |
346
- |---------|---------|-----------|
347
- | `+create_flow` | Create flow | `--spaceCode` `--flowName` `--remark` `--confirmed` |
348
- | `+create_task` | Create task node | `--spaceCode` `--flowCode` `--taskName` `--taskType` `--syncId` `--preTaskCode` `--confirmed` |
349
- | `+save_task_definition` | Save task definition | `--spaceCode` `--flowCode` `--taskCode` `--taskContentJson` `--failRetryTimes` `--failRetryInterval` `--timeout` `--confirmed` |
350
- | `+validate_task_sql` | Validate SQL | `--spaceCode` `--flowCode` `--taskCode` `--sql` `--repoCode` `--catalog` `--schema` |
351
- | `+add_task_relation` | Add dependency | `--spaceCode` `--flowCode` `--preTaskCode` `--taskCode` `--confirmed` |
352
- | `+save_schedule_config` | Configure schedule | `--spaceCode` `--flowCode` `--scheduled` `--scheduleType` `--cron` `--confirmed` |
353
- | `+get_schedule_config` | View schedule | `--spaceCode` `--flowCode` `--env` |
354
- | `+list_flows` | Search flows | `--spaceCode` `--keyword` |
355
- | `+get_flow_detail` | Flow information | `--spaceCode` `--flowCode` `--env` |
356
- | `+get_flow_dag` | Definition DAG | `--spaceCode` `--flowCode` `--env` |
357
- | `+update_flow` | Update flow | `--spaceCode` `--flowCode` `--flowName` `--remark` `--confirmed` |
358
- | `+execute_flow` | Manual execution | `--spaceCode` `--flowCode` `--env` `--confirmed` |
359
- | `+stop_flow` | Stop execution | `--spaceCode` `--flowCode` `--executeId` `--confirmed` |
360
- | `+release_flow` | Release to production | `--spaceCode` `--flowCode` `--confirmed` |
361
- | `+list_flow_instances` | Instance list | `--spaceCode` `--flowCode` `--env` `--size` |
362
- | `+get_execute_record` | Execution record | `--spaceCode` `--executeId` |
363
- | `+get_execute_dag` | Runtime DAG | `--spaceCode` `--executeId` |
364
- | `+get_task_instance_log` | Task logs | `--bsTaskInstanceId` `--taskCode` `--startOffset` `--limit` |
365
- | `+get_task_params` | Task parameters | `--spaceCode` `--flowCode` `--taskCode` `--env` |
366
-
367
- ### Parameter Notes
368
-
369
- - **Parameter reference**: Reference workspace parameters in tasks using `${paramKey}` (e.g., `${ws_run_date}`)
370
- - **env**: `DEV` (development, default) | `PROD` (production)
371
- - **Task status**: `success` / `failure` / `running` / `waiting`
372
- - **DAG difference**: `+get_flow_dag` returns static definition structure, `+get_execute_dag` returns runtime structure with execution status
373
- - **taskContentJson format** (varies by taskType):
374
- - TRINO_SQL: `{"sql":"SELECT ...","repoCode":"xxx","catalog":"hive","schema":"db"}`
375
- - SHELL: `{"script":"#!/bin/bash\n..."}`
159
+ Key constraints:
160
+ - Create and update tasks in DEV, preview/release before PROD execution.
161
+ - `+execute_flow` always runs PROD; it returns `executeId` for early stop.
162
+ - Prefer `flowInstanceId` from operations search for stable inspection and troubleshooting.
163
+ - Reference workspace parameters in task SQL as `${paramKey}`.
376
164
 
377
165
  ---
378
166
 
379
167
  ## 4. IDE SQL Queries
380
168
 
381
- > See `dataops-query` Skill for detailed step-by-step workflows.
382
-
383
- > **IDE only allows query operations (SELECT), prohibits creating/modifying/deleting data tables. Use `dataops_datatable` for table DDL operations.**
384
-
385
- ### Typical Flow: Browse Metadata → Search Tables → Execute Queries
386
-
387
- ```bash
388
- # List available repositories
389
- ae-cli dataops_ide +list_repos --spaceCode "${spaceCode}"
390
-
391
- # List all catalogs and their schemas in repository
392
- ae-cli dataops_ide +list_catalogs --spaceCode "${spaceCode}" --connType "SPACE" --repoCode "${repoCode}"
393
-
394
- # List tables/views under schema
395
- ae-cli dataops_ide +list_tables --spaceCode "${spaceCode}" --connType "SPACE" --repoCode "${repoCode}" \
396
- --catalog "${catalog}" --schema "${schema}" --isView false --pageNum 1 --pageSize 100
397
-
398
- # Get detailed table metadata (column definitions, DDL, partitions, row count)
399
- ae-cli dataops_ide +get_table_detail --spaceCode "${spaceCode}" --connType "SPACE" --repoCode "${repoCode}" \
400
- --catalog "${catalog}" --schema "${schema}" --tableName "${tableName}" \
401
- --engineType "TASK_ENGINE_TRINO" --isView false
402
-
403
- # Get schema statistics
404
- ae-cli dataops_ide +get_schema_info --spaceCode "${spaceCode}" --connType "SPACE" --repoCode "${repoCode}" \
405
- --catalog "${catalog}" --schema "${schema}"
406
-
407
- # Fuzzy search tables across catalog/schema
408
- ae-cli dataops_ide +search_tables --spaceCode "${spaceCode}" --connType "SPACE" --repoCode "${repoCode}" \
409
- --searchKey "user" --size 20
410
-
411
- # Fuzzy search column names across tables
412
- ae-cli dataops_ide +search_columns --spaceCode "${spaceCode}" --repoCode "${repoCode}" \
413
- --searchKey "user_id" --tables '[{"catalog":"hive","isView":false,"schema":"ws_default_dev","tableName":"dwd_user"}]' \
414
- --engineType "TASK_ENGINE_TRINO" --pageNum 1 --pageSize 100
415
-
416
- # Generate SELECT SQL based on table and column names
417
- ae-cli dataops_ide +generate_sql --spaceCode "${spaceCode}" --repoCode "${repoCode}" \
418
- --catalog "hive" --schema "ws_default_dev" --tableName "dwd_user" \
419
- --engineType "TASK_ENGINE_TRINO" --selectColumns '["user_id","user_name","age"]'
420
- ```
421
-
422
- ### SQL Async Query Flow (3 steps: Execute → Poll → Get Results)
423
-
424
- ```bash
425
- # Step 1: Execute SQL asynchronously (returns requestId)
426
- ae-cli dataops_ide +execute_sql --spaceCode "${spaceCode}" --repoCode "te_etl" \
427
- --sql "SELECT * FROM hive.ws_default_dev.dwd_user LIMIT 10" \
428
- --engineType "TASK_ENGINE_TRINO" --confirmed true
169
+ Detailed metadata browsing, SQL query, async download, and cancel workflows live in [`references/dataops-query.md`](references/dataops-query.md).
429
170
 
430
- # Step 2: Query execution progress (recommend 2-5 second polling)
431
- # state: QUEUED / RUNNING / FINISHED / FAILED / CANCELLED
432
- ae-cli dataops_ide +get_query_progress --requestId "${requestId}"
433
-
434
- # Step 3: Get results after state=FINISHED
435
- ae-cli dataops_ide +get_query_result --spaceCode "${spaceCode}" --connType "SPACE" \
436
- --repoCode "te_etl" --recordId "${recordId}"
437
-
438
- # (Optional) Cancel running query
439
- ae-cli dataops_ide +cancel_query --requestId "${requestId}" --confirmed true
440
- ```
441
-
442
- ### Command Quick Reference
443
-
444
- | Command | Purpose | Key Flags |
445
- |---------|---------|-----------|
446
- | `+list_repos` | List repositories | `--spaceCode` |
447
- | `+list_catalogs` | List catalog/schema | `--spaceCode` `--connType` `--repoCode` |
448
- | `+list_tables` | List tables | `--spaceCode` `--connType` `--repoCode` `--catalog` `--schema` `--isView` `--pageNum` `--pageSize` |
449
- | `+get_table_detail` | Table metadata | `--spaceCode` `--connType` `--repoCode` `--catalog` `--schema` `--tableName` `--engineType` `--isView` |
450
- | `+get_schema_info` | Schema statistics | `--spaceCode` `--connType` `--repoCode` `--catalog` `--schema` |
451
- | `+search_tables` | Fuzzy search tables | `--spaceCode` `--connType` `--repoCode` `--searchKey` `--size` |
452
- | `+search_columns` | Fuzzy search columns | `--spaceCode` `--repoCode` `--searchKey` `--tables` (JSON) `--engineType` `--pageNum` `--pageSize` |
453
- | `+generate_sql` | Generate SELECT | `--spaceCode` `--repoCode` `--catalog` `--schema` `--tableName` `--engineType` `--selectColumns` (JSON) |
454
- | `+execute_sql` | Execute SQL | `--spaceCode` `--repoCode` `--sql` `--engineType` `--confirmed` |
455
- | `+get_query_progress` | Query progress | `--requestId` |
456
- | `+get_query_result` | Get results | `--spaceCode` `--connType` `--repoCode` `--recordId` |
457
- | `+cancel_query` | Cancel query | `--requestId` `--confirmed` |
458
-
459
- ### Parameter Notes
460
-
461
- - **connType**: `SPACE` (data warehouse for daily queries, default) | `ETL` (ETL engine) | `APP` (app warehouse for external services)
462
- - **engineType**: `TASK_ENGINE_TRINO` (default, interactive queries) | `TASK_ENGINE_STARROCKS` (real-time analytics, high concurrency)
463
- - **isView**: `false` for physical tables | `true` for views
171
+ Key constraints:
172
+ - IDE is query-only; create/modify/delete tables with `dataops_datatable`.
173
+ - Prefer `dataops_datatable +dict_search_tables` for table discovery unless raw engine metadata or schema browsing is required.
174
+ - SQL query submission creates a download task; rows are not returned inline.
464
175
 
465
176
  ---
466
177
 
467
178
  ## 5. Data Integration
468
179
 
469
- > See `dataops-integration` Skill for detailed step-by-step workflows and JSON configuration templates.
470
-
471
- > **Sync solution creation involves complex JSON configurations (sourceConfig/sinkConfig/channelConfig/fieldsMapping), be sure to refer to complete templates in `dataops-integration` Skill.**
472
-
473
- ### Typical Flow: Create Datasource → Browse Source Tables → Create Sync Solution → Execute
474
-
475
- ```bash
476
- # View supported datasource component types
477
- ae-cli dataops_integration +list_datasource_components
478
-
479
- # Test datasource connection
480
- ae-cli dataops_integration +test_datasource_connect --spaceCode "${spaceCode}" \
481
- --componentName "MySQL" \
482
- --configValue '{"host":"localhost","port":3306,"username":"root","password":"xxx","database":"test"}'
483
-
484
- # Create datasource
485
- ae-cli dataops_integration +add_datasource --spaceCode "${spaceCode}" \
486
- --componentName "MySQL" --dataSourceName "Production MySQL" \
487
- --sharedConfig true \
488
- --envJsonList '[{"host":"localhost","port":3306,"username":"root","password":"xxx"}]' \
489
- --confirmed true
490
-
491
- # View all datasources in workspace
492
- ae-cli dataops_integration +list_space_datasources --spaceCode "${spaceCode}"
493
-
494
- # View datasources available for sync (categorized by source/sink)
495
- ae-cli dataops_integration +list_sync_datasources --spaceCode "${spaceCode}"
496
-
497
- # Browse source databases and tables
498
- ae-cli dataops_integration +list_datasource_databases --spaceCode "${spaceCode}" \
499
- --datasourceId "${datasourceId}"
500
- ae-cli dataops_integration +list_datasource_tables --spaceCode "${spaceCode}" \
501
- --datasourceId "${datasourceId}" --database "test"
502
-
503
- # Get table structure (column definitions, partitions)
504
- ae-cli dataops_integration +get_table_structure --spaceCode "${spaceCode}" \
505
- --datasourceId "${datasourceId}" --database "test" --tablePath "users"
506
-
507
- # Create sync solution (requires complete JSON configuration, see dataops-integration Skill)
508
- ae-cli dataops_integration +add_sync_solution --spaceCode "${spaceCode}" \
509
- --syncName "MySQL to Preset Repository Sync" \
510
- --srcComponent "MySQL" --srcDatasourceId "${mysqlDatasourceId}" \
511
- --sinkComponent "hive" --sinkDatasourceId "te_etl@TASK_ENGINE_TRINO" \
512
- --sourceConfig '...' --sinkConfig '...' --channelConfig '...' --fieldsMapping '...' \
513
- --confirmed true
514
-
515
- # Execute sync solution
516
- ae-cli dataops_integration +exec_sync_solution --spaceCode "${spaceCode}" \
517
- --syncId "${syncId}" --confirmed true
518
-
519
- # View execution history
520
- ae-cli dataops_integration +list_sync_exec_histories --spaceCode "${spaceCode}" \
521
- --syncId "${syncId}" --limit 20
522
-
523
- # View execution details
524
- ae-cli dataops_integration +get_sync_exec_info --spaceCode "${spaceCode}" \
525
- --syncId "${syncId}" --taskId "${taskId}"
526
-
527
- # Stop sync execution
528
- ae-cli dataops_integration +stop_sync_solution --spaceCode "${spaceCode}" \
529
- --syncId "${syncId}" --taskId "${taskId}" --confirmed true
530
- ```
531
-
532
- ### JSON Configuration Key Points
533
-
534
- When creating sync solutions, the following JSON configurations must be strictly generated according to templates:
535
-
536
- | Configuration | Description |
537
- |---------------|-------------|
538
- | **sourceConfig** | Source connection information (component, datasource ID, database, table) |
539
- | **sinkConfig** | Target configuration (preset repository database is empty, non-preset repository database is required) |
540
- | **channelConfig** | Channel configuration (must include gatewayConfig when involving preset repository) |
541
- | **fieldsMapping** | Bidirectional field mapping (each field must include manual/partitionKey/primaryKey/shardingKey/sortingKey/upsertKey) |
542
-
543
- > See `dataops-integration` Skill for complete JSON templates and conditional required parameters for components like MongoDB.
544
-
545
- ### Command Quick Reference
546
-
547
- | Command | Purpose | Key Flags |
548
- |---------|---------|-----------|
549
- | `+list_datasource_components` | Supported components | — |
550
- | `+list_space_datasources` | Workspace datasources | `--spaceCode` `--componentName` `--dataSourceName` |
551
- | `+add_datasource` | Create datasource | `--spaceCode` `--componentName` `--dataSourceName` `--sharedConfig` `--envJsonList` `--confirmed` |
552
- | `+test_datasource_connect` | Test connection | `--spaceCode` `--componentName` `--configValue` |
553
- | `+modify_datasource` | Modify datasource | `--spaceCode` `--datasourceId` `--confirmed` |
554
- | `+online_datasource` | Online datasource | `--spaceCode` `--datasourceId` `--confirmed` |
555
- | `+list_datasource_databases` | List databases | `--spaceCode` `--datasourceId` |
556
- | `+list_datasource_tables` | List tables | `--spaceCode` `--datasourceId` `--database` |
557
- | `+get_table_structure` | Table structure | `--spaceCode` `--datasourceId` `--database` `--tablePath` |
558
- | `+list_sync_datasources` | Sync datasources | `--spaceCode` |
559
- | `+list_sync_solutions` | Sync solution list | `--spaceCode` |
560
- | `+get_sync_detail` | Sync solution details | `--spaceCode` `--syncId` |
561
- | `+add_sync_solution` | Create sync solution | `--spaceCode` `--syncName` `--srcComponent` `--srcDatasourceId` `--sinkComponent` `--sinkDatasourceId` `--sourceConfig` `--sinkConfig` `--channelConfig` `--fieldsMapping` `--confirmed` |
562
- | `+save_sync_solution` | Update sync solution | `--spaceCode` `--syncId` `--confirmed` |
563
- | `+exec_sync_solution` | Execute sync | `--spaceCode` `--syncId` `--confirmed` |
564
- | `+list_sync_exec_histories` | Execution history | `--spaceCode` `--syncId` `--execType` `--limit` |
565
- | `+get_sync_exec_info` | Execution details | `--spaceCode` `--syncId` `--taskId` |
566
- | `+stop_sync_solution` | Stop sync | `--spaceCode` `--syncId` `--taskId` `--confirmed` |
567
- | `+execute_sql` | External DDL execution | `--spaceCode` `--datasourceId` `--database` `--sql` `--confirmed` |
568
- | `+validate_sql` | Validate SQL | `--spaceCode` `--datasourceId` `--database` `--sql` |
569
-
570
- ---
571
-
572
- ## 6. Operations and Backfill Management
573
-
574
- > See `dataops-operations` Skill for detailed step-by-step workflows.
575
-
576
- > **Operations commands use flowInstanceId (not executeId), obtained via `+search_flow_instances`.**
577
-
578
- ### Typical Flow A: Operations Instance Query and Operations
579
-
580
- ```bash
581
- # Search flow instances (supports filtering by status/owner/time)
582
- ae-cli dataops_operations +search_flow_instances --spaceCode "${spaceCode}" \
583
- --pageNum 1 --pageSize 20
584
-
585
- # View all task nodes and execution status under instance
586
- ae-cli dataops_operations +list_flow_task_instances --spaceCode "${spaceCode}" \
587
- --flowInstanceId "${flowInstanceId}"
588
-
589
- # Get task node definition details
590
- ae-cli dataops_operations +get_task_definition --spaceCode "${spaceCode}" \
591
- --flowInstanceId "${flowInstanceId}" --taskCode "${taskCode}"
592
-
593
- # Rerun failed flow instance (continue from failed node)
594
- ae-cli dataops_operations +rerun_flow_instance --spaceCode "${spaceCode}" \
595
- --flowInstanceId "${flowInstanceId}" --confirmed true
596
-
597
- # Stop running instance
598
- ae-cli dataops_operations +stop_flow_instance --spaceCode "${spaceCode}" \
599
- --flowInstanceId "${flowInstanceId}" --confirmed true
600
-
601
- # Control instance running status (pause/force pause/resume)
602
- ae-cli dataops_operations +control_flow_instance --spaceCode "${spaceCode}" \
603
- --flowInstanceId "${flowInstanceId}" --action "PAUSE" --confirmed true
604
- ```
605
-
606
- ### Typical Flow B: Backfill Task Management
607
-
608
- ```bash
609
- # Query backfill task list
610
- ae-cli dataops_operations +list_flow_jobs --spaceCode "${spaceCode}" \
611
- --pageNum 1 --pageSize 20
612
-
613
- # Get backfill task details (configuration, date range, concurrency settings)
614
- ae-cli dataops_operations +get_flow_job_detail --spaceCode "${spaceCode}" \
615
- --jobId "${jobId}"
616
-
617
- # Get backfill task execution plan list (status for each date)
618
- ae-cli dataops_operations +list_flow_job_plans --spaceCode "${spaceCode}" \
619
- --jobId "${jobId}"
620
-
621
- # Stop running backfill task
622
- ae-cli dataops_operations +stop_flow_job --spaceCode "${spaceCode}" \
623
- --jobId "${jobId}" --confirmed true
624
- ```
625
-
626
- ### Typical Flow C: Task Node Instance Query
627
-
628
- ```bash
629
- # Search task node instances (supports filtering by status/type/time)
630
- ae-cli dataops_operations +search_task_instances --spaceCode "${spaceCode}" \
631
- --pageNum 1 --pageSize 20
632
- ```
180
+ Detailed datasource, metadata browsing, sync solution, execution, and monitoring workflows live in [`references/dataops-integration.md`](references/dataops-integration.md).
633
181
 
634
- ### Command Quick Reference
635
-
636
- | Command | Purpose | Key Flags |
637
- |---------|---------|-----------|
638
- | `+search_flow_instances` | Search flow instances | `--spaceCode` `--pageNum` `--pageSize` |
639
- | `+list_flow_task_instances` | Instance task nodes | `--spaceCode` `--flowInstanceId` |
640
- | `+get_task_definition` | Task node definition | `--spaceCode` `--flowInstanceId` `--taskCode` |
641
- | `+rerun_flow_instance` | Rerun instance | `--spaceCode` `--flowInstanceId` `--confirmed` |
642
- | `+stop_flow_instance` | Stop instance | `--spaceCode` `--flowInstanceId` `--confirmed` |
643
- | `+control_flow_instance` | Control instance status | `--spaceCode` `--flowInstanceId` `--action` `--confirmed` |
644
- | `+search_task_instances` | Search task instances | `--spaceCode` `--pageNum` `--pageSize` |
645
- | `+list_flow_jobs` | Backfill task list | `--spaceCode` `--pageNum` `--pageSize` |
646
- | `+get_flow_job_detail` | Backfill task details | `--spaceCode` `--jobId` |
647
- | `+list_flow_job_plans` | Backfill execution plan | `--spaceCode` `--jobId` |
648
- | `+stop_flow_job` | Stop backfill task | `--spaceCode` `--jobId` `--confirmed` |
649
-
650
- ### Parameter Notes
651
-
652
- - **action**: `PAUSE` (pause) | `FORCE_PAUSE` (force pause) | `RESUME` (resume)
653
- - **Instance status**: `RUNNING` / `SUCCESS` / `FAILURE` / `WAITING` / `STOPPED`
654
- - **flowInstanceId vs executeId**: Operations tools use flowInstanceId, flow tools use executeId, **not interchangeable**
182
+ Key constraints:
183
+ - Generate `sourceConfig`, `sinkConfig`, `channelConfig`, and `fieldsMapping` from the reference templates; do not invent keys.
184
+ - `+save_sync_solution` is not a partial patch: call `+get_sync_detail --withParams true` first, then submit complete configs.
185
+ - Preset repository sync uses `te_etl@TASK_ENGINE_TRINO` and requires gateway configuration.
186
+ - Use `+list_sync_runs` to get `taskId` before stopping a running sync.
655
187
 
656
188
  ---
657
189