@thinkingai/ae-cli 6.0.40 → 6.0.41
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 +0 -2
- package/README.zh.md +0 -2
- package/dist/{auth-NN55553T.js → auth-GBMV6TEJ.js} +2 -2
- package/dist/{auth-GDV3H5I4.js → auth-NDSXE54J.js} +4 -4
- package/dist/{capability-TPORIKRQ.js → capability-CETVHGXF.js} +25 -15
- package/dist/{capability-VQNC5CF7.js → capability-ZSQBMNOE.js} +25 -15
- package/dist/{chunk-GJJA4CQZ.js → chunk-3FY3RJ26.js} +0 -4
- package/dist/chunk-4E3DB4MM.js +556 -0
- package/dist/{chunk-GS2P7LFD.js → chunk-5XUSIK27.js} +2 -2
- package/dist/{chunk-VTXHDCBW.js → chunk-AFXA7BRK.js} +2 -2
- package/dist/{chunk-7KQWSBSL.js → chunk-FNZA5RZA.js} +8 -8
- package/dist/{chunk-TS6BUGUY.js → chunk-J2N4PB56.js} +8 -8
- package/dist/{chunk-RBNKI5ZW.js → chunk-JUW4AJXN.js} +2 -2
- package/dist/{chunk-Z3OXWCIA.js → chunk-S5NTSDBS.js} +2 -2
- package/dist/{chunk-VKD5WQKN.js → chunk-VLWOLBGZ.js} +142 -24
- package/dist/chunk-WANVG6SY.js +556 -0
- package/dist/{chunk-YTG6Q75E.js → chunk-WZRX4KOH.js} +25 -3
- package/dist/{chunk-YV52FB5G.js → chunk-ZQKDZXDO.js} +1 -1
- package/dist/{cli-token-GL5MS5FK.js → cli-token-4UPER74P.js} +3 -3
- package/dist/{chunk-6A2FUCIS.js → client-L2YDMHQ6.js} +5 -6
- package/dist/{config-4VZNLBKF.js → config-OL2LWGBV.js} +4 -33
- package/dist/index.js +31 -44
- package/dist/{memory-RWJW4XFO.js → memory-MUP7PPL7.js} +4 -4
- package/dist/{memory-VO2ZJCRT.js → memory-U4O5PMXH.js} +4 -4
- package/dist/{metadata-YGTHR2XJ.js → metadata-UKZDNLLQ.js} +21 -11
- package/dist/{metadata-ZRN2GHPN.js → metadata-XXMJFN2M.js} +21 -11
- package/dist/{model-CLUIK3K5.js → model-JTUEO5M4.js} +2 -2
- package/dist/{sync-3REDHGY6.js → sync-MOSFNBVR.js} +5 -5
- package/dist/{te-agent-XNPELAKX.js → te-agent-IFKZDHZI.js} +25 -18
- package/dist/{te-analysis-GJI5FZUL.js → te-analysis-3QLLS35K.js} +1231 -456
- package/dist/{te-analysis-N2BRDJZ5.js → te-analysis-YSK2DBVL.js} +1231 -456
- package/dist/{te-community-SQXKE5OO.js → te-community-HNKVTERD.js} +207 -12
- package/dist/{te-community-TYSNU3NQ.js → te-community-IWE5B7W6.js} +208 -12
- package/dist/{te-dataops-OWIADNSM.js → te-dataops-KQPYNAE3.js} +262 -145
- package/dist/{te-dataops-5TM7WZDI.js → te-dataops-KXCEB4CS.js} +262 -145
- package/dist/{te-engage-L72HWRGO.js → te-engage-6RNGK5GH.js} +566 -17
- package/dist/{te-engage-QWM4GFS7.js → te-engage-IRMHTSQK.js} +566 -17
- package/dist/{te-kb-VRMEY3D4.js → te-kb-OIH3T6CS.js} +4 -4
- package/dist/{te-system-XGS5EQIQ.js → te-system-AZ3URMUO.js} +515 -11
- package/dist/{te-team-BZRDV2CM.js → te-team-GZPU6UWA.js} +5 -5
- package/dist/{update-HEDXGOJH.js → update-TOBFXF2V.js} +4 -4
- package/package.json +5 -5
- package/skills/ae-agent/SKILL.md +3 -3
- package/skills/ae-agent/references/list-skill-references.md +4 -4
- package/skills/ae-agent/references/read-skill-reference.md +10 -7
- package/skills/ae-agent/references/upload-skill-reference.md +11 -9
- package/skills/ae-analysis/SKILL.md +15 -12
- package/skills/ae-analysis/metadata_resolution.md +150 -0
- package/skills/ae-analysis/references/adhoc_export.md +17 -2
- package/skills/ae-analysis/references/adhoc_run.md +12 -8
- package/skills/ae-analysis/references/ai_models.md +31 -5
- package/skills/ae-analysis/references/analysis_data_retrieval.md +104 -16
- package/skills/ae-analysis/references/analysis_drilldown_contract.md +4 -4
- package/skills/ae-analysis/references/analysis_gateway_assets.md +12 -10
- package/skills/ae-analysis/references/artifact_download.md +4 -3
- package/skills/ae-analysis/references/asset_abnormal_list.md +5 -3
- package/skills/ae-analysis/references/asset_authentication_list.md +5 -3
- package/skills/ae-analysis/references/asset_search.md +5 -3
- package/skills/ae-analysis/references/bi_panel_page_data_export.md +1 -1
- package/skills/ae-analysis/references/bi_panel_page_data_run.md +4 -4
- package/skills/ae-analysis/references/catalog_export.md +28 -0
- package/skills/ae-analysis/references/catalog_list.md +44 -0
- package/skills/ae-analysis/references/command_index.md +72 -63
- package/skills/ae-analysis/references/dashboard_report_data_run.md +11 -4
- package/skills/ae-analysis/references/datatable_version_list.md +5 -3
- package/skills/ae-analysis/references/drilldown_entities_run.md +4 -4
- package/skills/ae-analysis/references/drilldown_events_run.md +2 -2
- package/skills/ae-analysis/references/drilldown_user_events_export.md +1 -1
- package/skills/ae-analysis/references/drilldown_user_events_run.md +2 -2
- package/skills/ae-analysis/references/entity_detail_run.md +4 -4
- package/skills/ae-analysis/references/entity_id_import_options.md +1 -1
- package/skills/ae-analysis/references/event_detail_run.md +4 -4
- package/skills/ae-analysis/references/event_export.md +21 -0
- package/skills/ae-analysis/references/event_list.md +7 -6
- package/skills/ae-analysis/references/exchange_rule_list.md +5 -3
- package/skills/ae-analysis/references/history_tag_data_drilldown_export.md +4 -2
- package/skills/ae-analysis/references/history_tag_data_drilldown_run.md +2 -2
- package/skills/ae-analysis/references/history_tag_data_run.md +2 -2
- package/skills/ae-analysis/references/metric_export.md +21 -0
- package/skills/ae-analysis/references/metric_list.md +8 -7
- package/skills/ae-analysis/references/property_export.md +21 -0
- package/skills/ae-analysis/references/property_list.md +9 -8
- package/skills/ae-analysis/references/query_context_get.md +20 -0
- package/skills/ae-analysis/references/query_create_result_cluster.md +1 -1
- package/skills/ae-analysis/references/report_change_log_list.md +1 -1
- package/skills/ae-analysis/references/report_create.md +3 -3
- package/skills/ae-analysis/references/report_data_run.md +8 -8
- package/skills/ae-analysis/references/report_update.md +3 -3
- package/skills/ae-analysis/references/report_version_rollback.md +1 -1
- package/skills/ae-analysis/references/rule_list.md +6 -4
- package/skills/ae-analysis/references/run_inspect.md +8 -5
- package/skills/ae-analysis/references/run_wait.md +37 -0
- package/skills/ae-analysis/references/user_cluster_export.md +13 -0
- package/skills/ae-analysis/references/user_cluster_list.md +6 -2
- package/skills/ae-analysis/references/user_cluster_member_export.md +5 -3
- package/skills/ae-analysis/references/user_cluster_member_list.md +4 -4
- package/skills/ae-analysis/references/user_tag_export.md +13 -0
- package/skills/ae-analysis/references/user_tag_list.md +6 -2
- package/skills/ae-analysis/references/user_tag_member_export.md +5 -3
- package/skills/ae-analysis/references/user_tag_member_list.md +4 -4
- package/skills/ae-analysis/references/virtual_property_create.md +2 -2
- package/skills/ae-community/SKILL.md +2 -2
- package/skills/ae-dataops/SKILL.md +4 -3
- package/skills/ae-dataops/references/dataops-flow-create.md +47 -3
- package/skills/ae-engage/SKILL.md +46 -6
- package/skills/ae-engage/references/build-task-save-guide.md +12 -0
- package/skills/ae-engage/references/cancel-query-run.md +31 -0
- package/skills/ae-engage/references/config-item-analysis-report.md +14 -1
- package/skills/ae-engage/references/config-item-strategy-comparison.md +11 -1
- package/skills/ae-engage/references/config-item-trigger-report.md +15 -1
- package/skills/ae-engage/references/flow-metric-detail-report.md +134 -0
- package/skills/ae-engage/references/flow-metric-update.md +77 -0
- package/skills/ae-engage/references/flow-metric-user.md +118 -0
- package/skills/ae-engage/references/flow-node-metric-user.md +122 -0
- package/skills/ae-engage/references/flow-node-user.md +122 -0
- package/skills/ae-engage/references/push-record-query.md +32 -1
- package/skills/ae-engage/references/save-task.md +9 -0
- package/skills/ae-engage/references/task-data-detail.md +9 -2
- package/skills/ae-engage/references/task-metric-detail.md +9 -2
- package/skills/ae-engage/references/task-submit-approval.md +3 -0
- package/skills/ae-metadata/SKILL.md +2 -1
- package/skills/ae-metadata/references/metadata_data_table_download.md +10 -2
- package/skills/ae-metadata/references/metadata_data_table_list.md +5 -2
- package/skills/ae-system/SKILL.md +66 -3
- package/dist/chunk-DT6Y3TD7.js +0 -232
- package/dist/chunk-MVDZ7DBQ.js +0 -231
- package/dist/chunk-NBPKWKRA.js +0 -51
- package/dist/client-DAIPF7XN.js +0 -23
- package/dist/raw-52B4UKO4.js +0 -71
- package/dist/te-meta-53BVXPFI.js +0 -95
- package/dist/te-meta-TOCBPBXI.js +0 -95
|
@@ -224,6 +224,12 @@ Use it to understand what must appear in:
|
|
|
224
224
|
- `controlConfig`
|
|
225
225
|
- `expConfig` when experiment mode is enabled
|
|
226
226
|
|
|
227
|
+
When experiment mode is enabled (`context.enableExp=true` or draft `expConfig.enableExp=true`):
|
|
228
|
+
|
|
229
|
+
- capability `engage-task.task.build-save-guide` enriches `handoff.reqTemplate.channelConfig.groupContentList`
|
|
230
|
+
so each entry carries `expGroupName`, `expGroupType`, `percentageInExperiment`, `order`, and `contentList`
|
|
231
|
+
- do not drop those association fields when filling content; they must stay aligned with `expConfig.expGroupList`
|
|
232
|
+
|
|
227
233
|
### 4.8 `fieldRules`
|
|
228
234
|
|
|
229
235
|
This is the most important construction section.
|
|
@@ -274,6 +280,10 @@ The guide treats the A rule as a discriminated envelope:
|
|
|
274
280
|
- `eventTriggerType=2`: at least two ordered steps with `eventDefinition` and `hasDone`
|
|
275
281
|
- `eventTriggerType=3`: client-side count/eq/1 events with `eventTriggerCaliberType`
|
|
276
282
|
|
|
283
|
+
Every event-triggered task A rule must include `periodTimeSymbol`. Use `TS01` for daily,
|
|
284
|
+
`TS02` for the complete configured period, `TS03` for weekly, or `TS04` for monthly.
|
|
285
|
+
Do not omit this field even when `periodStart` and `periodEnd` are present.
|
|
286
|
+
|
|
277
287
|
Do not copy the accumulated example and only change `eventTriggerType`. Hermes rejects a final QP
|
|
278
288
|
whose event structure does not match its envelope.
|
|
279
289
|
|
|
@@ -299,6 +309,8 @@ Important fields:
|
|
|
299
309
|
- `reqTemplate`
|
|
300
310
|
- a scenario-aware grouped request template
|
|
301
311
|
- use it as a starting point, not as unquestioned final truth
|
|
312
|
+
- for experiment tasks, keep `groupContentList` association fields from the template;
|
|
313
|
+
only replace `contentList[].content` with real channel content
|
|
302
314
|
- `readyToSubmit`
|
|
303
315
|
- `true` means the current scenario or draft has no blocking placeholders
|
|
304
316
|
- `blockingPlaceholders`
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Cancel a running Engage query or export
|
|
2
|
+
|
|
3
|
+
Cancel asynchronous Engage work by the Capability Gateway run ID.
|
|
4
|
+
|
|
5
|
+
Mapped command:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
ae-cli engage-query query cancel --run-id <run_id>
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Mapped capability: `engage-query.query.cancel`
|
|
12
|
+
|
|
13
|
+
## Input
|
|
14
|
+
|
|
15
|
+
| Field | Type | Required | Description |
|
|
16
|
+
|------|------|------|------|
|
|
17
|
+
| `run_id` | string | Yes | Run ID returned by an asynchronous query or export capability |
|
|
18
|
+
| `reason` | string | No | Optional cancellation reason |
|
|
19
|
+
|
|
20
|
+
## Safety Constraints
|
|
21
|
+
|
|
22
|
+
This command is a **write operation**. Use only the `run_id` returned by the asynchronous
|
|
23
|
+
query/export lifecycle; a report `request_id` is not accepted.
|
|
24
|
+
|
|
25
|
+
## Example
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
ae-cli engage-query query cancel \
|
|
29
|
+
--run-id run_123 \
|
|
30
|
+
--reason "No longer needed"
|
|
31
|
+
```
|
|
@@ -8,7 +8,20 @@ Required input: `project_id`, `config_id`, `start_time`, `end_time`. Optional in
|
|
|
8
8
|
`template_id_list`, `strategy_id_list`, `show_time_zone`. `template_id_list` and `strategy_id_list`
|
|
9
9
|
are mutually exclusive.
|
|
10
10
|
|
|
11
|
+
## Input contract
|
|
12
|
+
|
|
13
|
+
| Field | JSON type | Required | Rules |
|
|
14
|
+
| --- | --- | --- | --- |
|
|
15
|
+
| `project_id` | integer | Yes | Positive project ID. |
|
|
16
|
+
| `config_id` | string | Yes | Config item ID. |
|
|
17
|
+
| `start_time` | string | Yes | Date in `yyyy-MM-dd` format. |
|
|
18
|
+
| `end_time` | string | Yes | Date in `yyyy-MM-dd` format; must not be earlier than `start_time`. |
|
|
19
|
+
| `request_id` | string | No | Request identifier for continuation or cancellation. |
|
|
20
|
+
| `template_id_list` | array of strings | No | Cannot be used together with `strategy_id_list`. |
|
|
21
|
+
| `strategy_id_list` | array of strings | No | Cannot be used together with `template_id_list`. |
|
|
22
|
+
| `show_time_zone` | number | No | Hour offset from `-12.0` through `14.0`; use `8`, not the string `"8"`. |
|
|
23
|
+
|
|
11
24
|
```bash
|
|
12
25
|
ae-cli capability run engage-scene.report.config-item-analysis \
|
|
13
|
-
--input '{"project_id":1,"config_id":"cfg_123","start_time":"2026-04-01","end_time":"2026-04-07"}'
|
|
26
|
+
--input '{"project_id":1,"config_id":"cfg_123","start_time":"2026-04-01","end_time":"2026-04-07","show_time_zone":8}'
|
|
14
27
|
```
|
|
@@ -7,7 +7,17 @@ Mapped command: `ae-cli capability run engage-scene.report.strategy-comparison -
|
|
|
7
7
|
Required input: `project_id`, `config_id`, `strategy_id_list` with at least two IDs. Optional input:
|
|
8
8
|
`request_id`, `show_time_zone`.
|
|
9
9
|
|
|
10
|
+
## Input contract
|
|
11
|
+
|
|
12
|
+
| Field | JSON type | Required | Rules |
|
|
13
|
+
| --- | --- | --- | --- |
|
|
14
|
+
| `project_id` | integer | Yes | Positive project ID. |
|
|
15
|
+
| `config_id` | string | Yes | Config item ID. |
|
|
16
|
+
| `strategy_id_list` | array of strings | Yes | Must contain at least two strategy IDs. |
|
|
17
|
+
| `request_id` | string | No | Request identifier for continuation or cancellation. |
|
|
18
|
+
| `show_time_zone` | number | No | Hour offset from `-12.0` through `14.0`; use `8`, not the string `"8"`. |
|
|
19
|
+
|
|
10
20
|
```bash
|
|
11
21
|
ae-cli capability run engage-scene.report.strategy-comparison \
|
|
12
|
-
--input '{"project_id":1,"config_id":"cfg_123","strategy_id_list":["strategy_a","strategy_b"]}'
|
|
22
|
+
--input '{"project_id":1,"config_id":"cfg_123","strategy_id_list":["strategy_a","strategy_b"],"show_time_zone":8}'
|
|
13
23
|
```
|
|
@@ -8,7 +8,21 @@ Required input: `project_id`, `config_id`, `start_time`, `end_time`. Optional in
|
|
|
8
8
|
`template_id_list`, `strategy_id_list`, `show_time_zone`, `analyze_report_internal_query`.
|
|
9
9
|
`template_id_list` and `strategy_id_list` are mutually exclusive.
|
|
10
10
|
|
|
11
|
+
## Input contract
|
|
12
|
+
|
|
13
|
+
| Field | JSON type | Required | Rules |
|
|
14
|
+
| --- | --- | --- | --- |
|
|
15
|
+
| `project_id` | integer | Yes | Positive project ID. |
|
|
16
|
+
| `config_id` | string | Yes | Config item ID. |
|
|
17
|
+
| `start_time` | string | Yes | Date in `yyyy-MM-dd` format. |
|
|
18
|
+
| `end_time` | string | Yes | Date in `yyyy-MM-dd` format; must not be earlier than `start_time`. |
|
|
19
|
+
| `request_id` | string | No | Request identifier for continuation or cancellation. |
|
|
20
|
+
| `template_id_list` | array of strings | No | Cannot be used together with `strategy_id_list`. |
|
|
21
|
+
| `strategy_id_list` | array of strings | No | Cannot be used together with `template_id_list`. |
|
|
22
|
+
| `show_time_zone` | number | No | Hour offset from `-12.0` through `14.0`; use `8`, not the string `"8"`. |
|
|
23
|
+
| `analyze_report_internal_query` | boolean | No | Use `true` or `false`, not a quoted string. |
|
|
24
|
+
|
|
11
25
|
```bash
|
|
12
26
|
ae-cli capability run engage-scene.report.config-item-trigger \
|
|
13
|
-
--input '{"project_id":1,"config_id":"cfg_123","start_time":"2026-04-01","end_time":"2026-04-07"}'
|
|
27
|
+
--input '{"project_id":1,"config_id":"cfg_123","start_time":"2026-04-01","end_time":"2026-04-07","show_time_zone":8}'
|
|
14
28
|
```
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Flow metric-detail report
|
|
2
|
+
|
|
3
|
+
Use this reference when the user asks for a flow node metric-detail report, or wants to export the detailed metric table behind a node on the flow canvas.
|
|
4
|
+
|
|
5
|
+
Mapped CLI commands:
|
|
6
|
+
|
|
7
|
+
- `ae-cli engage-flow report metric-detail run`
|
|
8
|
+
- `ae-cli engage-flow report metric-detail export`
|
|
9
|
+
|
|
10
|
+
Mapped capabilities:
|
|
11
|
+
|
|
12
|
+
- `engage-flow.report.metric-detail.run`
|
|
13
|
+
- `engage-flow.report.metric-detail.export`
|
|
14
|
+
|
|
15
|
+
## Choose the command
|
|
16
|
+
|
|
17
|
+
- Use `run` for quick inline inspection. It returns the original Hermes report object under `report`.
|
|
18
|
+
- Use `export` when the user needs a downloadable, flattened artifact.
|
|
19
|
+
- Use `--report-mode node` or omit it for normal nodes.
|
|
20
|
+
- Use `--report-mode ab` for AB split node metric details.
|
|
21
|
+
|
|
22
|
+
Do not use the older generic capability form unless the structured command is unavailable.
|
|
23
|
+
|
|
24
|
+
## Required input
|
|
25
|
+
|
|
26
|
+
- `--project-id`
|
|
27
|
+
- one of `--flow-id` or `--flow-uuid`
|
|
28
|
+
- `--node-uuid`
|
|
29
|
+
- `--start-time yyyy-MM-dd`
|
|
30
|
+
- `--end-time yyyy-MM-dd`
|
|
31
|
+
|
|
32
|
+
## Optional input
|
|
33
|
+
|
|
34
|
+
- `--report-mode node|ab` (default: `node`)
|
|
35
|
+
- `--branch-id`
|
|
36
|
+
- `--indicator-name` for normal node metric selection
|
|
37
|
+
- `--indicators-uuid` for AB metric selection
|
|
38
|
+
- `--data-dim-type uv|pv`
|
|
39
|
+
- `--push-language-code`
|
|
40
|
+
- `--show-time-zone`
|
|
41
|
+
- `--request-id`
|
|
42
|
+
- `--timeout-seconds`
|
|
43
|
+
- `run` only: `--limit` is accepted for command consistency, but metric-detail reports are not row-limited by Hermes
|
|
44
|
+
- `export` only: `--artifact-format csv|jsonl` (default: `jsonl`)
|
|
45
|
+
|
|
46
|
+
## Parameter guidance
|
|
47
|
+
|
|
48
|
+
- Prefer `flow_uuid` when the user is talking about a specific flow version; prefer `flow_id` when they mean the current logical flow.
|
|
49
|
+
- `node_uuid` must be the canvas node UUID, not the node type.
|
|
50
|
+
- Dates are inclusive report dates and must be in `yyyy-MM-dd`.
|
|
51
|
+
- For AB mode, pass the AB node UUID and usually `--indicators-uuid`; `--branch-id` is optional and only use it when the selected report cell is branch-specific.
|
|
52
|
+
- If both `flow-id` and `flow-uuid` are supplied, Hermes checks they match.
|
|
53
|
+
|
|
54
|
+
## Examples
|
|
55
|
+
|
|
56
|
+
Inline normal node metric detail:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
ae-cli engage-flow report metric-detail run \
|
|
60
|
+
--project-id 1 \
|
|
61
|
+
--flow-id flow_id_123 \
|
|
62
|
+
--node-uuid node_uuid_123 \
|
|
63
|
+
--start-time 2026-04-01 \
|
|
64
|
+
--end-time 2026-04-07 \
|
|
65
|
+
--timeout-seconds 120
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Export normal node metric detail as CSV:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
ae-cli engage-flow report metric-detail export \
|
|
72
|
+
--project-id 1 \
|
|
73
|
+
--flow-id flow_id_123 \
|
|
74
|
+
--node-uuid node_uuid_123 \
|
|
75
|
+
--start-time 2026-04-01 \
|
|
76
|
+
--end-time 2026-04-07 \
|
|
77
|
+
--artifact-format csv \
|
|
78
|
+
--timeout-seconds 21600
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Inline AB node metric detail:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
ae-cli engage-flow report metric-detail run \
|
|
85
|
+
--project-id 1 \
|
|
86
|
+
--flow-id flow_id_123 \
|
|
87
|
+
--node-uuid ab_node_uuid_123 \
|
|
88
|
+
--report-mode ab \
|
|
89
|
+
--indicators-uuid indicator_uuid_123 \
|
|
90
|
+
--start-time 2026-04-01 \
|
|
91
|
+
--end-time 2026-04-07
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Export lifecycle
|
|
95
|
+
|
|
96
|
+
`export` returns `run_id` and `artifact_id`. Poll and download with:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
ae-cli engage-query run inspect --run-id <run_id>
|
|
100
|
+
ae-cli engage-query artifact download \
|
|
101
|
+
--run-id <run_id> \
|
|
102
|
+
--artifact-id <artifact_id> \
|
|
103
|
+
--output ./flow-metric-detail.csv.gz
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Downloaded artifacts are gzip-compressed; keep the `.gz` suffix. Cancel running async work with:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
ae-cli engage-query query cancel --run-id <run_id>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Output rows
|
|
113
|
+
|
|
114
|
+
Normal node export rows:
|
|
115
|
+
|
|
116
|
+
- `time`
|
|
117
|
+
- `indicator`
|
|
118
|
+
- `value_index`
|
|
119
|
+
- `value`
|
|
120
|
+
|
|
121
|
+
AB node export rows:
|
|
122
|
+
|
|
123
|
+
- `time`
|
|
124
|
+
- `branch_id`
|
|
125
|
+
- `branch_name`
|
|
126
|
+
- `indicator`
|
|
127
|
+
- `value`
|
|
128
|
+
- `total`
|
|
129
|
+
|
|
130
|
+
## Common mistakes
|
|
131
|
+
|
|
132
|
+
- Do not pass `report-mode ab` for a normal node; Hermes will call the AB report backend.
|
|
133
|
+
- Do not use `indicator_name` and `indicators_uuid` interchangeably: normal node uses `indicator_name`, AB mode usually uses `indicators_uuid`.
|
|
134
|
+
- Do not save a gzip artifact as `.csv` or `.jsonl`; use `.csv.gz` or `.jsonl.gz`.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# Flow metric update
|
|
2
|
+
|
|
3
|
+
Use this reference when the user asks to configure, replace, or save effect metric settings for a flow canvas.
|
|
4
|
+
|
|
5
|
+
Mapped CLI command:
|
|
6
|
+
|
|
7
|
+
- `ae-cli engage-flow metric update`
|
|
8
|
+
|
|
9
|
+
Mapped capability:
|
|
10
|
+
|
|
11
|
+
- `engage-flow.metric.update`
|
|
12
|
+
|
|
13
|
+
## Safety
|
|
14
|
+
|
|
15
|
+
This is a write command. Only run it when the user explicitly asks to change a flow's metric configuration. Use `--dry-run` first when the final `metric_map` was assembled by an agent.
|
|
16
|
+
|
|
17
|
+
The backend uses a clean-and-insert update model: omitted existing metric settings may be deleted. Treat `metric_map` as the complete desired metric configuration for the flow, not a partial patch.
|
|
18
|
+
|
|
19
|
+
## Required input
|
|
20
|
+
|
|
21
|
+
- `--project-id`
|
|
22
|
+
- `--flow-id`
|
|
23
|
+
- `--metric-map '<metric_map_json>'`
|
|
24
|
+
|
|
25
|
+
## Parameter guidance
|
|
26
|
+
|
|
27
|
+
- `flow_id` is the logical flow ID used by the flow canvas APIs.
|
|
28
|
+
- `metric_map` is a JSON object keyed by metric target-user group. Valid first-level keys are exactly:
|
|
29
|
+
- `trigger`
|
|
30
|
+
- `view`
|
|
31
|
+
- `click`
|
|
32
|
+
- `ab_test`
|
|
33
|
+
- Preserve first-level group keys exactly. Do not convert `ab_test` to `abTest`.
|
|
34
|
+
- Each group value is an array of Hermes metric DTO objects.
|
|
35
|
+
- Use DTO field names from `HermesMetricReqDTO`: `metricSettingId`, `metricType`, `metricName`, `metricQp`, `metricWindowNum`, `metricWindowTimeUnit`, `displayName`, `orderId`, `note`, and `metricParams`.
|
|
36
|
+
- The CLI boundary accepts snake_case nested DTO fields too, but prefer the native camelCase names above in examples and generated payloads.
|
|
37
|
+
- For existing bindings, include `metricSettingId` so Hermes updates that binding instead of treating it as a new binding.
|
|
38
|
+
- For preset metrics, use `metricType: 1` and a real `metricName` discovered from `engage-setting common-metric list/get`.
|
|
39
|
+
- For custom metrics, use `metricType: 2` plus a complete `metricQp`, `metricWindowNum`, `metricWindowTimeUnit`, and `displayName`; Hermes creates the custom metric name.
|
|
40
|
+
- Do not invent metric names, event names, property names, QP structures, or metric-setting IDs. Read the existing flow detail and available metric definitions first, then update the complete desired metric map.
|
|
41
|
+
|
|
42
|
+
## Examples
|
|
43
|
+
|
|
44
|
+
Dry-run updating an existing binding:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
ae-cli --dry-run engage-flow metric update \
|
|
48
|
+
--project-id 1 \
|
|
49
|
+
--flow-id flow_id_123 \
|
|
50
|
+
--metric-map '{"trigger":[{"metricSettingId":"setting_1","metricType":1,"metricName":"purchase_count","displayName":"Purchase count","orderId":1}]}'
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Apply the same update:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
ae-cli engage-flow metric update \
|
|
57
|
+
--project-id 1 \
|
|
58
|
+
--flow-id flow_id_123 \
|
|
59
|
+
--metric-map '{"trigger":[{"metricSettingId":"setting_1","metricType":1,"metricName":"purchase_count","displayName":"Purchase count","orderId":1}]}'
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Add a custom metric to the `view` group:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
ae-cli engage-flow metric update \
|
|
66
|
+
--project-id 1 \
|
|
67
|
+
--flow-id flow_id_123 \
|
|
68
|
+
--metric-map '{"view":[{"metricType":2,"metricQp":"{\"type\":0,\"eventName\":\"purchase\",\"analysis\":\"A100\",\"filts\":[]}","metricWindowNum":1,"metricWindowTimeUnit":"day","displayName":"Purchase after view","orderId":1}]}'
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Common mistakes
|
|
72
|
+
|
|
73
|
+
- Do not pass `flow_uuid`; this command requires `flow_id`.
|
|
74
|
+
- Do not pass `metricId`; `HermesMetricReqDTO` has no `metricId` field. Use `metricSettingId` for an existing binding or `metricName` for a preset metric.
|
|
75
|
+
- Do not use arbitrary first-level keys such as `custom`, `ACTION`, or `channel`; use only `trigger`, `view`, `click`, or `ab_test`.
|
|
76
|
+
- Do not submit only the group you want to change unless deleting omitted groups is intended.
|
|
77
|
+
- Do not use this command to query report data. For report metric details, use `references/flow-metric-detail-report.md`.
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Flow metric-user
|
|
2
|
+
|
|
3
|
+
Use this reference when the user asks for users behind a process-level flow metric segment, such as a cell in the flow process report.
|
|
4
|
+
|
|
5
|
+
Mapped CLI commands:
|
|
6
|
+
|
|
7
|
+
- `ae-cli engage-flow metric-user run`
|
|
8
|
+
- `ae-cli engage-flow metric-user export`
|
|
9
|
+
|
|
10
|
+
Mapped capabilities:
|
|
11
|
+
|
|
12
|
+
- `engage-flow.metric-user.run`
|
|
13
|
+
- `engage-flow.metric-user.export`
|
|
14
|
+
|
|
15
|
+
Hermes SQL source: `FlowReportDataService#buildClusterUserSql`.
|
|
16
|
+
|
|
17
|
+
## Choose the command
|
|
18
|
+
|
|
19
|
+
- Use `run` for a bounded inline preview of matched users.
|
|
20
|
+
- Use `export` for the full user-detail artifact.
|
|
21
|
+
- This command does not require `--node-uuid`; use `node-user` or `node-metric-user` for node-level cells.
|
|
22
|
+
|
|
23
|
+
## Required input
|
|
24
|
+
|
|
25
|
+
- `--project-id`
|
|
26
|
+
- one of `--flow-id` or `--flow-uuid`
|
|
27
|
+
- either `--cluster-def '<cluster_def_json>'` or all of `--indicator-name`, `--start-time`, and `--end-time`
|
|
28
|
+
|
|
29
|
+
## Optional input
|
|
30
|
+
|
|
31
|
+
- `--branch-id`
|
|
32
|
+
- `--request-id`
|
|
33
|
+
- `--data-view-type` (default: `2`)
|
|
34
|
+
- `--is-summary`
|
|
35
|
+
- `--push-language-code`
|
|
36
|
+
- `--user-time-zone`
|
|
37
|
+
- `--show-time-zone`
|
|
38
|
+
- `run` only: `--limit`
|
|
39
|
+
- `export` only: `--artifact-format csv|jsonl` (default: `jsonl`)
|
|
40
|
+
- `--timeout-seconds`
|
|
41
|
+
|
|
42
|
+
Only pass fields listed above. Hermes rejects extra top-level fields for this capability.
|
|
43
|
+
|
|
44
|
+
## Segment selector contract
|
|
45
|
+
|
|
46
|
+
Prefer the explicit report fields. Set `--indicator-name` to the metric key returned by the process report and reuse the report date range. Hermes builds the internal cluster definition.
|
|
47
|
+
|
|
48
|
+
`--cluster-def` remains available for compatibility. When used, it must come from the selected report segment; do not invent or hand-minify partial JSON.
|
|
49
|
+
|
|
50
|
+
Required keys:
|
|
51
|
+
|
|
52
|
+
- `indicatorName`
|
|
53
|
+
- `dataViewType`
|
|
54
|
+
- `isSummary`
|
|
55
|
+
|
|
56
|
+
Date keys depend on `isSummary`:
|
|
57
|
+
|
|
58
|
+
- `isSummary=true`: require `filterStartDate` and `filterEndDate`
|
|
59
|
+
- `isSummary=false`: require `startDate` and `endDate`
|
|
60
|
+
|
|
61
|
+
Dates must use `yyyy-MM-dd`, and start must be earlier than or equal to end.
|
|
62
|
+
|
|
63
|
+
## Examples
|
|
64
|
+
|
|
65
|
+
Inline preview:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
ae-cli engage-flow metric-user run \
|
|
69
|
+
--project-id 1 \
|
|
70
|
+
--flow-id flow_id_123 \
|
|
71
|
+
--indicator-name entry \
|
|
72
|
+
--start-time 2026-04-01 \
|
|
73
|
+
--end-time 2026-04-07 \
|
|
74
|
+
--limit 100 \
|
|
75
|
+
--timeout-seconds 120
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Export all matched users:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
ae-cli engage-flow metric-user export \
|
|
82
|
+
--project-id 1 \
|
|
83
|
+
--flow-id flow_id_123 \
|
|
84
|
+
--indicator-name entry \
|
|
85
|
+
--start-time 2026-04-01 \
|
|
86
|
+
--end-time 2026-04-07 \
|
|
87
|
+
--artifact-format csv \
|
|
88
|
+
--timeout-seconds 21600
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Export lifecycle
|
|
92
|
+
|
|
93
|
+
`export` returns `run_id` and `artifact_id`. Poll and download with:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
ae-cli engage-query run inspect --run-id <run_id>
|
|
97
|
+
ae-cli engage-query artifact download \
|
|
98
|
+
--run-id <run_id> \
|
|
99
|
+
--artifact-id <artifact_id> \
|
|
100
|
+
--output ./flow-metric-users.csv.gz
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Downloaded artifacts are gzip-compressed; keep the `.gz` suffix. Cancel running async work with:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
ae-cli engage-query query cancel --run-id <run_id>
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Output shape
|
|
110
|
+
|
|
111
|
+
- `run` returns `rows`, `total`, and `column_meta`.
|
|
112
|
+
- `export` writes one row per matched user. The primary column is usually `#user_id`.
|
|
113
|
+
|
|
114
|
+
## Common mistakes
|
|
115
|
+
|
|
116
|
+
- Do not pass `--node-uuid` unless the process-level report segment actually needs branch/node context; for normal node cells use `node-user`.
|
|
117
|
+
- Use `--data-view-type`, not the report-only `--data-dim-type`, when selecting users without `--cluster-def`.
|
|
118
|
+
- If `cluster_def` is missing the date pair implied by `isSummary`, Hermes rejects it before SQL execution.
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# Flow node-metric-user
|
|
2
|
+
|
|
3
|
+
Use this reference when the user asks for users behind a node-level metric segment on the flow canvas.
|
|
4
|
+
|
|
5
|
+
Mapped CLI commands:
|
|
6
|
+
|
|
7
|
+
- `ae-cli engage-flow node-metric-user run`
|
|
8
|
+
- `ae-cli engage-flow node-metric-user export`
|
|
9
|
+
|
|
10
|
+
Mapped capabilities:
|
|
11
|
+
|
|
12
|
+
- `engage-flow.node-metric-user.run`
|
|
13
|
+
- `engage-flow.node-metric-user.export`
|
|
14
|
+
|
|
15
|
+
Hermes SQL source: `FlowNodeReportDataService#buildMetricClusterUserSql`.
|
|
16
|
+
|
|
17
|
+
## Choose the command
|
|
18
|
+
|
|
19
|
+
- Use `run` for a bounded inline preview of users behind the selected node metric segment.
|
|
20
|
+
- Use `export` for the full user-detail artifact.
|
|
21
|
+
- Use `node-user` for node data segments that are not metric-detail segments.
|
|
22
|
+
- Use `metric-user` for process-level flow metric cells.
|
|
23
|
+
|
|
24
|
+
## Required input
|
|
25
|
+
|
|
26
|
+
- `--project-id`
|
|
27
|
+
- one of `--flow-id` or `--flow-uuid`
|
|
28
|
+
- `--node-uuid`
|
|
29
|
+
- either `--cluster-def '<cluster_def_json>'` or all of `--indicator-name`, `--start-time`, and `--end-time`
|
|
30
|
+
|
|
31
|
+
## Optional input
|
|
32
|
+
|
|
33
|
+
- `--branch-id`
|
|
34
|
+
- `--request-id`
|
|
35
|
+
- `--data-view-type` (default: `2`)
|
|
36
|
+
- `--is-summary`
|
|
37
|
+
- `--push-language-code`
|
|
38
|
+
- `--user-time-zone`
|
|
39
|
+
- `--show-time-zone`
|
|
40
|
+
- `run` only: `--limit`
|
|
41
|
+
- `export` only: `--artifact-format csv|jsonl` (default: `jsonl`)
|
|
42
|
+
- `--timeout-seconds`
|
|
43
|
+
|
|
44
|
+
Only pass fields listed above. Hermes rejects extra top-level fields for this capability.
|
|
45
|
+
|
|
46
|
+
## Segment selector contract
|
|
47
|
+
|
|
48
|
+
Prefer the explicit report fields. Set `--indicator-name` to the metric key returned by the node metric report and reuse the report date range. Hermes builds the internal cluster definition.
|
|
49
|
+
|
|
50
|
+
`--cluster-def` remains available for compatibility. When used, it must come from the selected node metric report segment; do not invent it.
|
|
51
|
+
|
|
52
|
+
Required keys:
|
|
53
|
+
|
|
54
|
+
- `indicatorName`
|
|
55
|
+
- `dataViewType`
|
|
56
|
+
- `isSummary`
|
|
57
|
+
|
|
58
|
+
Date keys depend on `isSummary`:
|
|
59
|
+
|
|
60
|
+
- `isSummary=true`: require `filterStartDate` and `filterEndDate`
|
|
61
|
+
- `isSummary=false`: require `startDate` and `endDate`
|
|
62
|
+
|
|
63
|
+
Dates must use `yyyy-MM-dd`, and start must be earlier than or equal to end.
|
|
64
|
+
|
|
65
|
+
## Examples
|
|
66
|
+
|
|
67
|
+
Inline preview:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
ae-cli engage-flow node-metric-user run \
|
|
71
|
+
--project-id 1 \
|
|
72
|
+
--flow-id flow_id_123 \
|
|
73
|
+
--node-uuid node_uuid_123 \
|
|
74
|
+
--indicator-name metric_setting_id_123 \
|
|
75
|
+
--start-time 2026-04-01 \
|
|
76
|
+
--end-time 2026-04-07 \
|
|
77
|
+
--limit 100 \
|
|
78
|
+
--timeout-seconds 120
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Export all matched users:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
ae-cli engage-flow node-metric-user export \
|
|
85
|
+
--project-id 1 \
|
|
86
|
+
--flow-id flow_id_123 \
|
|
87
|
+
--node-uuid node_uuid_123 \
|
|
88
|
+
--indicator-name metric_setting_id_123 \
|
|
89
|
+
--start-time 2026-04-01 \
|
|
90
|
+
--end-time 2026-04-07 \
|
|
91
|
+
--artifact-format csv \
|
|
92
|
+
--timeout-seconds 21600
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Export lifecycle
|
|
96
|
+
|
|
97
|
+
`export` returns `run_id` and `artifact_id`. Poll and download with:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
ae-cli engage-query run inspect --run-id <run_id>
|
|
101
|
+
ae-cli engage-query artifact download \
|
|
102
|
+
--run-id <run_id> \
|
|
103
|
+
--artifact-id <artifact_id> \
|
|
104
|
+
--output ./flow-node-metric-users.csv.gz
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Downloaded artifacts are gzip-compressed; keep the `.gz` suffix. Cancel running async work with:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
ae-cli engage-query query cancel --run-id <run_id>
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Output shape
|
|
114
|
+
|
|
115
|
+
- `run` returns `rows`, `total`, and `column_meta`.
|
|
116
|
+
- `export` writes one row per matched user. The primary column is usually `#user_id`.
|
|
117
|
+
|
|
118
|
+
## Common mistakes
|
|
119
|
+
|
|
120
|
+
- `--node-uuid` is required and must be the canvas node UUID.
|
|
121
|
+
- Do not use this for node data cells; use `node-user` so Hermes routes to the non-metric SQL builder.
|
|
122
|
+
- Use `--data-view-type`, not the report-only `--data-dim-type`, when selecting users without `--cluster-def`.
|